.login-container{align-items:center;animation:gradientShift 15s ease infinite;background:linear-gradient(135deg,#1e3a8a,#3b82f6 25%,#06b6d4 50%,#10b981 75%,#059669);background-size:400% 400%;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.login-container:before{animation:float 20s linear infinite;background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="25" cy="25" r="1" fill="rgba%28255,255,255,0.1%29"/><circle cx="75" cy="75" r="1" fill="rgba%28255,255,255,0.1%29"/><circle cx="85" cy="15" r="1" fill="rgba%28255,255,255,0.1%29"/><circle cx="15" cy="85" r="1" fill="rgba%28255,255,255,0.1%29"/></svg>') repeat;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes float{0%{transform:translateY(0) translateX(0)}50%{transform:translateY(-10px) translateX(5px)}to{transform:translateY(0) translateX(0)}}.login-card{animation:cardSlideIn .6s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #fff3;border-radius:24px;box-shadow:0 32px 64px -12px #00000040,0 0 0 1px #fff3,inset 0 1px 0 #ffffff4d;max-width:450px;padding:3rem 2.5rem;transition:transform .3s ease,box-shadow .3s ease;width:100%}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-card:hover{box-shadow:0 40px 80px -12px #0000004d,0 0 0 1px #ffffff40,inset 0 1px 0 #fff6;transform:translateY(-4px)}.login-header{margin-bottom:2.5rem;position:relative;text-align:center}.login-header:before{animation:iconBounce 2s ease-in-out infinite;content:"🏦";display:block;font-size:3rem;margin-bottom:1rem}@keyframes iconBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.login-header h2{-webkit-text-fill-color:#0000;animation:textShimmer 3s ease-in-out infinite;background:linear-gradient(135deg,#1e3a8a,#3b82f6,#06b6d4);background-clip:text;-webkit-background-clip:text;font-size:2.25rem;font-weight:800;letter-spacing:-.025em;margin-bottom:.5rem}@keyframes textShimmer{0%,to{opacity:1}50%{opacity:.8}}.login-header p{color:#64748b;font-size:1rem;font-weight:500;opacity:.8}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{position:relative}.login-form .form-group label{color:#374151!important;font-size:.875rem;font-weight:600;margin-bottom:.75rem;padding-left:.5rem;position:relative}.login-form .form-group label:before{background:linear-gradient(135deg,#1e3a8a,#3b82f6);border-radius:2px;content:"";height:16px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.login-form .form-group input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8fafccc!important;border:2px solid #e2e8f0;border-radius:12px;color:#1e293b!important;font-size:1rem;font-weight:500;padding:1rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.login-form .form-group input:focus{background:#fffffff2!important;border-color:#1e3a8a;box-shadow:0 0 0 4px #1e3a8a1a,0 8px 25px -5px #1e3a8a40;outline:none;transform:translateY(-2px)}.login-form .form-group input:disabled{background:#f1f5f9cc!important;border-color:#cbd5e1;color:#64748b!important;cursor:not-allowed;opacity:.7}.form-group input::placeholder{color:#94a3b8;font-weight:400}.password-input-container{position:relative}.password-input-container input{padding-right:2.75rem}.password-toggle{background:#0000;color:#64748b;height:18px;line-height:1;padding:0;right:1rem;transition:color .2s ease;width:18px}.password-toggle svg{flex-shrink:0;height:18px;width:18px}.password-toggle:hover{color:#1e3a8a}.password-toggle:disabled{opacity:.4}.error-message{animation:errorShake .5s ease-in-out;background:linear-gradient(135deg,#fef2f2,#fde8e8);border:2px solid #fca5a5;border-radius:12px;font-size:.875rem;overflow:hidden;padding:1rem 1.25rem}.error-message:before{margin-right:.5rem}@keyframes errorShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.btn{align-items:center;border-radius:12px;display:inline-flex;font-size:1rem;gap:.5rem;justify-content:center;overflow:hidden;padding:1rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn:hover:before{left:100%}.btn:disabled{transform:none!important}.btn-primary{background:linear-gradient(135deg,#1e3a8a,#3b82f6 50%,#06b6d4);border:2px solid #fff3;box-shadow:0 10px 30px -5px #1e3a8a80}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1e40af,#2563eb 50%,#0891b2);border-color:#ffffff4d;box-shadow:0 15px 40px -5px #1e3a8a99;transform:translateY(-3px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 8px 25px -5px #64748b66}.btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#475569,#334155);box-shadow:0 12px 35px -5px #64748b80;transform:translateY(-2px)}.login-btn{font-size:1.15rem;font-weight:700;letter-spacing:.5px;margin-top:1.5rem;padding:1.25rem 1.5rem;text-transform:uppercase}.login-footer{border-top:1px solid #e2e8f0cc;margin-top:2.5rem;padding-top:2rem;text-align:center}.login-footer p{color:#64748b;font-size:.875rem;font-weight:500;margin:.5rem 0}.db-status-warning{animation:warningPulse 2s ease-in-out infinite;background:linear-gradient(135deg,#fef3cd,#fde68a);border:2px solid #f59e0b;border-radius:12px;margin-top:1.5rem;padding:1rem}.db-status-warning p{color:#92400e;font-weight:600;margin:0 0 .75rem}.db-status-warning p:before{content:"⚡";margin-right:.5rem}.two-factor-notice{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:2px solid #60a5fa;border-radius:16px;margin-bottom:2rem;overflow:hidden;padding:1.5rem;position:relative;text-align:center}.two-factor-notice p{color:#1e40af;font-size:.95rem;font-weight:600;line-height:1.5;margin:0}.backup-code-toggle{background:linear-gradient(135deg,#059669,#10b981);border:2px solid #059669;border-radius:8px;box-shadow:0 4px 15px -3px #05966966;color:#fff;cursor:pointer;display:block;font-size:.95rem;font-weight:600;margin:1rem auto 0;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:all .3s ease}.backup-code-toggle:hover:not(:disabled){background:linear-gradient(135deg,#047857,#059669);box-shadow:0 6px 20px -3px #05966980;transform:translateY(-2px)}.backup-code-toggle:disabled{cursor:not-allowed;opacity:.5}.two-factor-actions{display:flex;justify-content:center;margin-top:1.5rem}.login-form .form-group input[type=text][maxlength="6"],.login-form .form-group input[type=text][maxlength="8"]{background:linear-gradient(135deg,#f8fafc,#f1f5f9)!important;border:3px solid #e2e8f0;color:#1e293b!important;font-family:SF Mono,Monaco,Consolas,monospace;font-size:1.5rem;font-weight:700;letter-spacing:.5rem;margin:0 auto;max-width:300px;padding:1.25rem;text-align:center;width:100%}.login-form .form-group:has(input[maxlength="6"]),.login-form .form-group:has(input[maxlength="8"]){margin:2rem auto;text-align:center}.login-form .form-group:has(input[maxlength="6"]) label,.login-form .form-group:has(input[maxlength="8"]) label{justify-content:center;margin:0 auto 1rem;text-align:center}.login-form .form-group input[type=text][maxlength="6"]:focus,.login-form .form-group input[type=text][maxlength="8"]:focus{background:#fffffffa!important;border-color:#1e3a8a;box-shadow:0 0 0 4px #1e3a8a26,0 12px 30px -5px #1e3a8a4d;transform:translateY(-3px)}@media (max-width:480px){.login-container{padding:15px}.login-card{border-radius:20px;padding:2rem 1.5rem}.login-header h2{font-size:1.875rem}.btn{font-size:.95rem;padding:1rem}.login-form .form-group input[type=text][maxlength="6"],.login-form .form-group input[type=text][maxlength="8"]{font-size:1.25rem;letter-spacing:.25rem}}@media (prefers-color-scheme:dark){.login-card{background:#1e293bf2;border:1px solid #64748b4d}.login-header p{color:#94a3b8}.login-form .form-group label{color:#f1f5f9!important}.login-form .form-group input{background:#334155cc!important;border-color:#475569;color:#f1f5f9!important}.login-form .form-group input:focus{background:#475569f2!important}}.sidebar{background:linear-gradient(180deg,#1f2937,#111827);border-right:1px solid #374151;color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:width .3s ease;width:280px;z-index:1000}.sidebar.collapsed{width:70px}.sidebar-header{border-bottom:1px solid #374151;padding:1.5rem;position:relative}.sidebar.collapsed .sidebar-header{padding:1rem .5rem}.collapse-toggle{align-items:center;background:#ffffff1a;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;height:28px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:28px;z-index:1001}.collapse-toggle:hover{background:#fff3;transform:scale(1.05)}.sidebar.collapsed .collapse-toggle{height:32px;margin:0 auto;position:static;width:32px}.mobile-close-button{background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:none;font-size:1.5rem;height:32px;position:absolute;right:3rem;top:1rem;transition:all .2s ease;width:32px;z-index:1001}.mobile-close-button:hover{background:#fff3;transform:scale(1.1)}.sidebar-header h2{color:#f9fafb;font-size:1.25rem;font-weight:700;margin:0 0 1rem}.user-info{display:flex;flex-direction:column;gap:.25rem}.user-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:600;height:40px;justify-content:center;width:40px}.user-email{color:#f3f4f6;font-size:.875rem;font-weight:500}.user-role{color:#9ca3af;font-size:.75rem;text-transform:capitalize}.sidebar-nav{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;gap:0;overflow-x:hidden;overflow-y:auto;padding:.5rem 0 1rem;scroll-behavior:smooth}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#0000001a;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px;-webkit-transition:background .2s ease;transition:background .2s ease}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar-nav{scrollbar-color:#fff3 #0000001a;scrollbar-width:thin}.sidebar-nav:after{background:linear-gradient(0deg,#111827e6 0,#0000);bottom:0;content:"";height:30px;left:0;opacity:0;pointer-events:none;position:sticky;right:0;transition:opacity .3s ease}.sidebar:hover .sidebar-nav:after{opacity:1}.nav-item{align-items:center;background:none;border:none;border-left:3px solid #0000;color:#d1d5db;cursor:pointer;display:flex;font-size:.875rem;gap:1rem;padding:.45rem 1.5rem;text-align:left;transition:all .2s;width:100%}.sidebar.collapsed .nav-item{gap:0;justify-content:center;padding:.45rem 0;position:relative}.sidebar.collapsed .nav-item:after{background:#000c;border-radius:4px;color:#fff;content:attr(title);font-size:.75rem;left:70px;opacity:0;padding:.5rem .75rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .2s ease,visibility .2s ease;visibility:hidden;white-space:nowrap;z-index:1002}.sidebar.collapsed .nav-item:hover:after{opacity:1;visibility:visible}.nav-item:hover{background-color:#37415180;color:#f3f4f6;transform:translateX(2px)}.sidebar.collapsed .nav-item:hover{transform:none}.nav-item.active{background-color:#3b82f61a;border-left-color:#3b82f6;color:#3b82f6}.nav-item.active .nav-icon{filter:brightness(1.2)}.nav-item.rfq-enabled .nav-label{color:#10b981!important;font-weight:700}.nav-item.rfq-disabled .nav-label{color:#ef4444!important;font-weight:700}.nav-icon{flex-shrink:0;font-size:1.25rem;text-align:center;width:24px}.nav-label{flex:1 1;font-size:.875rem;font-weight:500;opacity:1;transition:opacity .2s ease}.sidebar.collapsed .nav-label{opacity:0;overflow:hidden;width:0}.nav-item.order-entry-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-left:3px solid #0000;border-radius:8px;color:#fff;margin:.3rem 1rem;width:calc(100% - 2rem)}.sidebar.collapsed .nav-item.order-entry-btn{margin:.3rem .5rem;width:calc(100% - 1rem)}.nav-item.order-entry-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px #667eea4d;transform:translateX(2px)}.sidebar.collapsed .nav-item.order-entry-btn:hover{transform:none}.sidebar-footer{border-top:1px solid #374151;padding:1.5rem}.sidebar.collapsed .sidebar-footer{padding:1rem .5rem}.logout-btn{align-items:center;background-color:#ef4444;border:none;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:background-color .2s;width:100%}.sidebar.collapsed .logout-btn{gap:0;padding:.75rem .5rem}.logout-btn:hover{background-color:#dc2626}.logout-icon{font-size:1rem}.app-info{text-align:center}.app-info small{color:#6b7280;font-size:.75rem}@media (max-width:480px){.sidebar,.sidebar.collapsed{width:260px}.collapse-toggle{display:none}.sidebar-header{padding:1rem}.mobile-close-button{right:1rem}.nav-icon{font-size:1.1rem}}@media (min-width:481px) and (max-width:768px){.sidebar{width:280px}.sidebar.collapsed{width:70px}.sidebar.mobile-open{transform:translateX(0)}.mobile-close-button{display:block}}@media (min-width:769px) and (max-width:1024px){.sidebar{width:280px}.sidebar.collapsed{width:70px}.nav-item{padding:.5rem 1.5rem}.mobile-close-button{display:none}}@media (min-width:1025px){.sidebar{width:280px}.sidebar.collapsed{width:70px}.nav-item{padding:.5rem 1.5rem}}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform .3s ease,width .3s ease}.sidebar.collapsed{width:260px}.sidebar.mobile-open{transform:translateX(0)}.mobile-close-button{align-items:center;display:flex;font-size:1.8rem;height:44px;justify-content:center;width:44px}.nav-item{-webkit-tap-highlight-color:transparent;min-height:48px;padding:.75rem 1rem}.nav-item.order-entry-btn{margin:.5rem 1rem;min-height:48px}.nav-icon{font-size:1.4rem;width:28px}.nav-item:active{background-color:#374151b3;transform:scale(.98)}.logout-btn{font-size:1rem;min-height:48px}.collapse-toggle{display:none}.sidebar-header{padding:1rem}.sidebar-header h2{padding-right:50px}}@media (max-width:480px){.nav-item{min-height:52px;padding:.875rem 1rem}.mobile-close-button{font-size:2rem;height:48px;width:48px}.logout-btn{min-height:52px}}.system-status{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;box-shadow:0 2px 8px #0000001a;color:#fff;margin-bottom:15px;padding:6px 10px;transition:all .3s ease}.system-status h3{font-size:1.2em;font-weight:600;margin:0 0 15px;text-align:center}.status-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:15px}.status-compact{align-items:center;display:flex;gap:15px;justify-content:space-between}.status-indicators{align-items:center;gap:12px}.status-item{align-items:center;color:#fff;display:flex;font-size:.8em;font-weight:500;gap:4px}.status-item.sync-running{animation:pulseSync 2s infinite;background:#7b1fa240;border-radius:10px;box-shadow:0 0 0 0 #7b1fa299;color:#fff;padding:2px 8px}@keyframes pulseSync{0%{box-shadow:0 0 0 0 #7b1fa299}70%{box-shadow:0 0 0 10px #7b1fa200}to{box-shadow:0 0 0 0 #7b1fa200}}.status-indicator{align-items:center;display:flex;font-size:1.1em;gap:8px;justify-content:center;margin-bottom:5px}.status-indicator span{font-weight:500}.status-text{font-size:.9em;opacity:.9}.last-update{color:#fff!important;font-size:.7em;opacity:1;white-space:nowrap}@media (min-width:769px){.system-status{border-radius:8px;display:block;margin:0 auto 15px;max-width:none;opacity:1;position:relative;visibility:visible;width:fit-content;z-index:10}.system-status .status-compact{align-items:center!important;display:flex!important;flex-direction:column!important;gap:8px!important;justify-content:center!important}.system-status .status-indicators{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;justify-content:center}.system-status .last-update{color:#fff!important;font-size:.7em;opacity:1;text-align:center}}@media (max-width:768px){.system-status{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#667eeae6,#764ba2e6);border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 2px 8px #00000026;margin-bottom:0;padding:10px 16px;pointer-events:none;position:fixed;right:12px;top:calc(env(safe-area-inset-top, 0px) + 12px);z-index:3000}.status-compact{align-items:center;flex-direction:row;gap:10px;justify-content:center}.status-indicators{align-items:center;display:flex;gap:8px}.status-item{align-items:center;color:#fff;display:flex;font-size:.75em;font-weight:500;gap:3px}.last-update{display:none}}.market-data-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;width:100%}.market-data{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #0000001a;max-height:280px;overflow:hidden;padding:16px;transition:all .3s ease}.market-data:hover{box-shadow:0 6px 25px #00000026;transform:translateY(-2px)}.market-data h2{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.1em;font-weight:600;margin-bottom:12px;padding-bottom:8px;text-align:center}.usdt-data h2{border-bottom-color:#22c55e}.usdc-data h2{border-bottom-color:#3b82f6}.flips-data-container{margin:0 auto;max-width:800px;padding:16px}.flips-market-data{max-height:none;overflow:visible}.flips-market-data h2{border-bottom-color:#8b5cf6;font-size:1.3em;margin-bottom:8px}.flips-subtitle{color:#6b7280;font-size:.9em;font-style:italic;text-align:center}.flips-market-data table,.flips-subtitle{margin-bottom:16px}.flips-market-data th{background:#f3f4f6;font-size:.9em;padding:8px 6px}.flips-market-data td{font-size:.9em;padding:6px}.stat-label{font-size:.8em}.stat-value{font-size:1.1em}.diff-cell{color:#374151;font-family:Courier New,monospace;font-size:.85em;font-weight:600}.flips-market-data .diff-cell{background:#f9fafb;border-left:2px solid #e5e7eb;border-right:2px solid #e5e7eb}.market-data table{border-collapse:collapse;margin-bottom:10px;table-layout:fixed;text-align:center;width:100%}.market-data th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:.8em;font-weight:600;letter-spacing:.5px;padding:6px 4px;text-transform:uppercase}.market-data td{border-bottom:1px solid #f1f5f9;color:#2d3748;font-size:.85em;padding:5px 4px}.market-data tr:hover{background:#f8fafc}.premium-column{width:80px}.premium-cell,.premium-column{font-size:.75em;text-align:center!important}.premium-cell{font-family:Courier New,monospace}.ask-premium,.bid-premium{text-align:center!important}.market-data td:first-child,.market-data th:first-child{width:80px}.market-data td:nth-child(2),.market-data th:nth-child(2){width:70px}.market-data td:nth-child(3),.market-data td:nth-child(4),.market-data th:nth-child(3),.market-data th:nth-child(4){width:80px}.market-data td:nth-child(5),.market-data th:nth-child(5){width:70px}.market-data td:nth-child(6),.market-data th:nth-child(6){width:80px}.last-update,.market-data p{color:#718096;font-size:.7em;font-style:italic;margin:0;padding-top:4px;text-align:center}.size-cell{position:relative;transition:all .2s ease}.market-data .size-cell:not(:contains("-")){color:#1f2937;font-weight:500}.market-data tr:hover .size-cell{font-weight:600}@media (max-width:1200px){.market-data-container{gap:12px;grid-template-columns:1fr}.market-data{padding:12px}.market-data h2{font-size:1em}}@media (max-width:768px){.market-data-container{gap:12px;grid-template-columns:1fr;width:100%}.market-data{box-sizing:border-box;max-height:none;overflow:visible;padding:12px;width:100%}.market-data table{-webkit-overflow-scrolling:touch;display:table;overflow-x:auto;table-layout:auto;width:100%}.market-data td:first-child,.market-data td:nth-child(2),.market-data td:nth-child(3),.market-data td:nth-child(4),.market-data td:nth-child(5),.market-data td:nth-child(6),.market-data th:first-child,.market-data th:nth-child(2),.market-data th:nth-child(3),.market-data th:nth-child(4),.market-data th:nth-child(5),.market-data th:nth-child(6){width:auto}.premium-cell{font-size:.7em}.market-data th{font-size:.7em}.market-data td,.market-data th{padding:4px 2px;text-align:center}.market-data td{font-size:.75em}.market-stats{flex-direction:column;gap:12px}}@media (max-width:480px){.market-data-container{padding:0 5px}.market-data{padding:8px}.market-data h2{font-size:.9em}.market-data td,.market-data th{font-size:.65em;padding:3px 2px}.premium-cell{font-size:.6em}}.clickable-ask{cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.clickable-ask:hover{background-color:#4caf501a;font-weight:600;transform:scale(1.02)}.clickable-ask:active{background-color:#4caf5033;transform:scale(.98)}.flips-market-data .clickable-ask:before{background:#4caf50;content:"";height:60%;left:0;opacity:0;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .2s;width:3px}.flips-market-data .clickable-ask:hover:before{opacity:1}.flips-market-data td.clickable-ask{position:relative}.exchange-rates{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:16px;padding:12px 16px}.exchange-rates,.rates-header{overflow:visible;position:relative}.rates-header{align-items:flex-start;border-bottom:2px solid #e2e8f0;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.rates-header-left{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow:visible;position:relative}.exchange-rates h2{color:#2d3748;font-size:1.2em;font-weight:600;margin:0}.premium-updates-control{flex-wrap:wrap;gap:12px;z-index:10}.premium-updates-button,.premium-updates-control{align-items:center;display:flex;position:relative}.premium-updates-button{background:#f8fafc;border:2px solid #e2e8f0;border-radius:10px;color:#4a5568;cursor:pointer;font-size:.9em;font-weight:600;gap:8px;padding:8px 16px;transition:all .3s ease;z-index:11}.premium-updates-button:hover{background:#faf5ff;border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf633;transform:translateY(-2px)}.premium-updates-button.active{animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#7c3aed;color:#fff}.premium-updates-button.active:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 6px 16px #8b5cf666;transform:translateY(-2px)}.button-icon{font-size:1.2em;line-height:1}.button-text{white-space:nowrap}.timestamp-display{background:#f0f4f8;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;font-size:.9em;font-weight:600;padding:4px 8px;position:relative;z-index:1}.rates-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.rate-card{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:10px;text-align:center;transition:all .3s ease}.rate-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.rate-card h3{color:#4a5568;font-size:.85em;font-weight:600;margin:0 0 6px;text-align:center}.rate-value{color:#2d3748;font-family:Courier New,monospace;font-size:1em;font-weight:700;text-align:center}.rate-value.premium{display:block;font-size:1.1em;font-weight:800;text-align:center!important;width:100%}.rate-value.premium.positive{color:#22c55e;text-align:center!important}.rate-value.premium.negative{color:#e53e3e;text-align:center!important}.data-source{background:#e2e8f0;border:1px solid #cbd5e0;border-radius:4px;color:#718096;font-size:.7em;font-weight:500;margin-top:4px;padding:2px 6px}.loading{color:#718096;font-style:italic}.error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.85em;margin-bottom:15px;padding:8px 12px}@media (max-width:768px){.rates-header{align-items:stretch;flex-direction:column;gap:12px}.rates-header-left{align-items:flex-start}.timestamp-display{align-self:flex-end}.premium-updates-control{align-items:stretch;flex-direction:column;gap:8px}.premium-updates-button{justify-content:center;width:100%}.rates-grid{gap:10px;grid-template-columns:1fr}.exchange-rates{padding:12px 15px}}.manual-rate-warning{align-items:center;animation:warningPulse 2s ease-in-out infinite;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:8px;color:#92400e;display:flex;font-size:.95em;font-weight:500;gap:8px;margin-bottom:12px;padding:12px 16px}@keyframes warningPulse{0%,to{box-shadow:0 2px 8px #f59e0b4d}50%{box-shadow:0 4px 16px #f59e0b80}}.manual-badge{background:#f59e0b;border-radius:6px;color:#fff;font-size:.65em;font-weight:700;letter-spacing:.5px;margin-left:6px;padding:3px 8px;vertical-align:middle}.rate-card.manual-rate{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #fbbf24}.rate-card.manual-rate:hover{box-shadow:0 4px 12px #fbbf244d;transform:translateY(-2px)}.data-source.manual-source{background:#fbbf24;border-color:#f59e0b;color:#78350f;font-weight:600}.modal-overlay{animation:fadeIn .2s ease-in-out;background-color:#000000b3}.modal-content{animation:slideUp .3s ease-out;border-radius:16px;padding:32px}.modal-content h2{color:#2d3748;font-size:1.5em;font-weight:700;margin:0 0 12px}.modal-content p{color:#4a5568;font-size:.95em;line-height:1.5;margin:0 0 24px}.duration-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.duration-option{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;padding:16px;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:100%}.duration-option:hover{background:#faf5ff;border-color:#a78bfa;transform:translateX(4px)}.duration-option.selected{background:#f3e8ff;border-color:#8b5cf6;box-shadow:0 2px 8px #8b5cf633}.duration-option input[type=radio]{accent-color:#8b5cf6;cursor:pointer;flex-shrink:0;height:20px;margin:0 12px 0 0;pointer-events:auto;width:20px}.option-text{color:#2d3748;cursor:pointer;flex:1 1;font-size:1.05em;font-weight:600;-webkit-user-select:none;user-select:none}.duration-option.selected .option-text{color:#6d28d9}.modal-actions button{border-radius:10px;font-size:1em;padding:12px 24px;transition:all .2s ease}.btn-cancel{background:#e2e8f0;color:#4a5568}.btn-cancel:hover{background:#cbd5e0;transform:translateY(-1px)}.btn-confirm{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 4px 12px #8b5cf64d}.btn-confirm:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 6px 16px #8b5cf666;transform:translateY(-2px)}.btn-cancel:active,.btn-confirm:active{transform:translateY(0)}@media (max-width:768px){.modal-content{padding:24px;width:95%}.modal-content h2{font-size:1.3em}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.open-orders{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-top:16px;padding:16px}.orders-header{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.header-main{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.orders-header h2{color:#2c3e50;font-size:1.3em;font-weight:700;margin:0}.quick-stats{display:flex;flex-wrap:wrap;gap:16px}.stat-item{border-radius:6px;font-size:.85em;font-weight:600;padding:4px 8px;white-space:nowrap}.stat-item.active{background:#2ecc7126;border:1px solid #2ecc714d;color:#27ae60}.stat-item.completed{background:#95a5a626;border:1px solid #95a5a64d;color:#7f8c8d}.stat-item.value{background:#3498db26;border:1px solid #3498db4d;color:#2980b9}.orders-actions{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;justify-content:flex-start}.view-mode-tabs{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;display:flex;flex:1 1 auto;padding:4px}.view-tab{background:#0000;border:none;border-radius:6px;color:#6c757d;cursor:pointer;flex:1 1;font-size:.85em;font-weight:500;padding:8px 12px;transition:all .2s ease}.view-tab:hover{background:#3498db1a;color:#2980b9}.view-tab.active{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 2px 4px #3498db4d;color:#fff}.open-orders-action-buttons{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;margin-left:auto}.open-orders-action-buttons>button{flex:0 0 auto;white-space:nowrap}.compact-toggle{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:6px;box-shadow:0 2px 4px #9b59b633;color:#fff;cursor:pointer;font-size:.9em;font-weight:500;padding:8px 12px;transition:all .2s ease}.compact-toggle:hover:not(:disabled){box-shadow:0 4px 8px #9b59b64d;transform:translateY(-1px)}.compact-toggle.active{background:linear-gradient(135deg,#8e44ad,#7d3c98);box-shadow:inset 0 2px 4px #0003}.cancel-all-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:5px;box-shadow:0 2px 4px #e74c3c33;color:#fff;cursor:pointer;font-size:.9em;font-weight:500;padding:8px 16px;transition:all .2s ease}.cancel-all-btn:hover:not(:disabled){box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-1px)}.cancel-all-btn:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;transform:none}.refresh-btn{background:linear-gradient(135deg,#3498db,#2980b9);border-radius:5px;box-shadow:0 2px 4px #3498db33;font-size:.9em;transition:all .2s ease}.refresh-btn:hover:not(:disabled){box-shadow:0 4px 8px #3498db4d;transform:translateY(-1px)}.refresh-btn:disabled{background:#bdc3c7;box-shadow:none}.filter-controls{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 6px #0000000f;margin-bottom:8px;padding:8px}.search-section{border-bottom:1px solid #e9ecef;margin-bottom:6px;padding-bottom:6px}.search-group{align-items:center;display:flex;gap:12px;position:relative}.search-group label{color:#2c3e50;font-size:.9em;font-weight:600;white-space:nowrap}.search-input{background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;font-size:.9em;outline:none;padding:10px 16px;transition:all .2s ease}.search-input:focus{background:#fff;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.search-input::placeholder{color:#6c757d;font-style:italic}.clear-search-btn{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.8em;height:24px;justify-content:center;position:absolute;right:8px;transition:all .2s ease;width:24px}.clear-search-btn:hover{background:#c82333;transform:scale(1.1)}.filters-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.filter-group{align-items:center;gap:8px}.filter-group label{color:#2c3e50;font-size:.85em;white-space:nowrap}.filter-select{background:#fff;border:2px solid #bdc3c7;border-radius:5px;cursor:pointer;font-size:.85em;min-width:110px;padding:4px 10px;transition:all .2s ease}.filter-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.filter-select:hover{border-color:#95a5a6}.clear-filters-btn{background:linear-gradient(135deg,#95a5a6,#7f8c8d);border:none;border-radius:5px;box-shadow:0 2px 4px #95a5a633;color:#fff;cursor:pointer;font-size:.9em;font-weight:500;padding:6px 12px;transition:all .2s ease}.clear-filters-btn:hover:not(:disabled){box-shadow:0 4px 8px #95a5a64d;transform:translateY(-1px)}.clear-filters-btn:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.last-update-info{align-items:center;animation:pulse-green 2s infinite;background:linear-gradient(135deg,#2ecc71,#27ae60);border-radius:5px;box-shadow:0 2px 4px #2ecc7133;color:#fff;display:flex;font-size:.85em;font-weight:500;gap:8px;margin-bottom:10px;padding:8px 12px}@keyframes pulse-green{0%{box-shadow:0 2px 4px #2ecc7133}50%{box-shadow:0 2px 8px #2ecc7166}to{box-shadow:0 2px 4px #2ecc7133}}.no-orders{background:#fff;border:1px solid #ecf0f1;border-radius:5px;color:#7f8c8d;font-style:italic;padding:40px 20px;text-align:center}.orders-table-container{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 4px 12px #00000014;overflow-x:auto}.orders-table-container.compact{font-size:.85em}.open-orders table{border-collapse:collapse;min-width:900px;table-layout:fixed;width:100%}.orders-table-container.compact table{min-width:750px;table-layout:fixed}.open-orders td,.open-orders th{border-bottom:1px solid #e9ecef;font-size:.9em;line-height:1.25;padding:8px 6px;text-align:left;vertical-align:middle}.orders-table-container.compact td,.orders-table-container.compact th{font-size:.78em;padding:4px 3px}.open-orders th{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;font-size:.85em;font-weight:600;letter-spacing:.3px;position:sticky;text-transform:uppercase;top:0;white-space:nowrap;z-index:10}.open-orders th.sortable{cursor:pointer;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.open-orders th.sortable:hover{background:linear-gradient(135deg,#34495e,#2c3e50);transform:translateY(-1px)}.open-orders th.sorted{background:linear-gradient(135deg,#3498db,#2980b9)}.open-orders td:first-child,.open-orders th:first-child{max-width:32px!important;min-width:32px!important;overflow:hidden;padding:2px!important;white-space:nowrap;width:32px!important}.open-orders td:nth-child(3),.open-orders th:nth-child(3){max-width:90px;min-width:70px;width:70px}.open-orders td:nth-child(10),.open-orders td:nth-child(11),.open-orders th:nth-child(10),.open-orders th:nth-child(11){max-width:110px;min-width:90px;width:90px}.open-orders tr:nth-child(2n){background-color:#f8f9fa}.open-orders tr:hover{background:linear-gradient(135deg,#e8f4f8,#d5e8f3);box-shadow:0 2px 8px #3498db1a;transform:translateY(-1px)}.order-row.valr{border-left:4px solid #4c51bf}.order-row.luno{border-left:4px solid #f59e0b}.exchange-badge,.filled-badge,.pair-badge,.side-badge,.status-badge,.type-badge{border-radius:4px;display:inline-block;font-size:.8em;font-weight:600;line-height:1.1;padding:3px 8px;text-align:center;white-space:nowrap}.exchange.valr .exchange-badge{background:#4c51bf26;border:1px solid #4c51bf4d;color:#4c51bf}.exchange.luno .exchange-badge{background:#f59e0b26;border:1px solid #f59e0b4d;color:#f59e0b}.exchange.boch-bevo .exchange-badge{background:#9c27b026;border:1px solid #9c27b04d;color:#9c27b0}.order-row.boch-bevo{border-left:4px solid #9c27b0}.exchange.evo-short .exchange-badge{background:#007bff26;border:1px solid #007bff4d;color:#007bff}.order-row.evo-short{border-left:4px solid #007bff}.side.sell .side-badge{background:#e74c3c26;border:1px solid #e74c3c4d;color:#e74c3c}.pair-badge.usdt,.side.buy .side-badge{background:#2ecc7126;border:1px solid #2ecc714d;color:#27ae60}.pair-badge.usdc{background:#3498db26;border:1px solid #3498db4d;color:#2980b9}.pair-badge.other{background:#9b59b626;border:1px solid #9b59b64d;color:#8e44ad}.filled-badge{background:#95a5a626;border:1px solid #95a5a64d;color:#7f8c8d}.filled-badge.has-fill{background:#e67e2226;border:1px solid #e67e224d;color:#e67e22}.quantity{font-family:Courier New,monospace;font-size:.85em;font-weight:600;text-align:right}.quantity.partial{color:#f39c12;font-weight:600}.quantity.zero{color:#e74c3c;font-weight:600}.price{font-family:Courier New,monospace;font-size:.85em;font-weight:600;text-align:right}.date{color:#7f8c8d;font-size:.8em}.filled{font-weight:500;text-align:right}.type{color:#34495e;font-size:.8em}.premium{color:#8e44ad;font-family:Courier New,monospace;font-size:.85em;font-weight:600;text-align:right}.status.placed .status-badge{background:#3498db26;border:1px solid #3498db4d;color:#3498db;font-size:.64em}.status.partially-filled .status-badge{animation:pulse-orange 2s infinite;background:#f39c1226;border:1px solid #f39c124d;color:#f39c12;font-size:.64em}.status.filled .status-badge{background:#2ecc7126;border:1px solid #2ecc714d;color:#27ae60;font-size:.64em}.status.cancelled .status-badge{background:#e74c3c26;border:1px solid #e74c3c4d;color:#e74c3c;font-size:.64em}.status.failed .status-badge{animation:pulse-red 1s infinite;background:#c0392b33;border:1px solid #c0392b66;color:#c0392b;font-size:.64em}.status.order-modified .status-badge{background:#9b59b626;border:1px solid #9b59b64d;color:#8e44ad;font-weight:700;letter-spacing:.2px}@keyframes pulse-orange{0%{box-shadow:0 0 0 0 #f39c1266}70%{box-shadow:0 0 0 6px #f39c1200}to{box-shadow:0 0 0 0 #f39c1200}}@keyframes pulse-red{0%{box-shadow:0 0 0 0 #c0392b66}70%{box-shadow:0 0 0 4px #c0392b00}to{box-shadow:0 0 0 0 #c0392b00}}.order-type.outright .type-badge{background:#3498db26;border:1px solid #3498db4d;color:#3498db;font-size:.64em}.order-type.premium .type-badge{background:#e67e2226;border:1px solid #e67e224d;color:#e67e22;font-size:.64em}.order-type.unknown .type-badge{background:#95a5a626;border:1px solid #95a5a64d;color:#95a5a6;font-size:.64em;font-style:italic}.cancel-btn{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:6px;box-shadow:0 1px 3px #e74c3c33;color:#fff;display:flex;font-size:11px;font-weight:700;height:24px;justify-content:center;transition:all .2s ease;width:24px}.cancel-btn:hover:not(:disabled){background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-1px) scale(1.05)}.cancel-btn:disabled{background:#bdc3c7;box-shadow:none;transform:none}.rate-info{background:#fff;border:1px solid #ecf0f1;border-radius:5px;color:#7f8c8d;font-size:.9em;margin-top:15px;padding:10px;text-align:center}@media (max-width:1200px){.open-orders table{min-width:800px}.orders-table-container.compact table{min-width:650px}.orders-table-container{padding-bottom:10px}.open-orders td,.open-orders th{font-size:.64em;padding:5px 3px}.quick-stats{gap:12px}.stat-item{font-size:.64em}}@media (max-width:900px){.open-orders table{min-width:700px}.orders-table-container.compact table{min-width:600px}.header-main{align-items:stretch;flex-direction:column;gap:8px}.quick-stats{gap:8px;justify-content:center}.view-mode-tabs{flex-direction:column}.open-orders-action-buttons{justify-content:center}}@media (max-width:768px){.open-orders{padding:12px}.open-orders table{min-width:600px}.orders-table-container.compact table{min-width:500px}.orders-table-container{-webkit-overflow-scrolling:touch;position:relative}.orders-table-container:after{background:linear-gradient(90deg,#0000,#0000000d);bottom:0;content:"";pointer-events:none;position:absolute;right:0;top:0;width:25px}.orders-header{gap:8px}.orders-header h2{font-size:1.2em;text-align:center}.quick-stats{flex-direction:column;gap:6px}.stat-item{align-items:center;display:flex;font-size:.8em;justify-content:center;min-height:44px;text-align:center}.open-orders td,.open-orders th{font-size:.75em;padding:6px 4px}.filter-controls{padding:12px}.search-group{align-items:stretch;flex-direction:column;gap:8px}.search-input{font-size:16px;min-height:44px;padding:12px}.filters-row{gap:12px}.filter-group,.filters-row{align-items:stretch;flex-direction:column}.filter-group{gap:6px}.filter-select{font-size:16px;min-height:44px;min-width:auto;padding:12px;width:100%}.clear-filters-btn{min-height:44px;padding:10px 16px}.orders-actions{gap:8px}.view-mode-tabs{flex-direction:row}.view-tab{font-size:.8em;min-height:44px;padding:10px 8px}.open-orders-action-buttons{flex-direction:row;flex-wrap:wrap;gap:6px}.open-orders-action-buttons button{font-size:.85em;min-height:44px;padding:10px 12px}.last-update-info{font-size:.8em;min-height:40px;padding:8px 12px}.exchange-badge,.filled-badge,.pair-badge,.side-badge,.status-badge,.type-badge{font-size:.56em;padding:2px 6px}.cancel-btn{font-size:14px;height:36px;min-width:36px;width:36px}.open-orders td:first-child,.open-orders th:first-child{max-width:40px!important;min-width:40px!important;padding:2px!important;width:40px!important}.date,.premium,.price,.quantity,.type{font-size:.56em}.order-type.outright .type-badge,.order-type.premium .type-badge,.order-type.unknown .type-badge,.status.cancelled .status-badge,.status.failed .status-badge,.status.filled .status-badge,.status.partially-filled .status-badge,.status.placed .status-badge{font-size:.56em!important}}@media (max-width:480px){.open-orders{margin-top:8px;padding:8px}.open-orders table{min-width:480px}.orders-table-container.compact table{min-width:400px}.orders-header h2{font-size:1.1em}.quick-stats{gap:4px}.stat-item{font-size:.75em;min-height:40px;padding:8px}.open-orders td,.open-orders th{font-size:.7em;padding:4px 2px}.filter-controls{padding:8px}.filter-select,.search-input{font-size:16px;min-height:44px;padding:10px}.view-tab{font-size:.75em;min-height:40px;padding:8px 6px}.exchange-badge,.filled-badge,.pair-badge,.side-badge,.status-badge,.type-badge{font-size:.52em;padding:1px 4px}.cancel-btn{font-size:12px;height:32px;min-width:32px;width:32px}.open-orders td:first-child,.open-orders th:first-child{max-width:36px!important;min-width:36px!important;padding:2px!important;width:36px!important}.date,.premium,.price,.quantity,.type{font-size:.52em}.order-type.outright .type-badge,.order-type.premium .type-badge,.order-type.unknown .type-badge,.status.cancelled .status-badge,.status.failed .status-badge,.status.filled .status-badge,.status.partially-filled .status-badge,.status.placed .status-badge{font-size:.52em!important}}.order-entry{font-size:12px;margin:0 auto;max-width:720px;padding:6px}.order-form-container{border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;padding:8px;position:relative}.order-form-container.valr{background:repeating-linear-gradient(45deg,#4c51bf0a,#4c51bf0a 1px,#0000 0,#0000 40px),repeating-linear-gradient(-45deg,#4c51bf08,#4c51bf08 1px,#0000 0,#0000 60px),#add8e626;background-size:80px 80px,120px 120px}.order-form-container.luno{background:repeating-linear-gradient(45deg,#f59e0b0a,#f59e0b0a 1px,#0000 0,#0000 40px),repeating-linear-gradient(-45deg,#f59e0b08,#f59e0b08 1px,#0000 0,#0000 60px),#ffffe040;background-size:80px 80px,120px 120px}.order-form-container.boch-bevo{background:repeating-linear-gradient(45deg,#9c27b00a,#9c27b00a 1px,#0000 0,#0000 40px),repeating-linear-gradient(-45deg,#9c27b008,#9c27b008 1px,#0000 0,#0000 60px),#f3e5f540;background-size:80px 80px,120px 120px}.order-form-container.evo-short{background:repeating-linear-gradient(45deg,#007bff0a,#007bff0a 1px,#0000 0,#0000 40px),repeating-linear-gradient(-45deg,#007bff08,#007bff08 1px,#0000 0,#0000 60px),#dbeafe40;background-size:80px 80px,120px 120px}.order-form-container:before{bottom:0;content:attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange) " " attr(data-exchange);font-size:8px;font-weight:300;left:0;letter-spacing:4px;line-height:25px;opacity:.03;overflow:hidden;pointer-events:none;position:absolute;right:0;top:0;transform:rotate(-15deg);-webkit-user-select:none;user-select:none;white-space:pre-wrap;word-break:break-all;word-spacing:15px;z-index:1}.order-form-container.valr:before{color:#4c51bf}.order-form-container.luno:before{color:#f59e0b}.order-form-container.boch-bevo:before{color:#9c27b0}.order-form-container.evo-short:before{color:#007bff}.order-summary:after{bottom:4px;content:attr(data-exchange);font-size:10px;font-weight:700;letter-spacing:.8px;opacity:.15;pointer-events:none;position:absolute;right:8px;transform:rotate(5deg);-webkit-user-select:none;user-select:none;z-index:1}.order-summary.valr:after{color:#4c51bf}.order-summary.luno:after{color:#f59e0b}.order-summary.boch-bevo:after{color:#9c27b0}.order-summary.evo-short:after{color:#007bff}.order-form-container h2{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.3em;font-weight:600;margin-bottom:12px;padding-bottom:8px;text-align:center}.market-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:6px;padding:4px}.market-prices{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(3,1fr)}.price-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:4px;display:flex;justify-content:space-between;padding:4px 6px}.price-item span:first-child{color:#2d3748!important;font-size:.8em!important;font-weight:700!important}.price-item .price{color:#1a202c!important;font-family:Courier New,monospace!important;font-size:.9em!important;font-weight:700!important}.order-form{display:flex;flex-direction:column;gap:2px}.form-row{grid-gap:2px;gap:2px}.form-group{gap:3px}.form-group label{color:#2d3748!important;font-size:.75em!important;font-weight:600!important}.form-group input,.form-group select{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:4px!important;color:#2d3748!important;font-size:.82em!important;min-height:24px!important;padding:4px 6px!important;transition:all .2s ease!important}.form-group input:focus,.form-group select:focus{background:#fff!important;border-color:#667eea!important;box-shadow:0 0 0 2px #667eea1a!important;color:#2d3748!important;outline:none!important}.form-group input::placeholder{color:#718096!important;font-size:.9em!important;opacity:1!important}.form-group select option{background:#fff!important;color:#2d3748!important;font-size:.95em!important;min-height:32px!important;padding:6px!important}.form-group input:invalid{border-color:#e53e3e}.checkbox-group{align-items:center;flex-direction:row;gap:8px!important;margin:10px 0!important}.checkbox-group label{align-items:center;color:#2d3748!important;cursor:pointer;display:flex;font-size:.9em!important;font-weight:600!important;gap:6px!important;margin:0}.form-group select{background-color:#fff;border:2px solid #e2e8f0;border-radius:4px;color:#2d3748;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .2s ease;width:100%}.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a;outline:none}.form-group select:hover{border-color:#cbd5e0}.calculated-price{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:3px;color:#22c55e;font-size:.8em;padding:3px 6px}.order-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:5px;font-size:.8em;margin-top:2px;padding:2px 4px}.order-summary h3{color:#2d3748!important;font-size:.82em!important;font-weight:600!important;margin-bottom:0!important}.summary-item{border-bottom:1px solid #f6f8fb;display:grid;grid-template-columns:1fr auto;line-height:1;min-height:11px;padding:1px 0}.summary-item span:first-child{color:#2d3748!important;font-size:.74em!important;font-weight:600!important}.summary-item span:last-child{color:#1a202c!important;font-family:Courier New,monospace!important;font-size:.8em!important;font-weight:700!important}.summary-item .sell{color:#e53e3e;font-weight:700}.order-status{border-radius:4px;font-size:.9em;font-weight:500;margin:10px 0;padding:8px 12px}.order-status.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.order-status.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.order-status.warning{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.order-status.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.order-status.loading{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.submit-order-btn{background:linear-gradient(135deg,#e53e3e,#c53030);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85em;font-weight:700;letter-spacing:.3px;margin-top:4px;padding:6px 10px;text-transform:uppercase;transition:all .2s ease}.submit-order-btn:hover:not(:disabled){background:linear-gradient(135deg,#c53030,#9b2c2c);box-shadow:0 6px 20px #c530304d;transform:translateY(-2px)}.submit-order-btn:disabled{background:#a0aec0;box-shadow:none;cursor:not-allowed;transform:none}@media (max-width:768px){.order-entry{font-size:11px;padding:4px}.order-form-container{padding:8px}.order-form-container h2{font-size:1.2em;margin-bottom:8px;padding-bottom:6px}.form-row{gap:6px;grid-template-columns:1fr}.form-group{gap:2px}.form-group label{font-size:.85em!important}.form-group input,.form-group select{font-size:.85em!important;min-height:26px!important;padding:5px 6px!important}.market-info{margin-bottom:10px;padding:6px}.market-prices{gap:4px;grid-template-columns:1fr}.price-item{justify-content:space-between;padding:4px 6px}.price-item span:first-child{font-size:.8em!important}.price-item .price{font-size:.85em!important}.order-summary{margin-top:8px;padding:6px 8px}.order-summary h3{font-size:.85em!important;margin-bottom:4px!important}.summary-item{font-size:.8em;min-height:16px}.summary-item span:first-child{font-size:.8em!important}.summary-item span:last-child{font-size:.85em!important}.calculated-price{font-size:.75em;padding:2px 4px}.order-status{font-size:.85em;margin:8px 0;padding:6px 8px}.submit-order-btn{font-size:.85em;margin-top:6px;padding:6px 10px}}.order-form-container{animation:slideInUp .5s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.sniper-info{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;margin-top:8px;padding:8px}.sniper-info small{align-items:center;color:#856404;display:flex;font-weight:500;gap:4px}.order-status.success{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;font-family:monospace;margin:10px 0;padding:12px;white-space:pre-line}.calculated-price{background-color:#e8f6f3;border:1px solid #a8e6cf;border-radius:4px;color:#27ae60;font-size:.9em;font-weight:600;margin-top:6px;padding:6px 8px}.balance-display{font-size:.7em;margin-top:3px}.balance-value{color:#718096;font-weight:400}.balance-value strong{color:#4a5568;font-family:Courier New,monospace;font-weight:500}.balance-loading,.balance-unavailable{color:#a0aec0}.luno-adjustment-notice{background:#fef3c7;border:1px solid #fde68a;border-radius:4px;color:#92400e;font-size:.78em;font-weight:500;margin-top:6px;padding:6px 8px}.price-warning-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.price-warning-modal{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 50px #0000004d;max-width:420px;overflow:hidden;width:90%}.price-warning-header{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;display:flex;gap:12px;padding:16px 20px}.price-warning-header .warning-icon{font-size:1.5em}.price-warning-header h3{font-size:1.2em;font-weight:600;margin:0}.price-warning-content{padding:20px}.price-warning-content p{color:#2d3748;font-size:.95em;line-height:1.5;margin:0 0 16px}.price-comparison{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:16px 0;padding:12px 16px}.price-row{align-items:center;display:flex;justify-content:space-between;padding:6px 0}.price-row:not(:last-child){border-bottom:1px solid #e2e8f0}.price-row span:first-child{color:#64748b;font-size:.9em;font-weight:500}.price-row .price-value{color:#1a202c;font-family:Courier New,monospace;font-size:1em;font-weight:700}.warning-message{background:#fef3c7;border:1px solid #fde68a;border-radius:6px;color:#92400e;font-weight:500;padding:10px 14px;text-align:center}.price-warning-actions{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;padding:16px 20px}.warning-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.95em;font-weight:600;padding:12px 20px;transition:all .2s ease}.warning-btn.cancel-btn{background:#e2e8f0;color:#64748b}.warning-btn.cancel-btn:hover{background:#cbd5e1;color:#475569}.warning-btn.confirm-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.warning-btn.confirm-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #d977064d;transform:translateY(-1px)}@media (max-width:768px){.price-warning-modal{margin:10px;max-width:95%}.price-warning-header{padding:14px 16px}.price-warning-content{padding:16px}.price-warning-actions{flex-direction:column-reverse;padding:14px 16px}.warning-btn{padding:14px 20px}}.floating-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000004d;bottom:0;left:0;pointer-events:auto;position:fixed;right:0;top:0;z-index:999}.floating-order-entry{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 25px #00000040;display:flex;flex-direction:column;max-height:calc(100vh - 12px);max-width:calc(100vw - 12px);min-width:320px;overflow:hidden;pointer-events:auto;position:fixed;transition:all .25s ease;width:360px}.floating-order-entry.minimized{height:40px!important;max-height:40px;min-width:200px;width:200px}.floating-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #fff3;color:#fff;cursor:move;display:flex;flex-shrink:0;justify-content:space-between;padding:8px 10px;touch-action:none;-webkit-user-select:none;user-select:none}.floating-header:active{cursor:grabbing}.window-title{align-items:center;display:flex;font-size:.9em;font-weight:600;gap:8px}.title-icon{font-size:1.1em}.window-controls{display:flex;gap:5px}.control-btn{align-items:center;background:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.8em;height:24px;justify-content:center;touch-action:manipulation;transition:all .2s ease;width:24px}.control-btn:hover{background:#ffffff4d;transform:scale(1.05)}.close-btn:hover{background:#e74c3c}.minimize-btn:hover{background:#f39c12}.floating-content{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto}.floating-content .order-entry{flex:1 1;margin:0;max-width:none;padding:0}.floating-content button,.floating-content input,.floating-content label,.floating-content select{pointer-events:auto!important;-webkit-user-select:auto!important;user-select:auto!important}.floating-content select{cursor:pointer!important;pointer-events:auto!important}.floating-content .order-form-container{border:none;border-radius:0;box-shadow:none;margin:0;min-height:fit-content;padding:8px}.floating-content .order-form-container h2{display:none}.floating-content::-webkit-scrollbar{width:6px}.floating-content::-webkit-scrollbar-track{background:#f1f1f1}.floating-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.floating-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:1024px){.floating-order-entry{max-height:92vh;max-width:70vw;min-width:320px;width:70vw}.floating-order-entry.minimized{min-width:180px;width:180px}}@media (max-width:768px){.floating-order-entry{display:flex;flex-direction:column;max-height:90vh;max-width:92vw;min-width:300px;width:92vw}.floating-order-entry.minimized{min-width:160px;width:160px}.floating-header{flex-shrink:0;padding:8px 12px;touch-action:none}.window-title{font-size:.9em}.title-icon{font-size:1em}.control-btn{font-size:.9em;height:28px;width:28px}.floating-content{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto}.floating-content .order-form-container{min-height:fit-content;padding:6px 6px 60px}.floating-content .submit-order-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#e53e3e,#c53030);border:1px solid #ffffff1a;border-radius:6px;bottom:8px;box-shadow:0 -2px 15px #0003;left:50%;margin:0;max-width:340px;position:fixed;transform:translateX(-50%);width:calc(92vw - 24px);z-index:1001}}@media (max-width:480px){.floating-order-entry{max-height:85vh;max-width:98vw;min-width:280px;width:98vw}.floating-order-entry.minimized{min-width:140px;width:140px}.floating-header{padding:6px 10px}.window-title{font-size:.85em;gap:6px}.title-icon{font-size:.9em}.control-btn{font-size:1em;height:30px;width:30px}.floating-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-x:hidden;overflow-y:auto}.floating-content .order-form-container{padding:4px 4px 55px}.floating-content .submit-order-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#e53e3e,#c53030);border:1px solid #ffffff1a;border-radius:4px;bottom:6px;box-shadow:0 -2px 15px #00000040;left:50%;margin:0;max-width:260px;position:fixed;transform:translateX(-50%);width:calc(98vw - 20px);z-index:1001}}@media (max-width:480px) and (max-height:600px){.floating-order-entry{max-height:80vh}.floating-header{padding:4px 8px}.control-btn,.window-title{font-size:.8em}.control-btn{height:26px;width:26px}.floating-content{flex:1 1;overflow-x:hidden;overflow-y:auto}.floating-content .submit-order-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);bottom:4px;left:50%;max-width:240px;position:fixed;transform:translateX(-50%);width:calc(98vw - 16px);z-index:1001}.floating-content .order-form-container{padding-bottom:50px}}.floating-order-entry{animation:fadeInScale .3s ease-out}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.floating-order-entry{z-index:1000}.floating-order-entry.dragging{-webkit-user-select:none;user-select:none}@media (max-width:768px){.floating-content input,.floating-content select{font-size:16px;min-height:44px}.floating-content button:not(.submit-order-btn){min-height:40px}.floating-content .submit-order-btn{font-size:16px;font-weight:600;min-height:48px}.floating-content .form-group{margin-bottom:8px}.floating-content .form-row{gap:8px;grid-template-columns:1fr}.floating-content{scroll-behavior:smooth}.floating-content::-webkit-scrollbar{width:8px}.floating-content::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.floating-content::-webkit-scrollbar-thumb{background:#0000004d;border-radius:4px}.floating-content::-webkit-scrollbar-thumb:hover{background:#00000080}}.sidebar .order-entry-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #0000;color:#fff;margin-top:10px}.sidebar .order-entry-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);border-color:#ffffff4d;transform:translateX(5px)}.user-management{margin:0 auto;max-width:1200px;padding:1.25rem}.user-management-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.user-management-header h2{color:#1f2937;font-size:1.875rem;font-weight:700;margin:0}.error-message{justify-content:space-between}.error-message button{background:none;border:none;color:#dc2626;cursor:pointer;font-size:1.25rem;margin-left:1rem;padding:0}.loading{font-size:1.125rem;padding:3rem}.users-table{background:#fff;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;overflow:hidden}.users-table table{border-collapse:collapse;width:100%}.users-table td{color:#111827;font-size:.925rem}.users-table td:first-child{font-weight:500}.users-table tr:last-child td{border-bottom:none}.users-table td,.users-table th{border-bottom:1px solid #e5e7eb;padding:.65rem .85rem;text-align:left;vertical-align:middle}.users-table th{color:#374151;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.users-table th,.users-table tr:hover{background-color:#f9fafb}.role-badge{border-radius:999px;display:inline-block;font-size:.75rem;font-weight:600;line-height:1.2;padding:.2rem .55rem}.role-super_admin{background-color:#fce7f3;color:#be185d;font-weight:600}.role-admin{background-color:#dbeafe;color:#1d4ed8}.role-user{background-color:#d1fae5;color:#065f46}.status-badge{border-radius:999px;line-height:1.2;padding:.2rem .55rem}.status-badge.inactive{background-color:#fee2e2;color:#dc2626}.twofactor-badge{border-radius:999px;display:inline-block;font-size:.75rem;font-weight:600;line-height:1.2;padding:.2rem .55rem}.users-table td:last-child{text-align:right}.row-actions{justify-content:flex-end;position:relative;width:100%}.kebab-button,.row-actions{align-items:center;display:inline-flex}.kebab-button{background:#0000;border:1px solid #0000;border-radius:10px;color:#374151;cursor:pointer;font-size:18px;height:32px;justify-content:center;line-height:1;transition:background-color .15s ease,border-color .15s ease,color .15s ease;width:32px}.kebab-button:hover{background-color:#1118270d;border-color:#11182714}.kebab-button:focus{box-shadow:0 0 0 3px #3b82f62e;outline:none}.action-menu{background:#fff;border:1px solid #e5e7ebe6;border-radius:12px;box-shadow:0 12px 28px #00000024;min-width:190px;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:20}.action-menu-item{background:#0000;border:0;border-radius:10px;color:#111827;cursor:pointer;font-size:.875rem;padding:9px 10px;text-align:left;transition:background-color .15s ease,color .15s ease;width:100%}.action-menu-item:hover{background-color:#1118270f}.action-menu-item.danger{color:#dc2626}.action-menu-item.danger:hover{background-color:#dc262614}.twofactor-badge.enabled{background-color:#d1fae5;color:#065f46}.twofactor-badge.disabled{background-color:#fef3c7;color:#92400e}.action-buttons{gap:.5rem}.btn{border-radius:4px;font-size:.875rem;padding:.5rem 1rem}.btn-sm{font-size:.8125rem;padding:.375rem .75rem}.btn-primary:hover{background-color:#2563eb}.btn-primary:disabled{background-color:#93c5fd}.btn-info{background-color:#8b5cf6}.btn-info:hover{background-color:#7c3aed}.btn-secondary:hover{background-color:#4b5563}.btn-warning{background-color:#f59e0b}.btn-warning:hover{background-color:#d97706}.btn-danger:hover{background-color:#dc2626}.empty-state{padding:3rem}.modal{box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;padding:0;width:100%}.modal-header{border-bottom:1px solid #e5e7eb;padding:1.1rem 1.25rem}.modal-header h3{font-size:1.25rem}.close-btn{align-items:center;color:#6b7280;display:flex;font-size:1.5rem;height:24px;justify-content:center;width:24px}.close-btn:hover{color:#374151}.modal-form{padding:1.1rem 1.25rem}.form-group label{font-size:.875rem}.form-group input,.form-group select{font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group .disabled-input{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-group .password-hint{color:#6b7280;display:block;font-size:.8125rem;line-height:1.4;margin-top:.5rem}.password-input-wrapper{align-items:center;display:flex}.password-input-wrapper input{flex:1 1;padding-right:3rem}.password-toggle{font-size:1.25rem;padding:.25rem;right:.75rem;transition:opacity .2s}.password-toggle:hover{opacity:.7}.password-requirements{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:1rem;padding:1rem}.password-requirements h4{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 .75rem}.password-requirements ul{list-style:none;margin:0;padding:0}.password-requirements li{align-items:center;display:flex;font-size:.875rem;padding:.375rem 0;transition:color .2s}.password-requirements li.valid{color:#059669}.password-requirements li.invalid{color:#6b7280}.password-requirements .check-icon{align-items:center;display:inline-flex;font-size:.875rem;font-weight:700;height:1.25rem;justify-content:center;margin-right:.5rem;width:1.25rem}.password-requirements li.valid .check-icon{color:#059669}.password-requirements li.invalid .check-icon{color:#d1d5db}.modal-actions{gap:.75rem;margin-top:1.5rem}@media (max-width:768px){.user-management{padding:1rem}.user-management-header{align-items:stretch;flex-direction:column;gap:1rem}.users-table{overflow-x:auto}.action-buttons{flex-direction:column}.modal{margin:1rem;max-width:calc(100vw - 2rem)}}.comprehensive-balances{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:15px auto;max-width:1600px;padding:20px 25px}.balances-header{margin-bottom:15px}.balances-header h2{color:#333;font-size:1.5rem;font-weight:600;margin:0}.download-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.download-btn:hover{background:#059669}.retry-btn{background:#dc2626;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-left:10px;padding:6px 12px}.legend-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:15px;padding:14px}.legend-container h3{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 12px}.legend-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:10px}.legend-item{align-items:center;display:flex;gap:8px}.legend-color{border-radius:3px;flex-shrink:0;height:16px;width:16px}.available-color{background-color:#059669}.positive-color{background-color:#dcfce7;border:2px solid #059669}.negative-color{background-color:#fecaca;border:2px solid #dc2626}.reserved-color{background-color:#ea580c}.lent-color{background-color:#7c3aed}.legend-text{color:#374151;font-size:13px;line-height:1.4}.legend-note{border-top:1px solid #e2e8f0;margin-top:8px;padding-top:12px}.legend-note p{color:#6b7280;font-size:12px;font-style:italic;line-height:1.4;margin:0}.compact-table-container{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:15px;overflow-x:auto}.balances-table{border-collapse:collapse;font-size:13px;min-width:600px;width:100%}.balances-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-weight:600;padding:10px 8px;text-align:center;white-space:nowrap}.balances-table th.account-col{min-width:120px;text-align:left;width:120px}.balances-table th.currency-col{min-width:100px;width:100px}.currency-header{flex-direction:column;gap:2px}.currency-name{color:#000;font-size:14px;font-weight:700}.balance-type{color:#374151;font-size:11px;font-weight:500}.balances-table td{border-bottom:1px solid #e2e8f0;padding:6px 8px;vertical-align:middle}.account-row{transition:background-color .15s ease}.account-row:hover{background-color:#f8fafc}.totals-row{background-color:#f1f5f9;border-top:2px solid #cbd5e1}.totals-row:hover{background-color:#e2e8f0}.zar-value-row{border-top:1px solid #cbd5e1}.zar-value-row .account-name{display:flex;flex-direction:column;gap:2px}.price-rates{display:flex;flex-direction:column;gap:1px}.price-rates small{color:#64748b;font-size:10px;font-weight:400}.grand-total-row{background-color:#e2e8f0;border-top:2px solid #94a3b8}.grand-total-row:hover{background-color:#cbd5e1}.grand-total-cell{text-align:center!important}.grand-total-amount{color:#1e293b;font-family:Courier New,monospace;font-size:18px;font-weight:700;padding:4px 0}.zar-owed-row{background-color:#fef2f2;border-top:1px dashed #fca5a5}.zar-owed-row:hover{background-color:#fee2e2}.zar-owed-cell{text-align:center!important}.zar-owed-amount{font-family:Courier New,monospace;font-size:16px;font-weight:600;padding:4px 0}.zar-owed-amount .negative{color:#dc2626}.net-zar-row{background-color:#ecfdf5;border-top:2px solid #10b981}.net-zar-row:hover{background-color:#d1fae5}.net-zar-cell{text-align:center!important}.net-zar-amount{font-family:Courier New,monospace;font-size:20px;font-weight:700;padding:6px 0}.net-zar-amount .positive{color:#059669}.net-zar-amount .negative{color:#dc2626}.loading-text{color:#64748b;font-size:13px}.account-name{color:#1e293b;padding-left:12px;text-align:left}.account-label{font-size:13px}.balance-cell{padding:6px 4px;text-align:center}.balance-values{align-items:center;display:flex;flex-direction:column;gap:2px;justify-content:center;min-height:40px}.available-amount{color:#059669;font-family:Courier New,monospace;font-size:12px;font-weight:500;line-height:1.2}.available-amount.total{font-size:13px;font-weight:700}.position-amount{border-radius:3px;font-family:Courier New,monospace;font-size:11px;font-weight:600;line-height:1.2;padding:1px 4px}.position-amount.positive{background-color:#dcfce7;color:#059669}.position-amount.negative{background-color:#fecaca;color:#dc2626}.position-amount.total{font-size:12px;font-weight:700}.reserved-amount{color:#ea580c;font-family:Courier New,monospace;font-size:10px;font-weight:500;line-height:1.2}.reserved-amount.total{font-size:11px;font-weight:600}.lent-amount{color:#7c3aed;font-family:Courier New,monospace;font-size:10px;font-weight:500;line-height:1.2}.lent-amount.total{font-size:11px;font-weight:600}.error,.loading{color:#64748b;padding:40px;text-align:center}.error{color:#dc2626}.last-update{color:#64748b;font-size:12px;margin-top:10px;text-align:center}@media (max-width:1200px){.comprehensive-balances{margin:10px 15px;padding:16px 20px}.legend-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (max-width:768px){.comprehensive-balances{margin:10px;padding:15px}.balances-header{align-items:stretch;flex-direction:column;gap:10px}.header-buttons{flex-direction:column;width:100%}.download-btn,.refresh-btn,.retry-btn{font-size:15px;min-height:44px;width:100%}.balances-header h2{font-size:1.3rem;text-align:center}.balances-table{font-size:11px;min-width:500px}.compact-table-container{-webkit-overflow-scrolling:touch;position:relative}.compact-table-container:after{background:linear-gradient(90deg,#0000,#00000008);bottom:0;content:"";pointer-events:none;position:absolute;right:0;top:0;width:20px}.balances-table th{padding:8px 4px}.balances-table td{padding:6px 2px}.balance-values{gap:1px;min-height:35px}.available-amount{font-size:11px}.position-amount{font-size:10px}.lent-amount,.reserved-amount{font-size:9px}.legend-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.legend-text{font-size:12px}.legend-note p{font-size:11px}.grand-total-amount{font-size:16px}.price-rates small{font-size:9px}}@media (max-width:480px){.comprehensive-balances{margin:5px;padding:10px}.balances-header h2{font-size:1.2rem}.balances-table{font-size:10px;min-width:450px}.balances-table th.account-col{min-width:100px;width:100px}.balances-table th.currency-col{min-width:80px;width:80px}.balances-table th .currency-name{color:#000!important;font-size:12px}.balance-type{color:#374151;font-size:10px;font-weight:500}.account-label{font-size:11px}.legend-grid{gap:6px;grid-template-columns:1fr}.legend-text{font-size:11px}.legend-note p{font-size:10px}.grand-total-amount{font-size:14px}.price-rates small{font-size:8px}.zar-value-row .account-name{font-size:12px}}.ovex-balances-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:20px;padding:16px}.ovex-balances-section h3{color:#1e293b;font-size:1.2rem;font-weight:600;margin:0 0 8px}.ovex-description{color:#64748b;font-size:14px;font-style:italic;margin:0 0 16px}.ovex-table-container{border:1px solid #e2e8f0;border-radius:6px;overflow-x:auto}.ovex-balances-table{border-collapse:collapse;font-size:14px;width:100%}.ovex-balances-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-weight:600;padding:10px 12px;text-align:left}.ovex-balances-table th.ovex-currency-col{min-width:80px;width:20%}.ovex-balances-table th.ovex-amount-col{min-width:120px;text-align:right;width:30%}.ovex-balances-table th.ovex-status-col{min-width:100px;text-align:center;width:20%}.ovex-balances-table td{border-bottom:1px solid #e2e8f0;padding:8px 12px;vertical-align:middle}.ovex-balance-row:hover{background-color:#f8fafc}.ovex-currency{color:#1e293b;font-weight:600}.ovex-amount{font-family:Courier New,monospace;text-align:right}.amount-owed-to-ovex{color:#dc2626;font-size:15px;font-weight:600}.account-available,.amount-owed-to-us{color:#059669;font-size:15px;font-weight:600}.account-locked{color:#d97706;font-size:15px;font-weight:600}.account-total{color:#1e293b;font-size:15px;font-weight:700}.no-amount{color:#9ca3af;font-style:italic}.ovex-status{text-align:center}.status-badge.outstanding{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.no-balances{padding:20px}.no-balances,.ovex-last-update{color:#64748b;font-style:italic;text-align:center}.ovex-last-update{font-size:12px;margin-top:12px}.bitstamp-balances-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:20px;padding:16px}.bitstamp-balances-section h3{color:#f7931a;font-size:1.2rem;font-weight:600;margin:0 0 8px}.bitstamp-description{color:#64748b;font-size:14px;font-style:italic;margin:0 0 16px}.bitstamp-table-container{border:1px solid #e2e8f0;border-radius:6px;overflow-x:auto}.bitstamp-balances-table{border-collapse:collapse;font-size:14px;width:100%}.bitstamp-balances-table th{background:#fef7ed;border-bottom:2px solid #f7931a;color:#475569;font-weight:600;padding:10px 12px;text-align:left}.bitstamp-balances-table th.bitstamp-currency-col{min-width:80px;width:20%}.bitstamp-balances-table th.bitstamp-amount-col{min-width:120px;text-align:right;width:25%}.bitstamp-balances-table td{border-bottom:1px solid #e2e8f0;padding:8px 12px;vertical-align:middle}.bitstamp-balance-row:hover{background-color:#fef7ed}.bitstamp-currency{color:#1e293b;font-weight:600}.bitstamp-amount{font-family:Courier New,monospace;text-align:right}.account-reserved{color:#d97706;font-size:15px;font-weight:600}.bitstamp-last-update{color:#64748b;font-size:12px;font-style:italic;margin-top:12px;text-align:center}.bitstamp-error-message,.bitstamp-loading-message{border-radius:6px;margin-bottom:12px;padding:12px}.bitstamp-loading-message{background:#fef7ed;color:#f7931a}.bitstamp-error-message{background:#fef2f2;color:#dc2626}@media (max-width:768px){.bitstamp-balances-section,.ovex-balances-section{margin-top:20px;padding:15px}.bitstamp-balances-section h3,.ovex-balances-section h3{font-size:1.1rem}.bitstamp-balances-table,.ovex-balances-table{font-size:13px}.bitstamp-balances-table td,.bitstamp-balances-table th,.ovex-balances-table td,.ovex-balances-table th{padding:10px 12px}.account-available,.account-locked,.account-reserved,.account-total,.amount-owed-to-ovex,.amount-owed-to-us{font-size:14px}}@media (max-width:480px){.bitstamp-balances-section,.ovex-balances-section{margin-top:15px;padding:12px}.bitstamp-balances-section h3,.ovex-balances-section h3{font-size:1rem}.bitstamp-description,.ovex-description{font-size:13px}.bitstamp-balances-table,.ovex-balances-table{font-size:12px}.bitstamp-balances-table td,.bitstamp-balances-table th,.ovex-balances-table td,.ovex-balances-table th{padding:8px 10px}.account-available,.account-locked,.account-reserved,.account-total,.amount-owed-to-ovex,.amount-owed-to-us{font-size:13px}.status-badge{font-size:11px;padding:3px 6px}}.balances-table th .currency-name{color:#000!important;font-size:14px;font-weight:700}.flips-data-container{padding:20px}.flips-account-selector{align-items:center;background:#ffffff0d;border-radius:8px;display:flex;gap:15px;margin-bottom:20px;padding:10px 15px}.flips-account-selector label{color:#ccc;font-size:14px;font-weight:600}.account-buttons{display:flex;gap:10px}.account-btn{border:2px solid;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.account-btn:hover{opacity:.85;transform:translateY(-1px)}.account-btn.active{box-shadow:0 2px 8px #0000004d}.flips-balances-display{background:#ffffff14;border:1px solid #ffffff1a;border-radius:8px;margin-bottom:20px;padding:15px 20px}.balances-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.flips-balances-display h3{color:#ccc;font-size:15px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.balance-refresh-btn{align-items:center;background:#3b82f633;border:1px solid #3b82f666;border-radius:6px;color:#60a5fa;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:5px;padding:6px 12px;transition:all .2s ease}.balance-refresh-btn:hover:not(:disabled){background:#3b82f64d;border-color:#3b82f699;transform:translateY(-1px)}.balance-refresh-btn:disabled{animation:spin 1s linear infinite;cursor:not-allowed;opacity:.5}.balances-loading{color:#999;font-size:14px;font-style:italic}.balances-grid{display:flex;gap:30px}.balance-item{align-items:center;display:flex;gap:10px}.balance-label{color:#aaa;font-size:14px;font-weight:600}.balance-value{background:#4caf501a;border:1px solid #4caf504d;border-radius:4px;color:#4caf50;padding:4px 12px}.flips-tables-container{display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:800px}.flips-tables-container>:not(:last-child):after{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";display:block;height:2px;margin-top:30px}.valr-flips{border-radius:8px;width:100%}.valr-flips,.valr-flips table{background:#fff}.valr-flips h2{margin-bottom:15px;padding-bottom:10px}.valr-flips.evo-theme{border:2px solid #3498db66}.valr-flips.evo-theme h2{border-bottom:2px solid #3498db4d;color:#3498db}.valr-flips.boch-theme{border:2px solid #9b59b666}.valr-flips.boch-theme h2{border-bottom:2px solid #9b59b64d;color:#9b59b6}.luno-flips-container{width:100%}.luno-flips-container .luno-order-book,.luno-flips-container .luno-orderbook{background:#fff!important;border:2px solid #f1c40f80!important;border-radius:8px;width:100%}.luno-flips-container .order-book-table{background:#fff!important}.luno-flips-container .order-book-header h3{border-bottom:2px solid #f1c40f66;color:#d4a800!important;padding-bottom:10px}.flips-market-data{width:100%}.valr-flips .market-stats{background:#f8f9fa;border-radius:6px;display:flex;gap:40px;justify-content:center;margin-top:10px;padding:15px}.valr-flips.evo-theme .market-stats{border:1px solid #3498db4d}.valr-flips.boch-theme .market-stats{border:1px solid #9b59b64d}.valr-flips .market-stats .stat-item{align-items:center;display:flex;gap:8px}.valr-flips .market-stats .stat-label{color:#666;font-size:13px;font-weight:600;text-transform:uppercase}.valr-flips .market-stats .stat-value{color:#2c3e50;font-family:Courier New,monospace;font-size:15px;font-weight:700}.flips-modal-header{gap:10px}.flips-modal-header .account-badge{padding:4px 10px}.flips-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.flips-modal-content{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 20px 60px #00000026;color:#2c3e50;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;padding:0;width:450px}.flips-modal-header{align-items:center;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-bottom:1px solid #e1f5fe;border-radius:12px 12px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.flips-modal-header h3{color:#1565c0;font-size:18px;font-weight:600;margin:0}.flips-modal-header .account-badge{border-radius:4px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;margin-left:auto;margin-right:10px;padding:6px 12px;text-transform:uppercase}.close-button{color:#1565c0}.close-button:hover{background-color:#1565c01a}.flips-order-form{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:30px}.form-row{grid-gap:20px;gap:20px;margin-bottom:24px}.form-group label:not(.checkbox-label){color:#495057;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:0;text-transform:uppercase}.form-group input[type=number],.form-group input[type=text]{background:#fff;border:2px solid #dee2e6;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;color:#495057;font-size:16px;font-weight:500;padding:14px 16px;transition:all .3s ease}.form-group input[type=number]:focus,.form-group input[type=text]:focus{border-color:#1976d2;box-shadow:0 0 0 3px #1976d226,inset 0 1px 3px #0000001a;outline:none;transform:translateY(-1px)}.disabled-input{background:#1f1f1f!important;cursor:not-allowed;opacity:.7}.form-group input[type=checkbox]{accent-color:#4caf50;margin-right:10px;transform:scale(1.2)}.input-help{color:#999;font-size:11px;font-weight:500;margin-top:0}.error-message{background:linear-gradient(135deg,#f44,#c33);border:1px solid #f66;box-shadow:0 4px 12px #f443;margin-bottom:24px}.form-actions{border-top:2px solid #333;gap:16px;margin-top:32px;padding-top:24px}.cancel-button,.submit-button{font-size:15px;letter-spacing:.5px;min-width:120px;padding:14px 28px;text-transform:uppercase;transition:all .3s ease}.cancel-button{background:linear-gradient(135deg,#666,#555);border:2px solid #0000;color:#fff}.cancel-button:hover{background:linear-gradient(135deg,#777,#666);box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.submit-button{background:linear-gradient(135deg,#4caf50,#45a049);border:2px solid #4caf50;box-shadow:0 4px 15px #4caf504d}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#4caf50);box-shadow:0 8px 25px #4caf5066;transform:translateY(-2px)}.submit-button:disabled{background:linear-gradient(135deg,#666,#555);border-color:#666;box-shadow:none;opacity:.6}.flips-modal-content{animation:modalSlideIn .3s ease-out}.form-group label input[type=checkbox]{accent-color:#4caf50;cursor:pointer;margin-right:12px;transform:scale(1.3)}.form-group label.checkbox-label{align-items:center;color:#e0e0e0;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:0;letter-spacing:normal;text-transform:none}@media (max-width:500px){.flips-modal-overlay{padding:10px}.flips-modal-content{border-radius:8px;margin:0;max-height:95vh;max-width:none;width:100%}.flips-modal-header{padding:16px 20px}.flips-modal-header h3{font-size:16px}.form-row{gap:16px;grid-template-columns:1fr}.flips-order-form{padding:20px}.form-group input[type=number],.form-group input[type=text]{font-size:16px;padding:12px 14px}.form-actions{background:#f8f9fa;border-top:2px solid #333;bottom:0;flex-direction:column;gap:12px;margin:0 -20px -20px;padding:20px;position:sticky}.cancel-button,.submit-button{min-width:auto;padding:16px 28px;width:100%}}.luno-order-book{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin:0;max-height:280px;overflow:hidden;padding:0;transition:all .3s ease}.luno-order-book:hover{box-shadow:0 6px 25px #00000026;transform:translateY(-2px)}.order-book-header{align-items:center;background:#fff;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px 16px 8px;text-align:center}.order-book-header,.order-book-header h3{color:#2d3748;font-size:1.1em;font-weight:600}.order-book-header h3{margin:0}.order-book-header{border-bottom-color:#f59e0b}.connection-status{align-items:center;display:flex;font-size:.9em;gap:6px}.status-indicator{font-size:.8em}.status-text{font-weight:500}.order-book-table{border-collapse:collapse;font-family:Courier New,monospace;margin:0;width:100%}.order-book-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:.85em;font-weight:600;padding:8px 6px;text-align:center}.order-book-table td{border-bottom:1px solid #f1f5f9;font-size:.9em;padding:6px;text-align:center}.table-body{max-height:200px;overflow-y:auto}.premium-cell{font-size:.85em;font-weight:600}.size-cell{font-weight:500}.price-cell,.size-cell{font-family:Courier New,monospace}.price-cell{font-weight:700}.order-book-table tr:hover{background-color:#f8fafc}.bid-premium{color:#059669;font-weight:600}.bid-size{color:#065f46;font-weight:500}.bid-price{background:#0596691a;color:#059669}.ask-price,.bid-price{border-radius:3px;font-weight:700;padding:2px 4px}.ask-price{background:#dc26261a}.ask-size{color:#991b1b;font-weight:500}.ask-premium{color:#dc2626;font-weight:600}.order-book-footer{background:#f8fafc;border-top:1px solid #e2e8f0;color:#64748b;font-size:.8em;padding:8px 16px;text-align:center}.last-update,.order-book-footer{font-family:Courier New,monospace}.market-status{font-weight:600;margin-left:8px;text-transform:uppercase}.luno-order-book.error{border-color:#fecaca}.error-message{font-weight:600;padding:20px}.table-body::-webkit-scrollbar{width:6px}.table-body::-webkit-scrollbar-track{background:#f1f1f1}.table-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.table-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width:768px){.order-book-header{flex-direction:column;gap:8px;text-align:center}.header-row,.order-row{font-size:.75em;padding:4px 8px}.order-book-footer{flex-direction:column;gap:4px;text-align:center}.luno-order-book{width:100%}}@keyframes flash-green{0%{background-color:#0596694d}to{background-color:initial}}@keyframes flash-red{0%{background-color:#dc26264d}to{background-color:initial}}.order-row.new-bid{animation:flash-green .5s ease-out}.order-row.new-ask{animation:flash-red .5s ease-out}.coin-cash-transfers{margin:0 auto;max-width:1400px;padding:10px}.transfers-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:15px}.transfers-container h2{border-bottom:2px solid #3498db;color:#2c3e50;font-size:1.3em;margin-bottom:15px;padding-bottom:5px}.transfer-main-layout{grid-gap:20px;background:linear-gradient(135deg,#f8fdff,#e3f2fd);border:2px solid #3498db;border-radius:8px;display:grid;gap:20px;grid-template-columns:2fr 1fr;margin-bottom:20px;min-height:200px;padding:20px}.transfer-form-column{background:#0000;border:none;border-radius:6px;padding:0}.compact-form{display:flex;flex-direction:column;gap:12px}.form-row{grid-gap:12px;align-items:end;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.currency-amount-row{grid-template-columns:1fr 1fr}.transfer-row{grid-template-columns:1fr;justify-items:center}.form-group.transfer-action{justify-content:end}.form-group label{font-size:13px;margin-bottom:4px}.form-group input,.form-group select{border:2px solid #ddd;border-radius:4px;font-size:13px;height:32px;padding:6px 8px}.form-group input:focus,.form-group select:focus{box-shadow:0 0 0 2px #3498db1a}.balance-info{color:#666;font-size:10px;font-style:italic;margin-top:2px}.amount-input-container{align-items:center;display:flex;gap:8px}.amount-input-container input{flex:1 1;min-width:0}.balance-info-inline{color:#666;flex-shrink:0;font-size:10px;font-style:italic;white-space:nowrap}.transfer-button.compact{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;height:32px;min-width:80px;padding:6px 12px;transition:all .3s ease}.transfer-button.compact:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#21618c);transform:translateY(-1px)}.transfer-button.compact:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.pin-input-inline{align-items:center;display:flex;gap:4px}.pin-input-inline input{flex:1 1;margin:0;min-width:80px}.cancel-button.compact,.confirm-button.compact{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:center;padding:6px 8px;width:28px}.confirm-button.compact{background:linear-gradient(135deg,#27ae60,#229954);color:#fff}.cancel-button.compact{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.pin-confirmation-inline{background:#fff3cd;border:1px solid #ffc107;color:#856404}.pin-confirmation-inline,.status-message{border-radius:4px;font-size:12px;grid-column:1/-1;padding:8px 12px;text-align:center}.status-message{font-weight:600}.status-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.status-message.loading{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.balances-column{background:#f8f9fa;border-left:4px solid #27ae60;border-radius:6px;padding:15px}.balances-compact h3{border-bottom:1px solid #dee2e6;color:#2c3e50;font-size:1em;margin-bottom:12px;padding-bottom:5px}.balances-grid-compact{display:flex;flex-direction:column;gap:10px}.balance-card-compact{background:#fff;border:1px solid #dee2e6;border-radius:4px;padding:10px}.balance-card-compact h4{border-bottom:1px solid #3498db;color:#2c3e50;font-size:13px;margin-bottom:8px;padding-bottom:3px}.balance-list-compact{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.balance-item-compact{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:3px;display:flex;flex-direction:column;padding:4px}.balance-item-compact .currency{color:#2c3e50;font-size:10px;font-weight:600;margin-bottom:2px}.balance-item-compact .amount-details{align-items:center;display:flex;flex-direction:column;gap:1px}.balance-item-compact .amount{color:#27ae60;font-family:Courier New,monospace;font-size:11px;font-weight:600}.balance-item-compact .amount.negative{color:#e74c3c;font-weight:700}.balance-item-compact .reserved{color:#e67e22}.balance-item-compact .available-detail,.balance-item-compact .reserved{cursor:help;font-family:Courier New,monospace;font-size:9px;font-weight:500}.balance-item-compact .available-detail{color:#3498db}@media (max-width:1024px){.transfer-main-layout{gap:15px;grid-template-columns:1fr}.form-row{gap:8px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.balances-grid-compact{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:768px){.coin-cash-transfers{padding:8px}.transfers-container{padding:12px}.form-row{gap:8px;grid-template-columns:1fr}.transfer-main-layout{gap:12px}.pin-input-inline{flex-direction:column;gap:6px}.pin-input-inline input{min-width:auto}.cancel-button.compact,.confirm-button.compact{padding:6px 12px;width:auto}}@media (max-height:600px){.transfers-container{padding:10px}.transfers-container h2{font-size:1.2em;margin-bottom:10px}.balances-column,.transfer-form-column{padding:10px}.compact-form{gap:8px}}.cancel-button.compact:disabled,.confirm-button.compact:disabled,.transfer-button.compact:disabled{animation:pulse 1.5s ease-in-out infinite}.withdrawal-section{background:linear-gradient(135deg,#fff8f8,#fdf2f2);border:2px solid #e74c3c;border-radius:8px;margin-top:20px;padding:20px}.withdrawal-section .transfer-form-column{background:#0000;border:none}.withdrawal-section h3{border-bottom:1px solid #e74c3c;color:#c0392b;font-size:1.2em;margin-bottom:15px;padding-bottom:5px}.withdrawal-button.compact{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;height:32px;min-width:80px;padding:6px 12px;transition:all .3s ease}.withdrawal-button.compact:hover:not(:disabled){background:linear-gradient(135deg,#c0392b,#a93226);transform:translateY(-1px)}.withdrawal-button.compact:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.withdrawal-info{background:#e74c3c0d;border:1px solid #e74c3c;border-radius:6px;padding:15px}.withdrawal-info h3{border-bottom:1px solid #e74c3c;color:#c0392b;font-size:1.1em;margin-bottom:15px;padding-bottom:5px}.withdrawal-details{display:flex;flex-direction:column;gap:8px}.detail-item{align-items:flex-start;border-bottom:1px solid #f8d7da;justify-content:space-between;padding:4px 0}.detail-item:last-child{border-bottom:none}.detail-item .label{color:#721c24;font-size:12px;font-weight:600;min-width:80px}.detail-item .value{color:#2c3e50;flex:1 1;font-size:12px;text-align:right}.detail-item .address-text{font-family:Courier New,monospace;font-size:10px;line-height:1.3;word-break:break-all}.withdrawal-disabled{color:#7f8c8d;font-style:italic;padding:20px 0;text-align:center}.withdrawal-disabled p{font-size:13px;margin:0}.withdrawal-info .info-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.withdrawal-info .info-section{border-top:1px solid #e0e0e0;margin-top:15px;padding-top:15px}.withdrawal-info .info-section h4{color:#b22222;font-size:14px;font-weight:600;margin:0 0 10px}.withdrawal-info .balance-display{background:#b222220d;border-left:3px solid #b22222;border-radius:4px;padding:10px}.withdrawal-info .balance-item{align-items:center;display:flex;justify-content:space-between}.withdrawal-info .balance-label{color:#666;font-size:13px}.withdrawal-info .balance-value{color:#b22222;font-size:14px;font-weight:600}.zar-withdrawal-section{background:linear-gradient(135deg,#f8fff9,#e8f5e9);border:2px solid #28a745;border-radius:8px;margin-top:30px;padding:20px}.zar-withdrawal-section h3{border-bottom:2px solid #28a745;color:#28a745;font-weight:600;margin-bottom:20px;padding-bottom:8px}.ovex-withdrawal-section{background:linear-gradient(135deg,#fff9f6,#ffe8db);border:2px solid #ff6b35;border-radius:8px;margin-top:30px;padding:20px}.ovex-withdrawal-section h3{border-bottom:2px solid #ff6b35;color:#ff6b35;font-weight:600;margin-bottom:20px;padding-bottom:8px}.zar-withdrawal-button{background:linear-gradient(135deg,#28a745,#34ce57);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;margin-right:10px;padding:12px 24px;transition:all .3s ease}.zar-withdrawal-button:hover:not(:disabled){background:linear-gradient(135deg,#218838,#28a745);box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.zar-withdrawal-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.ovex-withdrawal-button{background:linear-gradient(135deg,#ff6b35,#ff8c42);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;margin-right:10px;padding:12px 24px;transition:all .3s ease}.ovex-withdrawal-button:hover:not(:disabled){background:linear-gradient(135deg,#e55a2b,#ff6b35);box-shadow:0 4px 12px #ff6b354d;transform:translateY(-2px)}.ovex-withdrawal-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.quick-withdrawal-button{background:linear-gradient(135deg,#ff6b35,#ff8c42);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.quick-withdrawal-button:hover:not(:disabled){background:linear-gradient(135deg,#e55a2b,#ff6b35);box-shadow:0 4px 12px #ff6b354d;transform:translateY(-2px)}.quick-withdrawal-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.zar-withdrawal-info{background:#28a7450d;border:1px solid #28a745;border-radius:8px;height:fit-content;padding:20px}.zar-withdrawal-info h3{border-bottom:2px solid #28a745;color:#28a745;font-size:18px;font-weight:600;margin:0 0 15px;padding-bottom:8px}.ovex-withdrawal-info{background:#ff6b350d;border:1px solid #ff6b35;border-radius:8px;height:fit-content;padding:20px}.ovex-withdrawal-info h3{border-bottom:2px solid #ff6b35;color:#ff6b35;font-size:18px;font-weight:600;margin:0 0 15px;padding-bottom:8px}.quick-options{background:#28a7451a;border-left:4px solid #28a745;border-radius:6px;padding:15px}.quick-options p{color:#155724;font-size:14px;margin:8px 0}.quick-options strong{color:#28a745}.zar-withdrawal-section .form-group label{color:#28a745;font-weight:600}.zar-withdrawal-section input[type=number]{border:2px solid #28a745;border-radius:4px;padding:10px}.zar-withdrawal-section input[type=number]:focus{border-color:#34ce57;box-shadow:0 0 8px #28a74533;outline:none}.ovex-withdrawal-section .form-group label{color:#ff6b35;font-weight:600}.ovex-withdrawal-section input[type=number]{border:2px solid #ff6b35;border-radius:4px;padding:10px}.ovex-withdrawal-section input[type=number]:focus{border-color:#ff8c42;box-shadow:0 0 8px #ff6b3533;outline:none}.zar-withdrawal-section input[type=checkbox]{margin-right:8px;transform:scale(1.2)}.ovex-withdrawal-section .transfer-action,.zar-withdrawal-section .transfer-action{align-items:center;display:flex;gap:10px}.available-balance{align-items:center;color:#666;display:flex;font-size:12px;font-style:italic;font-weight:700;gap:8px;margin-left:8px;white-space:nowrap}.balance-label-text{color:#666}.balance-amount-text{color:#28a745;font-style:normal;font-weight:600}.luno-withdrawal-section{background:linear-gradient(135deg,#f8f6ff,#f0ebff);border:2px solid #6f42c1;border-radius:8px;margin-top:30px;padding:20px}.luno-withdrawal-section h3{border-bottom:2px solid #6f42c1;color:#6f42c1;font-weight:600;margin-bottom:20px;padding-bottom:8px}.luno-withdrawal-button{background:linear-gradient(135deg,#6f42c1,#8e6dc1);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;margin-right:10px;padding:12px 24px;transition:all .3s ease}.luno-withdrawal-button:hover:not(:disabled){background:linear-gradient(135deg,#5d359a,#6f42c1);box-shadow:0 4px 12px #6f42c14d;transform:translateY(-2px)}.luno-withdrawal-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.luno-withdrawal-info{background:#6f42c10d;border:1px solid #6f42c1;border-radius:8px;height:fit-content;padding:20px}.luno-withdrawal-info h3{border-bottom:2px solid #6f42c1;font-size:18px;margin:0 0 15px;padding-bottom:8px}.luno-withdrawal-info h3,.luno-withdrawal-section .form-group label{color:#6f42c1;font-weight:600}.luno-withdrawal-section input[type=number],.luno-withdrawal-section select{border:2px solid #6f42c1;border-radius:4px;padding:10px}.luno-withdrawal-section input[type=number]:focus,.luno-withdrawal-section select:focus{border-color:#8e6dc1;box-shadow:0 0 8px #6f42c133;outline:none}.luno-withdrawal-section .transfer-action{align-items:center;display:flex;gap:10px}.clickable-balance{border-radius:3px;color:#007bff;cursor:pointer;font-weight:600;padding:2px 4px;text-decoration:underline;text-decoration-style:dotted;transition:color .2s ease,transform .1s ease,-webkit-text-decoration .2s ease;transition:color .2s ease,text-decoration .2s ease,transform .1s ease;transition:color .2s ease,text-decoration .2s ease,transform .1s ease,-webkit-text-decoration .2s ease;-webkit-user-select:none;user-select:none}.clickable-balance:hover{background-color:#007bff1a;color:#0056b3;text-decoration-style:solid;transform:scale(1.02)}.clickable-balance:active{background-color:#007bff33;color:#004085;transform:scale(.98)}.zar-withdrawal-section .clickable-balance:hover{background-color:#28a7451a;color:#1e7e34}.ovex-withdrawal-section .clickable-balance:hover{background-color:#ff6b351a;color:#e55a2b}.pending-withdrawals-section{background:linear-gradient(135deg,#fffef5,#fff8e1);border:2px solid #ffc107;border-radius:8px;margin-top:30px;padding:20px}.pending-withdrawals-section h3{align-items:center;border-bottom:2px solid #ffc107;color:#e65100;display:flex;font-weight:600;gap:8px;margin-bottom:20px;padding-bottom:8px}.pending-withdrawals-section h3:before{content:"⏳";font-size:20px}.pending-withdrawals-column{width:100%}.loading-message{color:#666}.no-pending-message{background:#28a7451a;border:1px solid #28a74533;border-radius:6px;color:#28a745;font-weight:600;padding:20px;text-align:center}.pending-withdrawals-table{background:#fff;border:1px solid #e0e0e0;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;table-layout:fixed;width:100%}.pending-withdrawals-table thead{background:linear-gradient(135deg,#ffc107,#ffb300)}.pending-withdrawals-table th{border-right:1px solid #ffffff4d;color:#333;font-size:13px;font-weight:600;letter-spacing:.5px;padding:12px 8px;text-align:center;text-transform:uppercase;vertical-align:middle}.pending-withdrawals-table th:last-child{border-right:none}.pending-withdrawals-table tbody tr{border-bottom:1px solid #e0e0e0;min-height:60px;transition:background-color .2s ease}.pending-withdrawals-table tbody tr:hover{background-color:#f8f9fa}.pending-withdrawals-table tbody tr:nth-child(2n){background-color:#fafafa}.pending-withdrawals-table tbody tr:nth-child(2n):hover{background-color:#f0f0f0}.pending-withdrawals-table td{border-right:1px solid #e0e0e0;font-size:13px;padding:12px 8px;text-align:center;vertical-align:middle}.pending-withdrawals-table td:last-child{border-right:none}.pending-withdrawals-table td:first-child,.pending-withdrawals-table th:first-child{width:80px}.pending-withdrawals-table td:nth-child(2),.pending-withdrawals-table th:nth-child(2){width:130px}.pending-withdrawals-table td:nth-child(3),.pending-withdrawals-table th:nth-child(3){width:180px}.pending-withdrawals-table td:nth-child(4),.pending-withdrawals-table th:nth-child(4){width:120px}.pending-withdrawals-table td:nth-child(5),.pending-withdrawals-table th:nth-child(5){width:90px}.id-cell{font-family:monospace;font-weight:600}.amount-display{color:#e65100;font-size:14px;font-weight:600;text-align:center}.fee-display{color:#666;font-size:10px;font-style:italic;margin:0;text-align:center}.bank-info{text-align:center;width:100%}.bank-name{color:#333;font-size:12px;font-weight:600;margin:0;text-align:center}.account-number{font-size:10px;margin:0}.account-number,.date-info{color:#666;font-family:monospace;text-align:center}.date-info{font-size:11px;white-space:nowrap}.status-badge{letter-spacing:.5px}.status-badge.accepted{background-color:#ffc10733;border:1px solid #ffc107;color:#e65100}.status-badge.succeed{background-color:#28a74533;border:1px solid #28a745;color:#155724}.status-badge.rejected{background-color:#dc354533;border:1px solid #dc3545;color:#721c24}@media (max-width:1200px){.pending-withdrawals-table td:first-child,.pending-withdrawals-table th:first-child{width:70px}.pending-withdrawals-table td:nth-child(2),.pending-withdrawals-table th:nth-child(2){width:110px}.pending-withdrawals-table td:nth-child(3),.pending-withdrawals-table th:nth-child(3){width:160px}.pending-withdrawals-table td:nth-child(4),.pending-withdrawals-table th:nth-child(4){width:100px}.pending-withdrawals-table td:nth-child(5),.pending-withdrawals-table th:nth-child(5){width:80px}.pending-withdrawals-table td,.pending-withdrawals-table th{font-size:12px;padding:10px 6px}}@media (max-width:768px){.pending-withdrawals-section{margin-top:20px;padding:15px}.pending-withdrawals-table{display:block;overflow-x:auto;white-space:nowrap}.pending-withdrawals-table thead{display:none}.pending-withdrawals-table tbody,.pending-withdrawals-table td,.pending-withdrawals-table tr{display:block}.pending-withdrawals-table tr{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:15px;width:100%}.pending-withdrawals-table td{border-bottom:1px solid #e0e0e0;border-right:none;padding:8px 12px;text-align:left}.row-item:last-child{border-bottom:none}.row-item:before{color:#666;content:attr(data-label) ": ";display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;width:80px}}.luno-withdrawal-section .available-balance .clickable-balance:hover{background-color:#6f42c11a;color:#5d359a}@media (max-width:768px){.luno-withdrawal-section{padding:15px}.luno-withdrawal-section .form-row{flex-direction:column}.luno-withdrawal-section .transfer-action{flex-direction:column;gap:10px}.luno-withdrawal-button,.luno-withdrawal-section .quick-withdrawal-button{margin-right:0;width:100%}}.outstanding-trades-list{background:#fafafa;border:1px solid #e0e0e0;border-radius:6px;max-height:400px;overflow-y:auto}.outstanding-trade-item{background:#fff;border-bottom:1px solid #e0e0e0;margin-bottom:1px;padding:12px;transition:background-color .2s ease}.outstanding-trade-item:last-child{border-bottom:none;margin-bottom:0}.outstanding-trade-item:hover{background:#f8f9fa}.trade-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:6px}.trade-currency{color:#2c3e50;font-size:14px;font-weight:600}.trade-side{background:#e9ecef;color:#495057;padding:2px 8px}.trade-status{color:#6c757d;font-size:11px;font-weight:500}.trade-details{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.trade-detail{display:flex;flex-direction:column;gap:2px}.trade-label{color:#6c757d;font-size:11px;font-weight:500}.trade-value{color:#2c3e50;font-size:13px;font-weight:600}.loading-message,.no-trades-message{color:#6c757d;font-style:italic;padding:20px;text-align:center}.no-trades-message{background:#f8f9fa;border:1px dashed #dee2e6;border-radius:6px}@media (max-width:768px){.outstanding-trades-list{max-height:300px}.outstanding-trade-item{padding:10px}.trade-header{align-items:flex-start;flex-direction:column;gap:4px}.trade-details{gap:6px;grid-template-columns:1fr}.trade-detail{align-items:center;flex-direction:row;justify-content:space-between}}.client-transfers-section{background:linear-gradient(135deg,#f0fcff,#d4f5fc);border:2px solid #17a2b8}.client-transfers-section h3{border-bottom:2px solid #17a2b8;color:#117a8b;margin-bottom:15px;padding-bottom:8px}.client-transfer-button{background:linear-gradient(135deg,#17a2b8,#20c997);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.client-transfer-button:hover:not(:disabled){background:linear-gradient(135deg,#138496,#17a2b8);box-shadow:0 4px 12px #17a2b84d;transform:translateY(-2px)}.client-transfer-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.client-transfer-info{background:#17a2b814;border:1px solid #17a2b833;border-radius:8px;padding:15px}.client-transfer-info h3{border-bottom:1px solid #17a2b84d;color:#117a8b;font-size:1em;margin-bottom:12px;padding-bottom:8px}.client-transfer-info .hint{color:#6c757d;font-size:12px;font-style:italic;margin-top:8px}@media (max-width:768px){.client-transfers-section{grid-template-columns:1fr}.client-transfer-button{width:100%}}.ovex-2fa-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.ovex-2fa-modal{animation:ovexModalSlideIn .3s ease-out;background:#fff;border:2px solid #ff6b35;border-radius:12px;box-shadow:0 20px 40px #ff6b3533,0 8px 24px #00000026;max-height:90vh;max-width:480px;overflow-y:auto;padding:0;width:90%}@keyframes ovexModalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ovex-2fa-modal-header{background:linear-gradient(135deg,#ff6b35,#ff8c42);border-radius:10px 10px 0 0;color:#fff;padding:24px;text-align:center}.ovex-2fa-modal-header h3{font-size:24px;font-weight:600;margin:0 0 8px}.ovex-2fa-modal-header p{font-size:16px;margin:0;opacity:.9}.ovex-2fa-modal-content{padding:24px}.ovex-2fa-valid-notice{background:#e8f5e8;border:2px solid #4caf50;border-radius:8px;margin-bottom:20px;padding:16px;text-align:center}.ovex-2fa-timer{color:#2e7d32;font-size:18px;font-weight:600;margin-bottom:8px}.ovex-2fa-valid-notice p{color:#388e3c;font-size:14px;margin:0}.ovex-2fa-input-group{margin-bottom:20px}.ovex-2fa-input-group label{color:#333;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.ovex-2fa-input-group input{border:2px solid #ddd;border-radius:8px;box-sizing:border-box;font-family:monospace;font-size:16px;letter-spacing:4px;padding:12px 16px;text-align:center;transition:all .3s ease;width:100%}.ovex-2fa-input-group input:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b3533;outline:none}.ovex-2fa-input-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.ovex-2fa-error{background:#ffebee;border:1px solid #e57373;border-radius:8px;color:#c62828;font-size:14px;margin-bottom:20px;padding:12px 16px;text-align:center}.ovex-2fa-buttons{display:flex;gap:12px;margin-bottom:20px}.ovex-2fa-cancel-btn{background:#f8f9fa;border:2px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;padding:12px 20px;transition:all .3s ease}.ovex-2fa-cancel-btn:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.ovex-2fa-cancel-btn:disabled{cursor:not-allowed;opacity:.6}.ovex-2fa-verify-btn{background:linear-gradient(135deg,#ff6b35,#ff8c42);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:2 1;font-size:16px;font-weight:600;padding:12px 20px;transition:all .3s ease}.ovex-2fa-verify-btn:hover:not(:disabled){background:linear-gradient(135deg,#e55a2b,#e67a32);box-shadow:0 4px 12px #ff6b354d;transform:translateY(-1px)}.ovex-2fa-verify-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.ovex-2fa-info{background:#fff3e0;border:1px solid #ffcc02;border-radius:8px;font-size:14px;line-height:1.5;padding:16px}.ovex-2fa-info p{color:#ef6c00;margin:0}.ovex-2fa-info strong{color:#e65100}@media (max-width:600px){.ovex-2fa-modal{margin:20px;width:95%}.ovex-2fa-modal-header{padding:20px}.ovex-2fa-modal-header h3{font-size:20px}.ovex-2fa-modal-content{padding:20px}.ovex-2fa-buttons{flex-direction:column}.ovex-2fa-cancel-btn,.ovex-2fa-verify-btn{flex:none}}.luno-2fa-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.luno-2fa-modal{animation:lunoModalSlideIn .3s ease-out;background:#fff;border:2px solid #6f42c1;border-radius:16px;box-shadow:0 20px 40px #6f42c14d;max-width:450px;padding:30px;width:90%}@keyframes lunoModalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.luno-2fa-modal-header{border-bottom:2px solid #6f42c1;margin-bottom:25px;padding-bottom:15px;text-align:center}.luno-2fa-modal-header h3{color:#6f42c1;font-size:24px;font-weight:600;margin:0 0 10px}.luno-2fa-modal-header p{color:#666;font-size:16px;margin:0}.luno-2fa-timer{background:linear-gradient(135deg,#6f42c1,#8e6dc1);border-radius:20px;color:#fff;display:inline-block;font-size:14px;font-weight:600;margin-top:10px;padding:8px 15px}.luno-2fa-form,.luno-2fa-form-group{margin-bottom:20px}.luno-2fa-form-group label{color:#6f42c1;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.luno-2fa-input{background:#f8f6ff;border:2px solid #e1d5f0;border-radius:8px;box-sizing:border-box;color:#6f42c1;font-size:18px;font-weight:600;letter-spacing:.5em;padding:15px;text-align:center;transition:all .3s ease;width:100%}.luno-2fa-input:focus{background:#fff;border-color:#6f42c1;box-shadow:0 0 0 3px #6f42c11a;outline:none}.luno-2fa-input:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.luno-2fa-help{color:#666;display:block;font-size:12px;margin-top:5px;text-align:center}.luno-2fa-error{background:#ffe6e6;border:1px solid #ffcdd2;border-radius:6px;color:#d32f2f;font-size:14px;margin-bottom:20px;padding:12px;text-align:center}.luno-2fa-actions{display:flex;gap:15px;justify-content:space-between}.luno-2fa-cancel-btn{background:#0000;border:2px solid #6f42c1;border-radius:8px;color:#6f42c1;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px 20px;transition:all .3s ease}.luno-2fa-cancel-btn:hover:not(:disabled){background:#6f42c1;color:#fff;transform:translateY(-2px)}.luno-2fa-cancel-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.luno-2fa-verify-btn{background:linear-gradient(135deg,#6f42c1,#8e6dc1);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px 20px;transition:all .3s ease}.luno-2fa-verify-btn:hover:not(:disabled){background:linear-gradient(135deg,#5d359a,#6f42c1);box-shadow:0 4px 12px #6f42c14d;transform:translateY(-2px)}.luno-2fa-verify-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.luno-2fa-info{border-top:1px solid #e1d5f0;padding-top:15px;text-align:center}.luno-2fa-info p{color:#666;font-size:13px;margin:5px 0}.luno-2fa-info p:first-child{color:#6f42c1;font-weight:600}.luno-2fa-info p:last-child{color:#8e6dc1;font-weight:600}@media (max-width:480px){.luno-2fa-modal{margin:20px;padding:20px}.luno-2fa-modal-header h3{font-size:20px}.luno-2fa-actions{flex-direction:column}.luno-2fa-cancel-btn,.luno-2fa-verify-btn{width:100%}}.two-factor-container{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #333;border-radius:12px;box-shadow:0 4px 12px #0000004d;margin:0 auto;max-width:800px;padding:2rem}.two-factor-header{border-bottom:1px solid #333;margin-bottom:2rem;padding-bottom:1.5rem;text-align:center}.two-factor-header h2{color:#4ade80;font-size:1.8rem;font-weight:600;margin:0 0 .5rem}.two-factor-header p{color:#9ca3af;font-size:.95rem;margin:0}.loading{color:#9ca3af;font-size:1.1rem;padding:2rem}.error-message{background-color:#fef2f2}.error-message,.success-message{margin-bottom:1rem;padding:.75rem 1rem}.success-message{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#166534;font-size:.9rem}.two-factor-status{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.two-factor-status h3{color:#60a5fa;font-size:1.2rem;margin:0 0 1rem}.status-badge{font-size:.9rem;margin-bottom:.5rem;padding:.5rem 1rem}.status-badge.enabled{background-color:#10b981;color:#fff}.status-badge.disabled{background-color:#ef4444;color:#fff}.two-factor-status p{color:#9ca3af;font-size:.9rem;margin:.5rem 0 0}.two-factor-section{background:#ffffff0d;border:1px solid #374151;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.two-factor-section h3{color:#f3f4f6;font-size:1.2rem;margin:0 0 1rem}.two-factor-section h4{color:#f3f4f6;font-size:1.1rem;margin:0 0 1rem}.two-factor-section p{color:#9ca3af;line-height:1.5;margin:0 0 1rem}.qr-code-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 8px #0000001a;display:flex;justify-content:center;margin:2rem auto;min-height:240px;padding:1.5rem;width:fit-content}.qr-code-container canvas{border:2px solid #e5e7eb;border-radius:8px}.manual-entry{background:#4ade801a;border:1px solid #4ade804d;border-radius:8px;margin:2rem 0;padding:1.5rem;text-align:center}.manual-entry p{color:#f3f4f6;font-weight:500;margin-bottom:1rem}.manual-key{background:#0006;border:1px solid #4ade804d;border-radius:8px;color:#4ade80;display:block;font-family:Courier New,monospace;font-size:.9rem;letter-spacing:1px;margin:1rem auto;max-width:400px;padding:1rem;word-break:break-all}.form-group{margin-bottom:1rem}.form-group label{color:#f3f4f6;font-size:.9rem;margin-bottom:.5rem}.form-group input{background:#0000004d;border:1px solid #4b5563;border-radius:6px;color:#f3f4f6;font-size:1rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group input[type=text][maxlength="6"]{font-family:Courier New,monospace;font-size:1.2rem;letter-spacing:3px;max-width:150px;text-align:center}.btn{border-radius:6px;display:inline-block;font-size:.9rem;font-weight:500;margin-bottom:.5rem;margin-right:.5rem;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:all .2s}.btn-primary{background-color:#3b82f6}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-secondary{background-color:#6b7280}.btn-secondary:hover:not(:disabled){background-color:#4b5563}.btn-danger{background-color:#ef4444}.btn-danger:hover:not(:disabled){background-color:#dc2626}.verify-form{background:#3b82f60d;border:1px solid #3b82f633;border-radius:8px;margin-top:2rem;padding:1.5rem}.backup-codes-section{background:#f59e0b1a;border:2px solid #f59e0b;margin-top:2rem}.backup-codes{grid-gap:.75rem;background:#1f29374d;border:1px solid #374151;border-radius:8px;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:1.5rem 0;padding:1rem}.backup-code{background:#1f2937;border:2px solid #fbbf24;color:#fbbf24;font-family:Courier New,monospace;font-size:.9rem;font-weight:700;letter-spacing:1px;padding:.75rem;transition:all .2s ease}.backup-code:hover{background:#374151;border-color:#60a5fa;color:#fff}.management-buttons{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.disable-form,.regenerate-form{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;margin-top:1.5rem;padding:1.5rem}.regenerate-form{background:#3b82f61a;border:1px solid #3b82f64d}.form-actions{flex-wrap:wrap;gap:1rem;margin-top:1.5rem}@media (max-width:768px){.two-factor-container{margin:1rem;padding:1rem}.qr-code-container{margin:1rem auto}.backup-codes{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.form-actions,.management-buttons{flex-direction:column}.btn{margin-right:0;width:100%}}.market-alerts{animation:fadeIn .5s ease-out;margin:0 auto;max-width:1600px;padding:15px 25px}.alerts-header{margin-bottom:20px;text-align:center}.alerts-header h2{color:#1f2937;font-size:1.5rem;font-weight:700;margin-bottom:5px}.alerts-header p{color:#6b7280;font-size:.9rem}.alert-status{border-radius:8px;font-weight:500;margin-bottom:20px;padding:12px 20px;text-align:center}.alert-status.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.alert-status.error{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b}.premium-display{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:15px}.premium-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto;max-width:800px}.premium-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:8px;padding:15px;text-align:center;transition:all .2s ease}.premium-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.premium-card h4{color:#1e293b;font-size:.9rem;font-weight:600;margin-bottom:8px}.premium-value{font-size:1.5rem;font-weight:700;margin-bottom:5px}.premium-value.positive{color:#059669}.premium-value.negative{color:#dc2626}.premium-card small{color:#64748b;font-size:.75rem}.create-alert-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.create-alert-section h3{color:#1f2937;font-size:1.1rem;font-weight:600;margin-bottom:12px}.alert-form{display:flex;flex-direction:column;gap:15px}.alert-form.compact{gap:10px}.form-row{grid-gap:15px;gap:15px;grid-template-columns:1fr 1fr}.form-grid{grid-gap:15px;align-items:start;display:grid;gap:15px;grid-template-columns:1fr 1.5fr 1fr 1fr .8fr}.form-group label{font-size:.8rem;margin-bottom:5px}.form-group input,.form-group select{background:#fff;border:1px solid #d1d5db;font-size:.9rem;padding:8px 12px;transition:all .2s ease}.current-price{font-size:.75rem;font-weight:500;margin-top:5px}.price-display{background:#ecfdf5;color:#059669}.price-display,.price-loading{border-radius:4px;display:inline-block;padding:3px 8px}.price-loading{background:#fef3c7;color:#d97706}.price-error{background:#fee2e2;border-radius:4px;color:#dc2626;display:inline-block;padding:3px 8px}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group small{color:#6b7280;font-size:.75rem;margin-top:6px}.create-alert-btn{align-self:flex-start;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:5px;padding:10px 20px;transition:all .2s ease}.create-alert-btn.compact{font-size:.85rem;padding:8px 16px}.create-alert-btn:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.create-alert-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.alerts-list-section h3{color:#1f2937;font-size:1.5rem;font-weight:600;margin-bottom:20px}.alerts-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.alerts-list-header h3{margin:0}.bulk-actions{display:flex;gap:8px}.bulk-action-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;display:flex;font-size:.8rem;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s ease}.bulk-action-btn:hover:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.bulk-action-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.bulk-action-btn.resync-all-btn{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.bulk-action-btn.resync-all-btn:hover:not(:disabled){background:#dbeafe;border-color:#93c5fd}.bulk-action-btn.delete-all-btn{background:#fef2f2;border-color:#fecaca;color:#dc2626}.bulk-action-btn.delete-all-btn:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5}.no-alerts{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:60px 20px;text-align:center}.no-alerts p{color:#6b7280;font-size:1.1rem;margin-bottom:10px}.alerts-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #00000014;cursor:grab;overflow-x:auto;overflow-y:visible;scrollbar-color:#cbd5e1 #f1f5f9;scrollbar-width:thin;-webkit-user-select:none;user-select:none}.alerts-table-container::-webkit-scrollbar{height:8px}.alerts-table-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.alerts-table-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.alerts-table-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.alerts-table-container:active{cursor:grabbing}.alerts-table-container.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.alerts-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden;width:100%}.alerts-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e5e7eb;color:#374151;font-size:.8rem;font-weight:600;padding:12px 8px;text-align:center;white-space:nowrap}.alerts-table th.sortable{cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.alerts-table th.sortable:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#1f2937;transform:translateY(-1px)}.alerts-table th.actions-header{min-width:130px;text-align:left;width:130px}.alerts-table td{border-bottom:1px solid #f3f4f6;font-size:.85rem;padding:12px 8px}.alerts-table tr:hover{background-color:#f9fafb}.alerts-table tr.inactive{opacity:.6}.alerts-table tr.inactive:hover{background-color:#f3f4f6}.username{color:#1f2937;font-weight:600;min-width:100px}.alert-type,.type-badge{text-align:center}.type-badge{border-radius:12px;font-size:.7rem;font-weight:600;letter-spacing:.5px;min-width:70px;padding:4px 8px;text-transform:uppercase}.type-badge.price{background:#dbeafe;border:1px solid #bfdbfe;color:#1d4ed8}.type-badge.usdt-premium{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.type-badge.usdc-premium{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.currency-pair{color:#1f2937}.currency-pair,.target-price{font-weight:600;min-width:100px}.target-price{color:#059669}.current-price{min-width:100px}.current-price .price-value{color:#6b7280}.current-price .price-loading{color:#d97706}.direction.higher{color:#059669;font-weight:600}.direction.lower{color:#dc2626;font-weight:600}.adjustment{color:#6b7280;font-weight:500}.status{text-align:center}.created,.last-triggered{color:#6b7280;font-size:.8rem;min-width:100px}.trigger-count{color:#059669;font-weight:600;text-align:center}.actions{min-width:130px;width:130px}.action-buttons{flex-wrap:nowrap;gap:6px;justify-content:flex-start;min-width:120px}.action-btn{align-items:center;background:#f3f4f6;border:none;color:#374151;display:flex;height:32px;justify-content:center;min-width:32px;padding:6px 8px;transition:all .2s ease}.action-btn:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.action-btn.toggle-btn.active{background:#d1fae5;color:#065f46}.action-btn.toggle-btn.active:hover{background:#a7f3d0}.action-btn.toggle-btn.inactive{background:#fee2e2;color:#991b1b}.action-btn.toggle-btn.inactive:hover{background:#fecaca}.action-btn.resync-btn{background:#dbeafe;color:#1d4ed8}.action-btn.resync-btn:hover{background:#bfdbfe}.action-btn.delete-btn{background:#fee2e2;color:#991b1b}.action-btn.delete-btn:hover{background:#fecaca}.alert-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;transition:all .2s ease}.alert-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.alert-card.inactive{background:#f9fafb;opacity:.7}.alert-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.alert-header h4{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.status-badge{border-radius:20px;font-size:.75rem;letter-spacing:.025em;padding:4px 12px}.status-badge.active{background-color:#d1fae5}.status-badge.inactive{background-color:#f3f4f6;color:#6b7280}.alert-details{margin-bottom:16px}.detail-row{align-items:center;margin-bottom:8px}.detail-row .label{font-size:.875rem;font-weight:500}.detail-row .value{font-size:.875rem;font-weight:600}.detail-row .value.direction.higher{color:#059669}.detail-row .value.direction.lower{color:#dc2626}.alert-actions{border-top:1px solid #e5e7eb;display:flex;gap:8px;margin-top:16px;padding-top:12px}.delete-btn,.toggle-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.toggle-btn.active{background-color:#fbbf24;color:#92400e}.toggle-btn.active:hover{background-color:#f59e0b}.toggle-btn.inactive{background-color:#10b981;color:#fff}.toggle-btn.inactive:hover{background-color:#059669}.delete-btn{background-color:#fee2e2;color:#dc2626}.delete-btn:hover{background-color:#fecaca}@media (max-width:1200px){.market-alerts{padding:15px 20px}.form-grid{gap:12px;grid-template-columns:1fr 1fr 1fr}.premium-cards{gap:15px;grid-template-columns:1fr 1fr}}@media (max-width:768px){.market-alerts{padding:10px}.form-row{gap:12px}.form-grid,.form-row{grid-template-columns:1fr}.form-grid{gap:10px}.premium-cards{gap:12px;grid-template-columns:1fr}.alerts-table-container{overflow-x:auto}.alerts-table{font-size:.8rem;min-width:900px}.alerts-table td,.alerts-table th{padding:8px 6px}.create-alert-section{padding:20px}.alerts-header h2{font-size:1.75rem}.actions{min-width:100px;width:100px}.action-buttons{flex-direction:row;flex-wrap:wrap;gap:2px}.action-btn{font-size:.7rem;height:24px;min-width:24px}}@media (max-width:480px){.market-alerts{padding:10px}.alert-card,.create-alert-section{padding:15px}.alerts-header h2{font-size:1.5rem}.form-group input,.form-group select{padding:10px 12px}.create-alert-btn{align-self:stretch;padding:14px 24px}.actions{min-width:90px;width:90px}.action-buttons{gap:1px;min-width:85px}.action-btn{font-size:.6rem;height:20px;min-width:20px}}.create-alert-btn:disabled{position:relative}.create-alert-btn:disabled:after{animation:button-loading-spinner 1s ease infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;content:"";height:16px;margin:auto;position:absolute;width:16px}@keyframes button-loading-spinner{0%{transform:rotate(0turn)}to{transform:rotate(1turn)}}.transaction-analytics{background:#0a0e1a;box-sizing:border-box;color:#e1e5eb;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.analytics-header{margin-bottom:30px;text-align:center}.analytics-header h2{color:#00d4ff;font-size:2.2rem;font-weight:600;margin-bottom:15px}.stats-summary{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin-top:15px}.stat{background:linear-gradient(135deg,#1a2332,#2a3441);border:1px solid #34495e;border-radius:10px;font-size:.9rem;padding:10px 20px;white-space:nowrap}.sync-controls{margin-top:20px;text-align:center}.control-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.sync-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);border:none;border-radius:10px;box-shadow:0 4px 12px #27ae604d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.sync-btn:hover:not(:disabled){background:linear-gradient(135deg,#229954,#27ae60);box-shadow:0 6px 16px #27ae6066;transform:translateY(-2px)}.sync-btn:disabled{box-shadow:0 4px 12px #27ae6033;cursor:not-allowed;opacity:.6;transform:none}.sync-all-btn{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:10px;box-shadow:0 4px 12px #9b59b64d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.sync-all-btn:hover:not(:disabled){background:linear-gradient(135deg,#8e44ad,#7d3c98);box-shadow:0 6px 16px #9b59b666;transform:translateY(-2px)}.sync-all-btn:disabled{box-shadow:0 4px 12px #9b59b633;cursor:not-allowed;opacity:.6;transform:none}.duplicate-check-btn{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:10px;box-shadow:0 4px 12px #3498db4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.duplicate-check-btn:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#1f4e79);box-shadow:0 6px 16px #3498db66;transform:translateY(-2px)}.duplicate-check-btn:disabled{box-shadow:0 4px 12px #3498db33;cursor:not-allowed;opacity:.6;transform:none}.sync-result{border-radius:8px;font-weight:500;margin-left:auto;margin-right:auto;margin-top:15px;max-width:600px;padding:12px 20px;text-align:center}.sync-result.success{background:linear-gradient(135deg,#27ae60,#2ecc71);border:1px solid #27ae60;color:#fff}.sync-result.error{background:linear-gradient(135deg,#e74c3c,#c0392b);border:1px solid #e74c3c;color:#fff}.sync-result.progress{animation:pulse 2s infinite;background:linear-gradient(135deg,#3498db,#2980b9);border:1px solid #3498db;color:#fff}.sync-progress{text-align:center}.progress-header{font-size:1.1rem;font-weight:600;margin-bottom:12px}.progress-bar-container{align-items:center;display:flex;gap:10px;margin:15px 0}.progress-bar{background:#34495e4d;border:1px solid #34495e;border-radius:10px;flex:1 1;height:20px}.progress-fill{background:linear-gradient(90deg,#3498db,#2ecc71 50%,#f39c12);border-radius:10px}.progress-percentage{color:#00d4ff;font-size:.9rem;font-weight:600;min-width:40px}.latest-dates-display{background:#34495e33;margin:12px 0;padding:10px}.latest-date-item{font-size:.9rem;margin:4px 0;text-align:left}.latest-date-item strong{color:#f39c12}.progress-details{font-size:.95rem;margin-bottom:12px;opacity:.9}.progress-line{font-family:monospace;font-size:.9rem;margin:2px 0;text-align:left}.new-transactions-counter{background:linear-gradient(135deg,#27ae60,#2ecc71);border-radius:20px;color:#fff;display:inline-block;font-size:.9rem;font-weight:600;margin:10px 0;padding:8px 15px}.progress-spinner{animation:rotate 1s linear infinite;font-size:1.5rem;margin-top:10px}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.completion-time{font-size:.9rem;font-style:italic;margin-top:8px;opacity:.8}.all-sync-result{text-align:left}.sync-details{background:#ffffff1a;border-radius:8px;font-size:.95rem;margin-top:12px;padding:15px}.account-sync-result{align-items:center;background:#ffffff0d;border-radius:6px;display:flex;gap:10px;margin-bottom:8px;padding:8px 12px}.total-sync-result{background:#ffffff26;border:1px solid #fff3;border-radius:6px;font-weight:600;margin-top:12px;padding:10px 15px}.error-inline{color:#ff6b6b;font-size:.9rem;font-weight:500}.duration{color:#b0b0b0;font-size:.9rem;font-weight:400}.duplicate-result{margin-top:15px}.annual-stats-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.annual-year-input{background:#0b1724;border:1px solid #34495e;border-radius:4px;color:#ecf0f1;padding:4px 8px;width:90px}.annual-stats-btn{background:#1abc9c;border:none;border-radius:6px;box-shadow:0 2px 4px #0000004d;color:#ecf0f1;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:background .2s ease,transform .08s ease}.annual-stats-btn:hover:not(:disabled){background:#16a085;transform:translateY(-1px)}.annual-stats-btn:disabled{cursor:not-allowed;opacity:.6}.annual-stats-download-btn{background:#6366f1}.annual-stats-download-btn:hover:not(:disabled){background:#4f46e5}.annual-stats-summary{color:#bdc3c7;font-size:12px}.annual-stats-section{margin-top:25px}.annual-stats-table{background:#111827;border:1px solid #1f2937;border-radius:8px;margin-top:10px;overflow:hidden}.annual-stats-row,.annual-stats-table .table-header{grid-gap:10px;display:grid;font-size:.85rem;gap:10px;grid-template-columns:.8fr 1fr 1fr 1.2fr 1fr 1.2fr 1fr 1.2fr;padding:10px 15px}.annual-stats-table .table-header{background:#0f172a;color:#9ca3af;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.annual-stats-row:nth-child(2n){background:#020617}.annual-stats-row:nth-child(odd){background:#030712}.annual-stats-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duplicate-status{align-items:center;border-radius:8px;display:flex;flex-wrap:wrap;font-weight:500;gap:15px;justify-content:center;margin-left:auto;margin-right:auto;max-width:700px;padding:12px 20px;text-align:center}.duplicate-status.success{background:linear-gradient(135deg,#27ae60,#2ecc71);border:1px solid #27ae60;color:#fff}.duplicate-status.warning{background:linear-gradient(135deg,#f39c12,#e67e22);border:1px solid #f39c12;color:#fff}.remove-duplicates-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:6px;box-shadow:0 2px 8px #e74c3c4d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s ease}.remove-duplicates-btn:hover:not(:disabled){background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c66;transform:translateY(-1px)}.remove-duplicates-btn:disabled{box-shadow:0 2px 8px #e74c3c33;cursor:not-allowed;opacity:.6;transform:none}.duplicate-stats{font-size:.85rem;font-weight:400;margin-top:8px;opacity:.9}.all-duplicate-result{background:#ffffff0d;border-radius:8px;margin-top:10px;padding:15px;text-align:left}.all-duplicate-result h4{color:#00d4ff;font-size:1.1rem;margin-bottom:15px}.duplicate-details{margin-bottom:15px}.account-duplicate-result{align-items:center;background:#ffffff0d;border-radius:6px;display:flex;gap:10px;margin-bottom:10px;padding:10px 15px}.duplicate-count{color:#f39c12;font-size:.9rem;font-weight:500}.duplicate-actions{background:#f39c121a;border:1px solid #f39c124d;border-radius:8px;margin-top:15px;padding:15px}.duplicate-actions p{color:#f39c12;font-weight:500;margin-bottom:12px}.duplicate-actions .remove-duplicates-btn{margin-bottom:8px;margin-right:10px}.source-breakdown{background:#ffffff1a;border-radius:6px;font-size:.9rem;margin-top:12px;padding:10px 15px;text-align:left}.source-breakdown strong{color:#00d4ff;display:block;margin-bottom:8px}.source-stat{background:#0003;border-radius:4px;display:inline-block;font-family:Courier New,monospace;font-size:.85rem;margin-bottom:4px;margin-right:20px;padding:4px 8px}.analytics-section{background:linear-gradient(135deg,#1a2332,#2a3441);border:1px solid #34495e;border-radius:15px;box-shadow:0 8px 20px #0000004d;margin-bottom:30px;padding:25px}.analytics-section h3{border-bottom:2px solid #34495e;color:#00d4ff;font-size:1.5rem;margin-bottom:20px;padding-bottom:10px}.date-range-selector,.date-selector{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:25px}.date-range-selector label,.date-selector label{color:#bdc3c7;display:flex;flex-direction:column;font-weight:500;gap:5px}.date-range-selector input,.date-selector input{background:#2c3e50;border:1px solid #34495e;border-radius:8px;color:#ecf0f1;font-size:1rem;min-width:150px;padding:10px 15px}.date-range-selector input:focus,.date-selector input:focus{border-color:#00d4ff;box-shadow:0 0 0 2px #00d4ff33;outline:none}.refresh-btn{align-self:flex-end;background:linear-gradient(135deg,#00d4ff,#09c);border-radius:8px;height:fit-content;padding:10px 20px;transition:all .3s ease}.refresh-btn:hover:not(:disabled){background:linear-gradient(135deg,#09c,#007aa3);box-shadow:0 4px 12px #00d4ff4d}.refresh-btn:disabled{transform:none}.download-csv-btn{align-items:center;background:linear-gradient(135deg,#27ae60,#2ecc71);border:none;border-radius:6px;box-shadow:0 2px 8px #27ae604d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .3s ease}.download-csv-btn:hover:not(:disabled){background:linear-gradient(135deg,#229954,#27ae60);box-shadow:0 4px 12px #27ae6066;transform:translateY(-1px)}.download-csv-btn:disabled{background:#4a5568;box-shadow:none;color:#9ca3af;cursor:not-allowed;transform:none}.error-message{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;padding:15px}.no-data{background:#34495e4d;border:1px dashed #34495e;border-radius:10px;color:#7f8c8d}.trades-summary h4{color:#f39c12;font-size:1.3rem;margin-bottom:20px}.reward-count{background:#9b59b6}.interest-count,.reward-count{border-radius:20px;color:#fff;font-size:.85rem;font-weight:500;padding:4px 12px}.interest-count{background:#e67e22}.withdrawal-count{background:#95a5a633;border-radius:4px;color:#bdc3c7;font-size:.8rem;font-weight:500;padding:4px 8px}.interest-section,.reward-section,.withdrawal-section{background:#0003;border-left:4px solid;border-radius:8px;padding:15px}.reward-section{background:#9b59b61a;border-left-color:#9b59b6}.interest-section{background:#e67e221a;border-left-color:#e67e22}.withdrawal-section{background:#95a5a61a;border-left-color:#95a5a6}.interest-section h6,.reward-section h6,.withdrawal-section h6{font-size:1rem;font-weight:600;margin:0 0 10px}.reward-section h6{color:#9b59b6}.interest-section h6{color:#e67e22}.withdrawal-section h6{color:#95a5a6}.trade-metrics{grid-gap:8px;display:grid;gap:8px}.daily-summary-section{background:linear-gradient(135deg,#1a2332,#2a3441);border:1px solid #34495e;border-radius:15px;box-shadow:0 8px 20px #0000004d;margin-bottom:30px;padding:25px}.daily-summary-section h5{border-bottom:2px solid #34495e;color:#00d4ff;font-size:1.4rem;font-weight:600;margin:0 0 20px;padding-bottom:15px;text-align:center}.summary-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.summary-card{background:linear-gradient(135deg,#2c3e50,#34495e);border:1px solid #4a5f7a;border-left:4px solid;border-radius:12px;padding:20px;transition:all .3s ease}.summary-card:hover{box-shadow:0 6px 20px #0006;transform:translateY(-2px)}.reward-summary{border-left-color:#9b59b6}.interest-summary{border-left-color:#e67e22}.withdrawal-summary{border-left-color:#95a5a6}.summary-card h6{align-items:center;display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0 0 15px}.reward-summary h6{color:#bb7bd6}.interest-summary h6{color:#f39c12}.withdrawal-summary h6{color:#bdc3c7}.summary-items{display:flex;flex-direction:column;gap:12px}.summary-item{background:#ffffff14;border:1px solid #ffffff1a;font-size:.95rem;min-height:40px;overflow:hidden;padding:12px 16px;transition:all .2s ease}.summary-item:hover{background:#ffffff1f;border-color:#fff3}.daily-summary-section .summary-item .currency{color:#ecf0f1!important;flex-shrink:0;font-size:1rem;font-weight:700!important;min-width:70px}.transaction-analytics .daily-summary-section .summary-item .currency{color:#ecf0f1!important}.summary-item .amount{flex:1 1;font-size:1rem;font-weight:700;margin-right:12px;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.summary-item .amount.positive{color:#2ecc71}.summary-item .amount.negative{color:#e74c3c}.daily-summary-section .summary-item .count{background:#bdc3c733!important;border:1px solid #bdc3c74d;border-radius:8px;color:#ecf0f1!important;flex-shrink:0;font-size:.8rem!important;font-style:normal;font-weight:500;max-width:120px;overflow:hidden;padding:3px 6px;text-overflow:ellipsis;white-space:nowrap}.transaction-analytics .daily-summary-section .summary-item .count{color:#ecf0f1!important}.sells-summary h4{color:#f39c12;font-size:1.3rem;margin-bottom:20px}.sells-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.currency-sell-card{background:linear-gradient(135deg,#2c3e50,#34495e);border:1px solid #4a5f7a;border-radius:12px;padding:20px;transition:all .3s ease}.currency-sell-card:hover{box-shadow:0 6px 16px #0006;transform:translateY(-2px)}.currency-header{align-items:center;border-bottom:1px solid #4a5f7a;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.currency-header h5{color:#00d4ff;font-size:1.2rem;font-weight:600;margin:0}.sell-count{background:#f39c12;border-radius:20px;color:#fff;font-size:.85rem;font-weight:500;padding:4px 12px}.sell-metrics{grid-gap:12px;display:grid;gap:12px}.metric{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.metric label{color:#95a5a6;font-size:.9rem;font-weight:500}.metric span{color:#ecf0f1;font-weight:600;text-align:right}.metric .positive{color:#2ecc71}.metric .negative{color:#e74c3c}.price-highlight{color:#00d4ff!important;font-size:1.1rem!important;font-weight:700!important}.metric .price-highlight{color:#00d4ff;font-size:1.1rem;font-weight:700}.analytics-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.analytics-card{background:linear-gradient(135deg,#2c3e50,#34495e);border:1px solid #4a5f7a;border-radius:12px;padding:20px}.analytics-card h4{border-bottom:1px solid #4a5f7a;color:#00d4ff;font-size:1.1rem;margin-bottom:15px;padding-bottom:8px}.category-list,.currency-list,.trading-list{grid-gap:10px;display:grid;gap:10px}.category-item,.currency-item,.trading-item{grid-gap:15px;align-items:center;background:#34495e4d;border-radius:8px;display:grid;gap:15px;grid-template-columns:1fr auto auto;padding:10px;transition:background .3s ease}.trading-item{grid-template-columns:1fr auto auto auto}.category-item:hover,.currency-item:hover,.trading-item:hover{background:#34495e99}.category-name,.currency-name,.trading-pair{color:#ecf0f1;font-weight:500}.category-count,.currency-count,.trading-count{color:#f39c12;font-weight:600;text-align:right}.category-value,.currency-value,.trading-value{color:#95a5a6;font-size:.9rem;text-align:right}.trading-avg-price{color:#00d4ff;font-size:.9rem;text-align:right}.transactions-table{background:linear-gradient(135deg,#2c3e50,#34495e);border:1px solid #4a5f7a;border-radius:12px;overflow:hidden}.table-header{background:linear-gradient(135deg,#34495e,#4a5f7a);border-bottom:2px solid #4a5f7a;color:#00d4ff;font-size:.9rem;font-weight:600;padding:15px 20px;text-align:center}.table-header,.transaction-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1.8fr 2fr 1fr 1.8fr 1.2fr 1fr}.transaction-row{align-items:center;border-bottom:1px solid #4a5f7a4d;padding:12px 20px;transition:background .3s ease}.transaction-row:hover{background:#34495e66}.tx-type{align-items:center;color:#ecf0f1;display:flex;font-weight:500;justify-content:center}.tx-category{border-radius:4px;color:#fff;font-size:.85rem;font-weight:600;padding:3px 6px;text-align:center}.tx-category.trade{background:#3498db}.tx-category.reward{background:#9b59b6}.tx-category.fee{background:#e67e22}.tx-category.transfer{background:#95a5a6}.tx-details{color:#bdc3c7;font-size:.9rem;font-weight:500;text-align:center}.tx-account,.tx-amount.neutral{color:#95a5a6}.tx-account{font-size:.85rem;text-align:center}.non-trade-section{background:linear-gradient(135deg,#1a2332,#2a3441);border:1px solid #34495e;border-radius:15px;box-shadow:0 8px 20px #0000004d;margin-bottom:30px;padding:25px}.non-trade-header{margin-bottom:25px}.non-trade-header h4{color:#00d4ff;font-size:1.3rem;font-weight:600;margin:0 0 20px;text-align:center}.non-trade-controls{background:#34495e4d;border-radius:10px;margin-bottom:20px;padding:20px;position:relative}.non-trade-filters{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.non-trade-filters label{color:#ecf0f1;display:flex;flex-direction:column;font-size:.9rem;font-weight:500;gap:8px;min-width:120px}.non-trade-filters select{background:#2c3e50;border:1px solid #4a5f7a;border-radius:6px;color:#ecf0f1;cursor:pointer;font-size:.9rem;padding:8px 12px}.non-trade-filters select:focus{border-color:#00d4ff;outline:none}.non-trade-filters select option{background:#2c3e50;border:none;color:#ecf0f1;padding:8px 12px}.non-trade-filters select option:hover{background:#34495e;color:#fff}.non-trade-filters select option:checked,.non-trade-filters select option:selected{background:#00d4ff;color:#1a2332}.toggle-button,.toggle-container{align-items:center;display:flex}.toggle-button{background:#00d4ff1a;border:1px solid #00d4ff;border-radius:6px;color:#ecf0f1;cursor:pointer;font-size:.9rem;font-weight:500;gap:8px;padding:8px 12px;transition:all .2s ease}.toggle-button:hover{background:#00d4ff33;border-color:#00d4ff}.toggle-icon{font-size:1rem;line-height:1}.toggle-text{-webkit-user-select:none;user-select:none}.non-trade-details{margin-top:20px}.non-trade-details h6{border-bottom:1px solid #34495e;font-size:1.1rem;margin:0 0 15px;padding-bottom:10px}.non-trade-details h6,.non-trade-section h5{color:#00d4ff;font-weight:600;text-align:center}.non-trade-section h5{border-bottom:2px solid #34495e;font-size:1.4rem;margin:0 0 20px;padding-bottom:15px}.non-trade-table{background:linear-gradient(135deg,#2c3e50,#34495e);border:1px solid #4a5f7a;border-radius:12px;margin-bottom:20px;overflow:hidden}.non-trade-table .table-header{background:linear-gradient(135deg,#34495e,#4a5f7a);border-bottom:2px solid #4a5f7a;color:#00d4ff;font-weight:600;padding:15px 20px;text-align:center}.non-trade-row,.non-trade-table .table-header{grid-gap:15px;display:grid;font-size:.9rem;gap:15px;grid-template-columns:1.5fr 1.2fr 1fr 1.3fr 1fr 2fr}.non-trade-row{align-items:center;border-bottom:1px solid #4a5f7a4d;padding:12px 20px;transition:background .3s ease}.non-trade-row:hover{background:#34495e66}.non-trade-row:last-child{border-bottom:none}.tx-time{color:#95a5a6;font-size:.85rem;font-weight:500}.tx-type{border-radius:4px;color:#fff;font-size:.9rem;font-weight:600;padding:4px 8px;text-align:center}.tx-type.reward{background:#9b59b6}.tx-type.fee{background:#e67e22}.tx-type.transfer{background:#95a5a6}.tx-currency{color:#f39c12;font-weight:600;text-align:center}.tx-amount{font-size:.95rem;font-weight:600;text-align:right}.tx-amount.positive{color:#2ecc71}.tx-amount.negative{color:#e74c3c}.tx-subaccount{color:#9b59b6;font-size:.85rem;font-weight:500;text-align:center}.tx-description{color:#bdc3c7;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.non-trade-summary{background:#0003;border:1px solid #34495e;border-radius:10px;padding:20px}.non-trade-summary h6{color:#00d4ff;font-size:1.1rem;font-weight:600;margin:0 0 15px;text-align:center}.summary-table{background:linear-gradient(135deg,#2c3e50,#34495e);border:1px solid #4a5f7a;border-radius:12px;margin-bottom:20px;overflow:hidden}.summary-table-header{background:linear-gradient(135deg,#34495e,#4a5f7a);border-bottom:2px solid #4a5f7a;color:#00d4ff;font-weight:600;padding:15px 20px;text-align:center}.summary-table-header,.summary-table-row{grid-gap:15px;display:grid;font-size:.9rem;gap:15px;grid-template-columns:1.5fr 1fr 1fr .8fr 1.5fr}.summary-table-row{align-items:center;border-bottom:1px solid #4a5f7a4d;padding:12px 20px;transition:background .3s ease}.summary-table-row:hover{background:#34495e66}.summary-table-row:last-child{border-bottom:none}.summary-type{border-radius:4px;color:#fff;font-size:.9rem;font-weight:600;padding:4px 8px;text-align:center}.summary-type.borrow-interest{background:#e67e22}.summary-type.maker-reward{background:#9b59b6}.summary-type.deposit{background:#2ecc71}.summary-type.transfer{background:#95a5a6}.summary-type.withdrawal{background:#e74c3c}.summary-currency{color:#f39c12;font-weight:600;text-align:center}.summary-account{color:#9b59b6;font-weight:600}.summary-account,.summary-count{font-size:.85rem;text-align:center}.summary-count{color:#95a5a6;font-weight:500}.summary-amount{font-size:.95rem;font-weight:600;text-align:right}.summary-amount.positive{color:#2ecc71}.summary-amount.negative{color:#e74c3c}@media (max-width:768px){.transaction-analytics{max-width:100%;padding:10px;width:100%}.analytics-header h2{font-size:1.5rem}.stats-summary{gap:10px}.stat{font-size:.8rem;padding:8px 12px}.analytics-grid,.sells-grid{grid-template-columns:1fr}.date-range-selector,.date-selector{align-items:stretch;flex-direction:column}.non-trade-table .non-trade-row,.non-trade-table .table-header,.transactions-table .table-header,.transactions-table .transaction-row{gap:5px;grid-template-columns:1fr;text-align:left}.table-header span,.transaction-row span{padding:5px 0}.table-header span:before{content:attr(data-label);font-weight:700;margin-right:10px}.analytics-card,.currency-sell-card{padding:15px}.daily-breakdown-section{padding:15px 10px;width:100%}.analytics-section{padding:15px 10px}}.date-selector{align-items:end;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.date-selector label{color:#8892b0;display:flex;flex-direction:column;font-size:14px;font-weight:600}.date-selector input,.date-selector select{background:#1e2633;border:1px solid #424b5a;border-radius:6px;color:#ccd6f6;font-size:14px;margin-top:5px;min-width:120px;padding:8px 12px}.date-selector select{min-width:200px}.date-selector input:focus,.date-selector select:focus{border-color:#64ffda;box-shadow:0 0 0 2px #64ffda33;outline:none}.sub-account-badge{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:1px solid #8e44ad;border-radius:12px;box-shadow:0 2px 6px #8e44ad4d;color:#fff;display:inline-block;font-size:.75rem;font-weight:500;margin-left:10px;padding:4px 10px}.currency-header h5{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.sub-account-inline{color:#9b59b6;font-size:.8em;font-weight:400;margin-left:4px;opacity:.9}.analytics-controls{margin-bottom:30px}.luno-controls{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:1.5fr .8fr auto auto auto;margin-bottom:14px}.luno-controls .control{display:flex;flex-direction:column;gap:6px}.luno-controls label{color:#8892b0;font-size:13px;font-weight:600}.luno-controls .control input[type=date],.luno-controls .control input[type=text],.luno-controls .control select{background:#1e2633;border:1px solid #424b5a;border-radius:6px;box-sizing:border-box;color:#ccd6f6;font-size:14px;height:38px;line-height:20px;max-height:38px;min-height:38px;padding:8px 10px}.luno-controls .control input[type=date]::-webkit-datetime-edit,.luno-controls .control input[type=date]::-webkit-datetime-edit-fields-wrapper{margin:0;padding:0}.luno-controls .control input[type=date]::-webkit-date-and-time-value{text-align:left}.luno-controls .control input[type=date]::-webkit-calendar-picker-indicator{margin:0;padding:0}.date-compact,.input-compact,.select-compact{background:#1e2633;border:1px solid #424b5a;border-radius:6px;color:#ccd6f6;font-size:14px;padding:8px 10px}.actions-group{align-items:center;display:flex;gap:10px}@media (max-width:900px){.luno-controls{grid-template-columns:1fr}}.analytics-filters{align-items:end;display:flex;flex-wrap:wrap;gap:15px;margin-top:15px}.analytics-filters label{color:#8892b0;display:flex;flex-direction:column;font-size:14px;font-weight:600;min-width:140px}.analytics-filters select{background:#1e2633;border:1px solid #424b5a;border-radius:6px;color:#ccd6f6;font-size:14px;margin-top:5px;padding:8px 12px}.analytics-filters select:focus{border-color:#64ffda;box-shadow:0 0 0 2px #64ffda33;outline:none}.daily-breakdown-section{margin-bottom:30px}.daily-breakdown-section h4{color:#00d4ff;font-size:1.4rem;font-weight:600;margin-bottom:20px}.daily-breakdown-table{-webkit-overflow-scrolling:touch;background:linear-gradient(135deg,#2c3e50,#34495e);border:1px solid #4a5f7a;border-radius:12px;overflow-x:auto;width:100%}.daily-breakdown-table .table-header{grid-gap:10px;background:linear-gradient(135deg,#34495e,#4a5f7a);border-bottom:2px solid #4a5f7a;color:#00d4ff;display:grid;font-size:.85rem;font-weight:600;gap:10px;padding:10px 15px;text-align:center}.valr-breakdown-table .daily-breakdown-row,.valr-breakdown-table .table-header{grid-template-columns:1fr .9fr 1.2fr .8fr 1.1fr 1fr 1.5fr 1.2fr .7fr .7fr .7fr}.luno-breakdown-table .daily-breakdown-row,.luno-breakdown-table .table-header{grid-template-columns:1fr .9fr .8fr 1.1fr .8fr 1fr .9fr .9fr 1fr .7fr .7fr .7fr}.luno-range-totals-table .daily-breakdown-row,.luno-range-totals-table .table-header{grid-template-columns:1fr .9fr 1.2fr .8fr 1fr .9fr .9fr 1fr .7fr}.valr-range-breakdown-table .daily-breakdown-row,.valr-range-breakdown-table .table-header{grid-template-columns:1fr .9fr .7fr 1.1fr .7fr 1fr .9fr .9fr 1fr .9fr .6fr .6fr .6fr}.bitstamp-breakdown-table .daily-breakdown-row,.bitstamp-breakdown-table .table-header{grid-template-columns:1fr .6fr 1.1fr 1.1fr .9fr .5fr .8fr .8fr .6fr .4fr .4fr .4fr}.bitstamp-daily-breakdown-table .daily-breakdown-row,.bitstamp-daily-breakdown-table .table-header{grid-template-columns:1fr 1fr .7fr 1.1fr .9fr .6fr .7fr .4fr .4fr .4fr}.daily-breakdown-row{grid-gap:10px;align-items:center;border-bottom:1px solid #4a5f7a4d;display:grid;font-size:.85rem;gap:10px;padding:10px 15px;transition:background .3s ease}.daily-breakdown-row span,.daily-breakdown-table .table-header span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-breakdown-row:hover{background:#34495e66}.daily-breakdown-row:last-child{border-bottom:none}.daily-breakdown-row[data-date-group=even]{background:#34495e80}.daily-breakdown-row[data-date-group=odd]{background:#222f3e66}.daily-breakdown-row[data-date-group=even]:hover{background:#40556a99}.daily-breakdown-row[data-date-group=odd]:hover{background:#34495e99}.breakdown-date{color:#95a5a6;font-size:.85rem;font-weight:500}.breakdown-currency{color:#f39c12;font-weight:600;text-align:center}.breakdown-side{border-radius:4px;font-size:.85rem;font-weight:600;padding:3px 8px;text-align:center}.breakdown-side.buy{background:#27ae60;color:#fff}.breakdown-side.sell{background:#e74c3c;color:#fff}.breakdown-side.net_buy{background:#27ae60}.breakdown-side.net_buy,.breakdown-side.net_sell{border:2px solid #f39c12;color:#fff;position:relative}.breakdown-side.net_sell{background:#e74c3c}.breakdown-side.net_neutral{background:#95a5a6;border:2px solid #f39c12;color:#fff;position:relative}.breakdown-account{color:#9b59b6;font-size:.85rem;font-weight:500;text-align:center}.breakdown-count{color:#95a5a6;font-weight:500;text-align:center}.breakdown-volume{color:#2ecc71;font-weight:600;text-align:center}.breakdown-avg-price{color:#00d4ff;font-weight:600;text-align:center}.breakdown-price{color:#00d4ff;font-weight:500;text-align:center}.breakdown-pair{color:#f39c12;font-weight:600;text-align:left}.breakdown-price-range{color:#95a5a6;font-size:.8rem;text-align:center}.breakdown-fees{font-size:.75rem;font-weight:600;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.breakdown-fees.rebate{color:#2ecc71}.breakdown-fees.fee{color:#e74c3c}.breakdown-total-value{color:#f39c12;font-weight:500;text-align:center}.breakdown-clipboard{padding:0;text-align:center}.clipboard-btn{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:inline-flex;font-size:14px;height:24px;justify-content:center;min-width:24px;padding:2px 4px;transition:all .2s ease}.clipboard-btn:hover{background:#6c757d1a;color:#495057;transform:scale(1.1)}.clipboard-btn:active{transform:scale(.95)}.sub-account-list{display:flex;flex-direction:column;gap:8px}.sub-account-item{grid-gap:15px;align-items:center;background:#34495e4d;border-radius:8px;display:grid;gap:15px;grid-template-columns:2fr 1fr 1.5fr;padding:12px 15px;transition:background .3s ease}.sub-account-item:hover{background:#34495e80}.account-name{color:#9b59b6;font-weight:600}.account-count{color:#95a5a6;font-weight:600;text-align:center}.account-value{color:#f39c12;font-weight:600;text-align:right}@media (max-width:768px){.analytics-filters{align-items:stretch;flex-direction:column}.analytics-filters label{min-width:auto}.daily-breakdown-table{border-radius:8px;display:block;overflow-x:auto;width:100%}.valr-breakdown-table .daily-breakdown-row,.valr-breakdown-table .table-header{font-size:.75rem;gap:8px;grid-template-columns:.8fr .8fr 1fr .7fr 1fr .9fr 1.2fr 1fr .6fr .6fr .6fr;padding:8px 10px}.luno-breakdown-table .daily-breakdown-row,.luno-breakdown-table .table-header{font-size:.75rem;gap:8px;grid-template-columns:.9fr .8fr .7fr 1fr .7fr .9fr .8fr .8fr .9fr .6fr .6fr .6fr;padding:8px 10px}.luno-range-totals-table .daily-breakdown-row,.luno-range-totals-table .table-header{font-size:.75rem;gap:8px;grid-template-columns:1fr .8fr 1.1fr .7fr .9fr .8fr .8fr .9fr .6fr;padding:8px 10px}.valr-range-breakdown-table .daily-breakdown-row,.valr-range-breakdown-table .table-header{font-size:.75rem;gap:6px;grid-template-columns:.9fr .8fr .6fr 1fr .6fr .9fr .8fr .8fr .9fr .8fr .5fr .5fr .5fr;padding:8px 10px}.bitstamp-breakdown-table .daily-breakdown-row,.bitstamp-breakdown-table .table-header{font-size:.75rem;gap:6px;grid-template-columns:1fr .5fr .9fr .9fr .8fr .4fr .7fr .7fr .5fr .35fr .35fr .35fr;padding:8px 10px}.bitstamp-daily-breakdown-table .daily-breakdown-row,.bitstamp-daily-breakdown-table .table-header{font-size:.75rem;gap:6px;grid-template-columns:.9fr .9fr .6fr 1fr .8fr .5fr .6fr .35fr .35fr .35fr;padding:8px 10px}.daily-breakdown-table .table-header{font-size:.75rem;padding:12px}.breakdown-date{font-size:.75rem}.breakdown-currency{font-size:.8rem}.breakdown-side{font-size:.7rem;padding:2px 4px}.breakdown-account{font-size:.75rem}.breakdown-avg-price,.breakdown-count,.breakdown-volume{font-size:.8rem}.breakdown-price-range{font-size:.7rem}.breakdown-total-value{font-size:.8rem}.sub-account-item{gap:8px;grid-template-columns:1fr;text-align:center}.non-trade-row,.non-trade-table .table-header{font-size:.8rem;gap:8px;grid-template-columns:1fr 1fr .8fr 1fr .8fr 1.5fr;padding:10px 15px}.tx-description{max-width:120px}.summary-table-header,.summary-table-row{font-size:.8rem;gap:8px;grid-template-columns:1fr .8fr .7fr .5fr 1fr;padding:10px 12px}}@media (max-width:480px){.valr-breakdown-table .daily-breakdown-row,.valr-breakdown-table .table-header{font-size:.7rem;gap:6px;grid-template-columns:.7fr .7fr .9fr .6fr .9fr .8fr 1.1fr .9fr .5fr .5fr .5fr;padding:6px 8px}.luno-breakdown-table .daily-breakdown-row,.luno-breakdown-table .table-header{font-size:.7rem;gap:6px;grid-template-columns:.8fr .7fr .6fr .9fr .6fr .8fr .7fr .7fr .8fr .5fr .5fr .5fr;padding:6px 8px}.luno-range-totals-table .daily-breakdown-row,.luno-range-totals-table .table-header{font-size:.7rem;gap:5px;grid-template-columns:.9fr .7fr 1fr .6fr .8fr .7fr .7fr .8fr .5fr;padding:6px 8px}.valr-range-breakdown-table .daily-breakdown-row,.valr-range-breakdown-table .table-header{font-size:.7rem;gap:4px;grid-template-columns:.8fr .7fr .5fr .9fr .5fr .8fr .7fr .7fr .8fr .7fr .4fr .4fr .4fr;padding:6px 8px}.bitstamp-breakdown-table .daily-breakdown-row,.bitstamp-breakdown-table .table-header{font-size:.7rem;gap:4px;grid-template-columns:.9fr .4fr .8fr .8fr .7fr .35fr .6fr .6fr .4fr .3fr .3fr .3fr;padding:6px 8px}.bitstamp-daily-breakdown-table .daily-breakdown-row,.bitstamp-daily-breakdown-table .table-header{font-size:.7rem;gap:4px;grid-template-columns:.8fr .8fr .5fr .9fr .7fr .4fr .5fr .3fr .3fr .3fr;padding:6px 8px}.daily-breakdown-table .table-header{font-size:.7rem;padding:10px}.breakdown-date{font-size:.7rem}.breakdown-currency{font-size:.75rem}.breakdown-side{font-size:.65rem;padding:1px 3px}.breakdown-account{font-size:.7rem}.breakdown-count,.breakdown-volume{font-size:.75rem}.non-trade-row,.non-trade-table .table-header{font-size:.75rem;gap:6px;grid-template-columns:.8fr 1fr .7fr 1fr .7fr 1.2fr;padding:8px 12px}.tx-description{font-size:.7rem;max-width:100px}.summary-table-header,.summary-table-row{font-size:.75rem;gap:4px;grid-template-columns:1fr;padding:8px 10px;text-align:center}.summary-table-row span{display:block;margin-bottom:4px}.breakdown-avg-price{font-size:.75rem}.breakdown-price-range{font-size:.65rem}.breakdown-total-value{font-size:.75rem}}.comparison-modal-overlay{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.comparison-modal{background:linear-gradient(135deg,#1a2332,#0f1520);border:1px solid #34495e;border-radius:16px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;max-height:85vh;max-width:900px;overflow:hidden;width:100%}.comparison-modal-header{align-items:center;background:linear-gradient(135deg,#1e2a3a,#1a2332);border-bottom:1px solid #34495e;display:flex;justify-content:space-between;padding:20px 24px}.comparison-modal-header h3{color:#00d4ff;font-size:1.4rem;margin:0}.modal-close-btn{align-items:center;background:#ff4757;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s;width:32px}.modal-close-btn:hover{background:#ff6b7a;transform:scale(1.1)}.comparison-modal-body{flex:1 1;overflow-y:auto;padding:24px}.comparison-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.summary-stat{align-items:center;background:#1e2a3a;border:1px solid #34495e;border-radius:10px;display:flex;gap:10px;min-width:140px;padding:12px 18px}.summary-stat .stat-icon{font-size:1.4rem}.summary-stat .stat-label{color:#a0aec0;font-size:.85rem}.summary-stat .stat-value{font-size:1.3rem;font-weight:700;margin-left:auto}.summary-stat.match .stat-value{color:#4caf50}.summary-stat.mismatch .stat-value{color:#ff9800}.summary-stat.not-found .stat-value{color:#2196f3}.summary-stat.error .stat-value{color:#f44336}.summary-stat.skipped .stat-value{color:#9e9e9e}.comparison-total{border-bottom:1px solid #34495e;color:#a0aec0;font-size:.9rem;padding-bottom:16px;text-align:center}.comparison-section,.comparison-total{margin-bottom:24px}.comparison-section h4{color:#e1e5eb;font-size:1.1rem;margin:0 0 12px}.mismatch-table{background:#0f1520;border:1px solid #34495e;border-radius:10px;overflow:hidden}.mismatch-header{background:#1e2a3a;color:#a0aec0;font-size:.85rem;font-weight:600;padding:12px 16px;text-transform:uppercase}.mismatch-header,.mismatch-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:.9fr 1.2fr .7fr .7fr 1fr 1fr}.mismatch-row{align-items:center;border-bottom:1px solid #1e2a3a;padding:14px 16px}.currency-badge{font-size:.75rem;padding:3px 8px;text-align:center}.currency-badge.usdt{background:#26a17b33;border:1px solid #26a17b66;color:#26a17b}.currency-badge.usdc{background:#2775ca33;border:1px solid #2775ca66;color:#2775ca}.mismatch-row:last-child{border-bottom:none}.mismatch-row .sell{color:#ff4757}.mismatch-row .buy{color:#2ed573}.diff-cell{display:flex;flex-direction:column;gap:4px}.diff-cell.match{color:#4caf50;font-weight:500}.diff-cell.mismatch{background:#ff98001a;border-left:3px solid #ff9800;border-radius:6px;padding:8px}.diff-values{display:flex;flex-direction:column;gap:2px}.diff-values small{color:#a0aec0;font-size:.75rem}.diff-amount{font-size:.95rem;font-weight:700}.diff-amount.positive{color:#2ed573}.diff-amount.negative{color:#ff4757}.not-found-list{display:flex;flex-direction:column;gap:8px}.not-found-item{align-items:center;background:#1e2a3a;border-left:3px solid #2196f3;border-radius:8px;display:flex;font-size:.9rem;gap:16px;padding:10px 14px}.not-found-item .nf-date{color:#e1e5eb;font-weight:500;min-width:90px}.not-found-item .nf-source{color:#a0aec0;min-width:120px}.not-found-item .nf-side{font-weight:500;min-width:50px}.not-found-item .nf-side.sell{color:#ff4757}.not-found-item .nf-side.buy{color:#2ed573}.not-found-item .nf-volume{color:#00d4ff}.not-found-item .nf-price{color:#9c27b0}.errors-list{display:flex;flex-direction:column;gap:6px}.error-item{background:#f443361a;border-left:3px solid #f44336;border-radius:8px;color:#ff6b6b;font-size:.85rem;padding:10px 14px}.all-match-message{background:#4caf501a;border:1px solid #4caf504d;border-radius:12px;color:#4caf50;font-size:1.4rem;padding:40px;text-align:center}@media (max-width:768px){.comparison-modal{margin:10px;max-height:95vh}.comparison-summary{flex-direction:column}.summary-stat{min-width:100%}.mismatch-header,.mismatch-row{font-size:.8rem;gap:8px;grid-template-columns:.8fr 1fr .6fr .6fr 1fr 1fr}.not-found-item{flex-wrap:wrap;gap:8px}.currency-badge{font-size:.7rem;padding:2px 6px}}.info-modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.info-modal{animation:slideIn .2s ease;background:linear-gradient(135deg,#1a2332,#0f1520);border-radius:16px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;max-height:80vh;max-width:500px;min-width:400px;overflow:hidden}.info-modal-success{border:1px solid #27ae60}.info-modal-warning{border:1px solid #f39c12}.info-modal-error{border:1px solid #e74c3c}.info-modal-info{border:1px solid #3498db}.info-modal-header{align-items:center;border-bottom:1px solid #34495e;display:flex;justify-content:space-between;padding:16px 20px}.info-modal-success .info-modal-header{background:linear-gradient(135deg,#1e3d2f,#1a2332)}.info-modal-warning .info-modal-header{background:linear-gradient(135deg,#3d361e,#1a2332)}.info-modal-error .info-modal-header{background:linear-gradient(135deg,#3d1e1e,#1a2332)}.info-modal-info .info-modal-header{background:linear-gradient(135deg,#1e2d3d,#1a2332)}.info-modal-header h3{color:#e1e5eb;font-size:1.2rem;margin:0}.info-modal-body{overflow-y:auto;padding:20px}.info-modal-message{color:#b8c0cc;font-size:.95rem;line-height:1.5;margin:0 0 16px}.info-modal-details{background:#0003;border-radius:8px;padding:12px}.info-detail-row{border-bottom:1px solid #34495e4d;display:flex;justify-content:space-between;padding:8px 0}.info-detail-row:last-child{border-bottom:none}.info-detail-row.highlight{background:#f39c121a;border-radius:4px;margin:0 -12px;padding:8px 12px}.info-detail-separator{background:#34495e;height:1px;margin:8px 0}.info-detail-label{color:#8899a6;font-size:.85rem}.info-detail-value{color:#e1e5eb;font-family:Monaco,Consolas,monospace;font-size:.9rem;font-weight:500}.info-modal-footer{border-top:1px solid #34495e;display:flex;justify-content:flex-end;padding:16px 20px}.info-modal-ok-btn{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 32px;transition:all .2s ease}.info-modal-ok-btn:hover{background:linear-gradient(135deg,#2980b9,#2471a3);transform:translateY(-1px)}.confirm-modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.confirm-modal{animation:slideIn .2s ease;background:linear-gradient(135deg,#1a2332,#0f1520);border:1px solid #f39c12;border-radius:16px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;max-height:80vh;max-width:520px;min-width:420px;overflow:hidden}.confirm-modal-header{align-items:center;background:linear-gradient(135deg,#2d3d1e,#1a2332);border-bottom:1px solid #34495e;display:flex;justify-content:space-between;padding:16px 20px}.confirm-modal-header h3{color:#e1e5eb;font-size:1.2rem;margin:0}.confirm-modal-body{overflow-y:auto;padding:20px}.confirm-modal-details{background:#0003;border-radius:8px;margin-bottom:16px;padding:12px}.confirm-detail-row{border-bottom:1px solid #34495e4d;display:flex;justify-content:space-between;padding:6px 0}.confirm-detail-row:last-child{border-bottom:none}.confirm-detail-label{color:#8899a6;font-size:.85rem}.confirm-detail-value{color:#e1e5eb;font-family:Monaco,Consolas,monospace;font-size:.9rem;font-weight:500}.confirm-modal-message{background:#f39c121a;border-left:3px solid #f39c12;border-radius:8px;color:#f39c12;font-size:.9rem;line-height:1.5;margin:0;padding:12px}.confirm-modal-footer{border-top:1px solid #34495e;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.confirm-modal-cancel-btn{background:linear-gradient(135deg,#34495e,#2c3e50);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 24px;transition:all .2s ease}.confirm-modal-cancel-btn:hover{background:linear-gradient(135deg,#2c3e50,#243342)}.confirm-modal-confirm-btn{background:linear-gradient(135deg,#27ae60,#229954);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 24px;transition:all .2s ease}.confirm-modal-confirm-btn:hover{background:linear-gradient(135deg,#229954,#1e8449);transform:translateY(-1px)}@media (max-width:768px){.confirm-modal,.info-modal{margin:10px;max-width:95vw;min-width:90vw}}.interest-summary-section{margin-bottom:25px}.interest-summary-section h3{color:#00d4ff;font-size:1.3rem;margin-bottom:20px}.interest-summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.interest-card{background:linear-gradient(135deg,#1a2332,#1e2a3a);border:1px solid #34495e;border-radius:12px;padding:20px}.interest-card.daily{border-left:4px solid #3498db}.interest-card.mtd{border-left:4px solid #9b59b6}.interest-card h4{border-bottom:1px solid #34495e;color:#ecf0f1;font-size:1.1rem;padding-bottom:10px}.interest-card h4,.interest-category{margin-bottom:16px}.interest-category:last-child{margin-bottom:0}.interest-category h5{color:#bdc3c7;font-size:.95rem;font-weight:600;margin-bottom:10px}.interest-category.borrow-costs h5{color:#e74c3c}.interest-category.interest-earned h5{color:#27ae60}.interest-breakdown{display:flex;flex-direction:column;gap:6px}.interest-row{align-items:center;background:#0003;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.interest-row .account-label{color:#95a5a6;font-size:.9rem}.interest-row .amount{font-size:.95rem;font-weight:600}.interest-row .amount.negative{color:#e74c3c}.interest-row .amount.positive{color:#27ae60}.interest-total{align-items:center;background:#34495e66;border-radius:6px;border-top:1px solid #34495e;display:flex;justify-content:space-between;margin-top:8px;padding:10px 12px}.interest-total span:first-child{color:#ecf0f1;font-weight:600}.interest-total .amount{font-size:1rem;font-weight:700}.interest-total .amount.negative{color:#e74c3c}.interest-total .amount.positive{color:#27ae60}.no-data-small{background:#00000026;border-radius:6px;color:#7f8c8d;font-size:.85rem;font-style:italic;padding:8px 12px}@media (max-width:900px){.interest-summary-grid{grid-template-columns:1fr}}.interest-total.zar-total{background:#9b59b633;border:1px solid #9b59b666;margin-top:4px}.interest-total.zar-total span:first-child{color:#bb8fce}.price-info-footer{background:#34495e4d;border-radius:8px;color:#95a5a6;font-size:.85rem;margin-top:15px;padding:10px 15px;text-align:center}@media (max-width:480px){.interest-card{padding:15px}.interest-card h4{font-size:1rem}.interest-row{padding:6px 10px}}.tab-navigation{display:flex;flex-wrap:wrap;gap:10px}.tab-btn{background:linear-gradient(135deg,#2a3441,#1a2332);border:1px solid #34495e;border-radius:8px;color:#8892b0;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.tab-btn:hover{background:linear-gradient(135deg,#34495e,#2a3441);border-color:#5dade2;color:#e1e5eb}.tab-btn.active{background:linear-gradient(135deg,#3498db,#2980b9);border-color:#5dade2;box-shadow:0 4px 12px #3498db4d;color:#fff}.latest-dates-display{background:#2a344166;border:1px solid #34495e;border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;padding:10px 15px}.latest-date-item{color:#8892b0;font-size:.85rem}.latest-date-item strong{color:#e1e5eb;margin-right:5px}.btn-sync{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s ease}.btn-sync:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#1f618d);transform:translateY(-1px)}.btn-sync:disabled{cursor:not-allowed;opacity:.6}.btn-refresh{background:linear-gradient(135deg,#27ae60,#229954);border-radius:6px;font-size:.9rem;font-weight:600;transition:all .3s ease}.btn-refresh:hover{background:linear-gradient(135deg,#229954,#1e8449);transform:translateY(-1px)}.btn-refresh-small{background:linear-gradient(135deg,#27ae60,#229954);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;margin-left:10px;padding:5px 12px;transition:all .2s ease}.btn-refresh-small:hover{background:linear-gradient(135deg,#229954,#1e8449)}.sync-progress{background:#2a344166;border:1px solid #34495e;border-radius:8px;margin:10px 0;padding:10px}.progress-bar{background:#1a2332;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#3498db,#2ecc71);height:100%;transition:width .3s ease}.progress-text{color:#8892b0;font-size:.85rem}.control.buttons{align-items:flex-end;display:flex;gap:10px}.summary-row.selected{background:#3498db33;border-left:3px solid #3498db}@media (max-width:600px){.tab-navigation{flex-direction:column}.tab-btn{text-align:center;width:100%}.latest-dates-display{flex-direction:column;gap:8px}}.allocation-modal-container{display:flex;flex-direction:column;max-height:80vh}.allocation-modal-header{border-bottom:2px solid #e0e0e0;margin-bottom:20px;padding-bottom:16px}.allocation-modal-header h3{color:#333;margin:0 0 12px}.transaction-info{color:#555;font-size:14px;margin:8px 0}.transaction-info strong{color:#007bff}.transaction-details{color:#666;font-size:12px;margin:4px 0 0}.allocation-modal-body{flex:1 1;overflow-y:auto;padding-right:8px}.search-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.search-input{flex:1 1;min-width:200px}.search-filters select,.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.search-filters select{background:#fff}.trades-list{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;max-height:400px;overflow-y:auto;padding:8px}.trade-item{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;margin-bottom:10px;padding:12px;transition:all .2s}.trade-item:hover{border-color:#007bff;box-shadow:0 2px 4px #007bff1a}.trade-item.selected{background:#f0f8ff;border-color:#007bff}.trade-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.trade-number{color:#333;font-size:14px}.trade-side{border-radius:12px;font-size:11px;font-weight:600;padding:4px 8px;text-transform:uppercase}.trade-side.buy{background:#d4edda;color:#155724}.trade-side.sell{background:#f8d7da;color:#721c24}.trade-item-details{grid-gap:6px;color:#555;display:grid;font-size:13px;gap:6px;grid-template-columns:repeat(2,1fr);margin-bottom:8px}.trade-item-footer{align-items:center;color:#666;display:flex;font-size:12px;justify-content:space-between}.allocation-form{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:16px}.allocation-form h4{color:#333;font-size:16px;margin:0 0 12px}.form-group{margin-bottom:12px}.form-group label{color:#333}.form-group input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.form-group small{color:#666;display:block;margin-top:4px}.loading,.no-results{color:#666;padding:40px;text-align:center}.btn-primary,.btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-primary:disabled{background:#6c757d}.modal-actions{border-top:2px solid #e0e0e0}.transaction-summary{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:4px;margin-top:10px;max-height:150px;overflow-y:auto;padding:12px}.summary-item{border-bottom:1px solid #e0e0e0;font-size:13px;justify-content:space-between;padding:6px 0}.summary-item:last-child{border-bottom:none}.side-badge{font-size:11px;padding:4px 8px}.side-badge.buy{background:#d1ecf1;color:#0c5460}.side-badge.sell{background:#fff3cd;color:#856404}.bank-transactions-container{margin:0 auto;max-width:1400px;padding:20px}.bank-transactions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.bank-transactions-header h2{color:#333;margin:0}.header-actions{gap:10px}.filters-header{align-items:center;color:#495057;display:flex;font-size:16px;font-weight:600;gap:8px;padding:4px 0;transition:color .2s ease}.filters-header:hover{color:#212529}.filters{align-items:flex-end;background:#f5f5f5;border-radius:8px;display:flex;flex-wrap:wrap;gap:15px;margin-top:10px;padding:15px}.filter-group label{color:#666;font-weight:500}.filter-group input,.filter-group select{font-size:14px;padding:6px 10px}.table-container{border:1px solid #e0e0e0;pointer-events:auto;position:relative;z-index:1}.bank-transactions-table{background:#fff;border-collapse:collapse;table-layout:fixed;width:100%}.bank-transactions-table th{background:#f8f9fa;border-bottom:2px solid #e0e0e0;color:#333;font-weight:600;overflow:hidden;padding:12px;position:sticky;text-align:left;text-overflow:ellipsis;top:0;white-space:nowrap;z-index:10}.bank-transactions-table th:first-child{width:40px}.bank-transactions-table th:nth-child(2){width:90px}.bank-transactions-table th:nth-child(3),.bank-transactions-table th:nth-child(4){width:180px}.bank-transactions-table th:nth-child(5){width:110px}.bank-transactions-table th:nth-child(6){width:100px}.bank-transactions-table th:nth-child(7){width:90px}.bank-transactions-table th:nth-child(8){width:100px}.bank-transactions-table th:nth-child(9){width:150px}.bank-transactions-table td{border-bottom:1px solid #f0f0f0;overflow:hidden;padding:12px;position:relative;text-overflow:ellipsis;white-space:nowrap}.bank-transactions-table td:first-child{padding:12px!important}.bank-transactions-table td:first-child,.bank-transactions-table td:first-child input[type=checkbox]{cursor:pointer!important;pointer-events:auto!important}.bank-transactions-table tbody tr:hover{background:#f8f9fa}.bank-transactions-table input[type=checkbox]{accent-color:#007bff!important;-webkit-appearance:checkbox!important;appearance:checkbox!important;cursor:pointer!important;height:18px!important;margin:0!important;padding:0!important;pointer-events:auto!important;position:relative!important;width:18px!important;z-index:100!important}.amount-positive{color:#28a745;font-weight:500}.amount-negative{color:#dc3545;font-weight:500}.status-unallocated{background:#fff3cd;color:#856404}.status-allocated{background:#d4edda;color:#155724}.status-partial{background:#d1ecf1;color:#0c5460}.status-ignored{background:#e2e3e5;color:#383d41}.action-buttons{gap:4px;max-width:150px}.btn-small{font-size:11px;padding:3px 6px}.btn-primary{background:#007bff;border-radius:4px;padding:8px 16px}.btn-primary:hover{background:#0056b3}.btn-secondary{background:#6c757d;border-radius:4px;padding:8px 16px}.btn-secondary:hover{background:#545b62}.btn-danger{background:#dc3545}.btn-danger:hover{background:#c82333}.btn-small.btn-primary{background:#007bff;color:#fff}.btn-small.btn-primary:hover{background:#0056b3}.btn-small.btn-secondary{background:#6c757d;color:#fff}.btn-small.btn-secondary:hover{background:#545b62}.btn-small.btn-warning{background:#fd7e14;color:#fff}.btn-small.btn-warning:hover{background:#e36209}.message{align-items:center;border-radius:4px;display:flex;justify-content:space-between}.message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.message button{background:none;border:none;color:inherit;cursor:pointer;font-size:20px;padding:0 5px}.pagination button{padding:6px 12px}.pagination button:hover:not(:disabled){background:#f0f0f0}.modal{max-width:600px;padding:24px}.modal.large{max-width:900px}.modal h3{margin-bottom:16px}.text-muted{color:#6c757d;font-size:12px}.allocations-list{display:flex;flex-direction:column;gap:2px;max-width:100px;overflow:hidden}.allocation-item{color:#007bff;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-menu{border-radius:4px;min-width:200px}.context-menu-item{align-items:center;display:flex;gap:8px;transition:background .2s ease}.context-menu-item:hover{background:#f0f0f0}.context-menu-item:active{background:#e0e0e0}.mobile-bulk-action-btn{-webkit-tap-highlight-color:transparent;background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;display:none;font-size:14px;font-weight:500;padding:8px 14px;transition:all .2s ease}.mobile-bulk-action-btn:active{background:#138496;transform:scale(.98)}@media (max-width:768px){.bank-transactions-container{padding:10px}.bank-transactions-header{align-items:flex-start;flex-direction:column;gap:12px}.header-actions{flex-direction:column;gap:8px;width:100%}.header-actions button{min-height:44px;width:100%}.mobile-bulk-action-btn{display:block}.filters{align-items:stretch;flex-direction:column}.filter-group{width:100%}.filter-group input,.filter-group select{font-size:16px;min-height:44px;width:100%}.filters>button{min-height:44px;width:100%}.table-container{position:relative}.table-container:after{background:linear-gradient(90deg,#0000,#0000000d);bottom:0;content:"";pointer-events:none;position:absolute;right:0;top:0;width:20px}.bank-transactions-table input[type=checkbox]{height:22px!important;min-height:22px;min-width:22px;width:22px!important}.action-buttons{flex-direction:column;gap:6px;max-width:100%}.btn-small{font-size:13px;min-height:38px;padding:8px 12px}.context-menu{border-radius:12px;min-width:220px}.context-menu-item{font-size:16px;min-height:48px;padding:16px 20px}.pagination button{min-height:44px;min-width:44px;padding:10px 16px}.pagination{flex-wrap:wrap;gap:8px}.modal{max-height:90vh;padding:16px;width:95%}.modal.large{width:98%}.modal-actions{flex-direction:column;gap:8px}.modal-actions button{min-height:44px;width:100%}}@media (max-width:480px){.bank-transactions-header h2{font-size:18px}.btn-primary,.btn-secondary{font-size:14px;padding:10px 14px}.bank-transactions-table td,.bank-transactions-table th{font-size:12px;padding:8px 6px}.bank-transactions-table{table-layout:auto}.status-badge{font-size:10px;padding:3px 6px}}.bank-txn-tabs{border-bottom:2px solid #e9ecef;display:flex;gap:0;margin-bottom:20px}.bank-txn-tab{align-items:center;background:#0000;border:none;color:#6c757d;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;position:relative;transition:all .2s ease}.bank-txn-tab:hover{background:#f8f9fa;color:#333}.bank-txn-tab.active{color:#0d6efd;font-weight:600}.bank-txn-tab.active:after{background:#0d6efd;border-radius:3px 3px 0 0;bottom:-2px;content:"";height:3px;left:0;position:absolute;right:0}.pending-badge{background:#dc3545;border-radius:10px;color:#fff;font-size:11px;min-width:20px;text-align:center}.pending-transactions-section{background:#f8f9fa;border-radius:8px;padding:20px}.pending-header{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.pending-header-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.pending-description{color:#6c757d;flex:1 1;font-size:14px;line-height:1.5;margin:0}.monitor-status-bar{background:#e9ecef;border-radius:6px;color:#495057;display:flex;flex-wrap:wrap;font-size:12px;gap:16px;padding:10px 14px}.monitor-status-bar .status-item{align-items:center;display:inline-flex;gap:4px}.monitor-status-bar .status-item strong{color:#343a40}.monitor-status-bar .status-auto{background:#d1fae5;border-radius:4px;color:#065f46;font-weight:500;padding:2px 8px}.monitor-status-bar .status-manual{background:#dbeafe;border-radius:4px;color:#1e40af;font-weight:500;padding:2px 8px}.empty-message,.loading-message{color:#6c757d;padding:40px 20px;text-align:center}.empty-message p{margin:0}.empty-message .subtitle{color:#adb5bd;font-size:13px;margin-top:8px}.pending-table{background:#fff;border-radius:8px;overflow:hidden}.txn-type{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.txn-type.incoming{background:#d1fae5;color:#065f46}.pending-actions{display:flex;gap:8px}.btn-approve{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s}.btn-approve:hover{background:#059669;transform:translateY(-1px)}.btn-delete{background:#0000;border:1px solid #dc3545;border-radius:6px;color:#dc3545;cursor:pointer;font-weight:500;padding:6px 12px;transition:all .2s}.btn-delete:hover{background:#dc3545;color:#fff}.pending-date{min-width:140px;white-space:nowrap}.pending-amount{max-width:120px;width:120px}.pending-table table{table-layout:fixed}.pending-table td:first-child,.pending-table th:first-child{width:140px}.pending-table td:nth-child(2),.pending-table th:nth-child(2){width:110px}.pending-table td:nth-child(3),.pending-table th:nth-child(3){width:120px}@media (max-width:768px){.bank-txn-tabs{overflow-x:auto}.bank-txn-tab{font-size:13px;padding:10px 16px;white-space:nowrap}.pending-actions,.pending-header-top{flex-direction:column}.pending-actions{gap:4px}.monitor-status-bar{flex-direction:column;gap:8px}.btn-approve,.btn-delete{padding:8px 12px;width:100%}}@keyframes fadeOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(20px)}}.pending-table tr.fade-out{animation:fadeOut .4s ease-out forwards;background-color:#fee2e2!important}.duplicate-warning-modal{max-width:500px;width:90%}.modal-header.warning{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:8px 8px 0 0;color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.modal-header.warning h3{font-size:18px;margin:0}.modal-close{color:#fff;font-size:24px;opacity:.8}.modal-close:hover{opacity:1}.warning-text{color:#92400e;margin-bottom:16px}.duplicate-details{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;margin-bottom:16px;padding:16px}.detail-row{border-bottom:1px solid #fde68a}.detail-row .label{color:#78350f}.detail-row .value{color:#451a03}.detail-row.highlight{background:#fde68a;border-radius:4px;margin:0 -16px;padding:8px 16px}.confirm-text{color:#374151;font-weight:500;margin:0}.modal-footer{padding:16px 20px}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s}.btn-warning:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px)}.crw-modal{max-width:820px;width:calc(100% - 40px)}.crw-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.crw-close{background:#0000;border:none;cursor:pointer;font-size:22px;line-height:1;padding:4px 8px}.crw-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:14px 0 6px}.crw-section{border-top:1px solid #00000014;margin-top:14px;padding-top:10px}.crw-section h3{font-size:14px;margin:0 0 10px}.crw-field .crw-label{color:#666;font-size:12px;margin-bottom:6px}.crw-field .crw-value{color:#111;font-size:14px}.crw-field input,.crw-field select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;width:100%}.crw-muted{color:#666}.crw-mono,.crw-muted{font-size:12px;margin-top:6px}.crw-mono{color:#333;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.crw-destination{background:#28a74514;border:1px solid #28a74540;border-radius:8px;padding:10px 12px}.crw-warning{background:#ffc1071f;border:1px solid #ffc10759;border-radius:8px;display:flex;flex-direction:column;gap:10px;padding:10px 12px}.crw-bind-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.crw-status{border-radius:8px;font-size:13px;margin-top:12px;padding:10px 12px}.crw-status.success{background:#28a7451f;border:1px solid #28a74559}.crw-status.error{background:#dc35451a;border:1px solid #dc354559}.crw-status.loading{background:#007bff1a;border:1px solid #007bff4d}.crw-action-hint{background:#fff9;border-radius:6px;font-size:13px;margin-top:8px;padding:12px}.crw-action-hint p{margin:0 0 8px}.crw-action-hint ol{margin:0;padding-left:20px}.crw-action-hint ol li{margin-bottom:4px}.crw-action-hint .crw-note{color:#856404;font-style:italic;margin-bottom:0;margin-top:12px}.crw-override-warning{background:#ffc10726;border:1px solid #ffc10766;border-radius:4px;color:#856404;font-size:12px;margin-top:8px;padding:6px 10px}@media (max-width:820px){.crw-bind-grid,.crw-grid{grid-template-columns:1fr}}.coins-ready-container{max-width:100%;padding:20px}.coins-ready-container .header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.coins-ready-container h2{color:#2c3e50;font-size:24px;margin:0}.coins-ready-container .description{color:#6c757d;font-size:14px;margin-bottom:20px}.coins-ready-container .message{align-items:center;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.coins-ready-container .message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.coins-ready-container .message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.coins-ready-container .message button{background:none;border:none;color:inherit;cursor:pointer;font-size:20px;padding:0 8px}.coins-ready-container .loading,.coins-ready-container .no-results{color:#6c757d;padding:40px;text-align:center}.coins-ready-container .no-results p{margin:8px 0}.coins-ready-container .text-muted{font-size:14px}.coins-ready-table{border-collapse:collapse;font-size:14px;width:100%}.coins-ready-table thead{background:#f8f9fa;position:sticky;top:0;z-index:10}.coins-ready-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:16px 20px;text-align:left;white-space:nowrap}.coins-ready-table tbody tr.main-row{border-bottom:1px solid #dee2e6;transition:background-color .15s}.coins-ready-table tbody tr.main-row:hover{background-color:#f8f9fa}.coins-ready-table td{padding:16px 20px;vertical-align:middle}.expand-icon{color:#6c757d;display:inline-block;font-size:9px;opacity:.7;-webkit-user-select:none;user-select:none;width:12px}.currency-badge{letter-spacing:.5px}.badge,.currency-badge{border-radius:6px;font-size:13px;padding:6px 12px}.badge{background:#e9ecef;color:#495057;display:inline-block;font-weight:500}.expanded-row{background:#f8f9fa}.expanded-row td{padding:0!important}.trade-breakdown{background:#fff;border:1px solid #dee2e6;border-radius:4px;margin:8px;padding:16px 20px}.trade-breakdown h4{color:#495057;font-size:14px;margin:0 0 12px}.breakdown-table{font-size:13px}.breakdown-table thead{background:#f8f9fa}.breakdown-table th{border-bottom:1px solid #dee2e6;color:#6c757d;font-weight:600;padding:8px 12px;text-align:left}.breakdown-table td{border-bottom:1px solid #f1f3f5;padding:8px 12px}.breakdown-table tbody tr:last-child td{border-bottom:none}.coins-ready-table tbody tr.main-row:hover .expand-icon{opacity:1}.mobile-action-btn{border:1px solid #dee2e6;color:#495057}.mobile-action-btn:active{background:#e9ecef}@media (max-width:768px){.coins-ready-container{padding:10px}.coins-ready-container .header{align-items:flex-start;flex-direction:column;gap:12px}.coins-ready-container h2{font-size:20px}.coins-ready-container .header button{min-height:44px;width:100%}.mobile-action-cell,.mobile-action-header{display:table-cell}.table-container{-webkit-overflow-scrolling:touch}.coins-ready-table td,.coins-ready-table th{padding:12px 10px}.coins-ready-table{min-width:600px}.trade-breakdown{margin:4px;padding:12px}.breakdown-table td,.breakdown-table th{font-size:12px;padding:6px 8px}}@media (max-width:480px){.coins-ready-container h2{font-size:18px}.coins-ready-table td,.coins-ready-table th{font-size:13px;padding:10px 8px}.badge,.currency-badge{font-size:11px;padding:4px 8px}.mobile-action-btn{font-size:18px;height:38px;width:38px}}.coin-deliveries-container{max-width:100%;padding:20px}.coin-deliveries-container .header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.coin-deliveries-container .header h2{color:#2c3e50;font-size:24px;margin:0}.coin-deliveries-container .header-actions{display:flex;gap:10px}.coin-deliveries-container .header-actions-block{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.coin-deliveries-container .sync-indicator{color:#6c757d;font-size:12px;line-height:1.25;text-align:right}.coin-deliveries-container .sync-indicator strong{color:#495057;font-weight:600}.coin-deliveries-container .description{color:#6c757d;font-size:14px;margin-bottom:20px}.coin-deliveries-container .message{align-items:center;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.coin-deliveries-container .message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.coin-deliveries-container .message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.coin-deliveries-container .message button{background:none;border:none;color:inherit;cursor:pointer;font-size:20px;padding:0 8px}.coin-deliveries-container .filters-container{margin-bottom:20px}.coin-deliveries-container .filters-header{align-items:center;color:#495057;display:flex;font-size:16px;font-weight:600;gap:8px;padding:4px 0;transition:color .2s ease}.coin-deliveries-container .filters-header:hover{color:#212529}.coin-deliveries-container .filters-toggle{color:#6c757d;display:inline-block;font-size:12px;transition:transform .2s ease;width:16px}.coin-deliveries-container .coin-deliveries-filters{--cd-filter-height:38px;grid-column-gap:12px;grid-row-gap:8px;align-items:center;column-gap:12px;display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(220px,1fr) 150px minmax(200px,.9fr) auto;margin-top:10px;overflow-x:auto;overflow-y:hidden;row-gap:8px}.coin-deliveries-container .coin-deliveries-filters select{background:#fff;border:1px solid #dee2e6;border-radius:4px;box-sizing:border-box;font-size:14px;height:var(--cd-filter-height);line-height:calc(var(--cd-filter-height) - 2px);min-height:var(--cd-filter-height);min-width:0;padding:8px 12px;width:100%}.coin-deliveries-container .coin-deliveries-filters .include-ignored{align-items:center;color:#495057;display:inline-flex;font-size:14px;gap:8px;height:var(--cd-filter-height);padding:0 8px;white-space:nowrap}.coin-deliveries-container .coin-deliveries-filters .include-ignored input[type=checkbox]{accent-color:#007bff!important;-webkit-appearance:checkbox!important;appearance:checkbox!important;cursor:pointer!important;height:18px!important;margin:0!important;padding:0!important;pointer-events:auto!important;position:relative!important;width:18px!important;z-index:10!important}.coin-deliveries-container .loading,.coin-deliveries-container .no-results{color:#6c757d;padding:40px;text-align:center}.coin-deliveries-container .no-results p{margin:8px 0}.coin-deliveries-container .text-muted{color:#6c757d;font-size:14px}.table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.coin-deliveries-table{border-collapse:collapse;font-size:14px;width:100%}.coin-deliveries-table thead{background:#f8f9fa;position:sticky;top:0;z-index:10}.coin-deliveries-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px 16px;text-align:left}.coin-deliveries-table tbody tr{border-bottom:1px solid #dee2e6;transition:background-color .15s}.coin-deliveries-table tbody tr:hover{background-color:#f8f9fa}.coin-deliveries-table tbody tr.ignored{background-color:#f1f3f5;opacity:.5}.coin-deliveries-table td{padding:12px 16px;vertical-align:middle}.direction-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px}.direction-badge.incoming{background:#d1ecf1;color:#0c5460}.direction-badge.outgoing{background:#fff3cd;color:#856404}.type-badge{background:#e9ecef;border-radius:4px;color:#495057;display:inline-block;font-size:11px;font-weight:500;padding:4px 10px}.type-badge.blockchain_send,.type-badge.off_chain_blockchain_withdraw{background:#fff3cd;color:#856404}.type-badge.blockchain_receive,.type-badge.off_chain_blockchain_deposit{background:#d1ecf1;color:#0c5460}.currency-badge{background:#e7f5ff;border-radius:4px;color:#1971c2;font-size:12px}.currency-badge,.status-badge{padding:4px 10px}.status-badge.unallocated{background:#f8f9fa;color:#6c757d}.status-badge.partially_allocated{background:#fff3cd;color:#856404}.status-badge.allocated{background:#d4edda;color:#155724}.pagination{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;gap:16px}.pagination button{border:1px solid #dee2e6;font-size:14px}.pagination button:hover:not(:disabled){background:#f8f9fa;border-color:#007bff}.pagination span{color:#495057;font-size:14px}.coin-deliveries-table tr{transition:opacity .3s ease-out,transform .3s ease-out,background-color .3s ease-out}.coin-deliveries-table tr.row-fading-out{background-color:#f8d7da!important;opacity:0;transform:translateX(20px)}@media (max-width:1100px){.coin-deliveries-container .coin-deliveries-filters{column-gap:10px}}@media (max-width:768px){.coin-deliveries-container .coin-deliveries-filters{grid-template-columns:minmax(220px,1.2fr) minmax(220px,1fr) 150px minmax(200px,.9fr) auto}}.delivery-schedule-container{margin:0 auto;max-width:1400px;padding:20px}.delivery-schedule-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.delivery-schedule-header h2{color:#333;font-size:24px;margin:0}.btn-refresh{padding:8px 16px}.btn-refresh:hover{background-color:#45a049}.delivery-schedule-loading{color:#666;font-size:16px;padding:40px;text-align:center}.delivery-schedule-error{color:#d32f2f;padding:40px;text-align:center}.btn-retry{padding:8px 16px}.schedule-tables-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr}.schedule-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.schedule-table-title{color:#333;font-size:18px;font-weight:600;margin:0 0 15px}.schedule-table-subtitle{color:#666;display:block;font-size:12px;font-weight:400;margin-top:4px}.schedule-table-empty{color:#999;font-style:italic;padding:20px;text-align:center}.schedule-table{border-collapse:collapse;font-size:14px;width:100%}.schedule-table thead{background-color:#f5f5f5}.schedule-table th{border-bottom:2px solid #ddd;font-weight:600;padding:12px 8px;text-align:left}.schedule-table th.counterparty-col{text-align:left;width:25%}.schedule-table th.date-col{text-align:right;width:15%}.schedule-table th.total-col{background-color:#e8f5e9;text-align:right;width:15%}.date-header{align-items:flex-end;display:flex;flex-direction:column}.date-label{color:#333;font-size:13px;font-weight:600}.date-value{color:#666;font-size:11px;font-weight:400}.schedule-table tbody tr{border-bottom:1px solid #eee;transition:background-color .1s}.schedule-table tbody tr:hover{background-color:#fafafa}.schedule-table td{padding:10px 8px}.counterparty-cell{color:#333;font-weight:500}.amount-cell{color:#666}.amount-cell.has-value{background-color:#fff9c4;color:#333;font-weight:500}.amount-cell.clickable{cursor:pointer;transition:all .2s ease}.amount-cell.clickable:hover{background-color:#e3f2fd!important;text-decoration:underline;transform:scale(1.05)}.total-cell{background-color:#f5f5f5;color:#333;font-family:Courier New,monospace;font-weight:600;text-align:right}.schedule-table tfoot{background-color:#e8f5e9;font-weight:600}.schedule-table tfoot tr{border-top:2px solid #4caf50}.schedule-table tfoot td{padding:12px 8px}.grand-total-cell{background-color:#c8e6c9;color:#2e7d32;font-family:Courier New,monospace;font-size:15px;font-weight:700;text-align:right}.totals-row{font-weight:600}.schedule-table th.overdue-col{background-color:#ffebee;border-left:3px solid #d32f2f}.schedule-table th.overdue-col .date-label{color:#c62828;font-weight:700}.schedule-table th.overdue-col .date-value{color:#d32f2f}.amount-cell.overdue-cell{background-color:#ffcdd2;border-left:2px solid #ef5350}.amount-cell.overdue-cell.has-value{background-color:#ff8a80;color:#b71c1c;font-weight:600}.total-cell.overdue-cell{background-color:#ffcdd2;border-left:2px solid #ef5350;color:#b71c1c}@media (max-width:768px){.schedule-table{font-size:12px}.schedule-table td,.schedule-table th{padding:8px 4px}.date-label{font-size:12px}.date-value{font-size:10px}}.valr-delivery-container{margin:0 auto;max-width:1400px;padding:20px}.valr-delivery-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.valr-delivery-header h2{color:#333;font-size:24px;margin:0 0 5px}.last-updated{color:#666;font-size:12px;margin:5px 0 0}.auto-refresh-note{color:#999;font-style:italic}.btn-refresh{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .2s;white-space:nowrap}.btn-refresh:hover:not(:disabled){background-color:#45a049}.btn-refresh:disabled{background-color:#a0a0a0;cursor:not-allowed}.valr-delivery-loading{color:#666;font-size:16px;padding:40px;text-align:center}.valr-delivery-error{color:#d32f2f;padding:40px;text-align:center}.btn-retry{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:10px;padding:10px 20px}.btn-retry:hover{background-color:#1976d2}.delivery-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{background-color:#fff;box-shadow:0 2px 4px #0000001a;text-align:center}.stat-card.grand-total{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-label{color:#666;font-size:14px;margin-bottom:10px}.stat-card.grand-total .stat-label{color:#ffffffe6}.stat-value{color:#333;font-size:32px}.stat-card.grand-total .stat-value{color:#fff}.delivery-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:25px}.delivery-table-container h3{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.delivery-table{border-collapse:collapse;font-size:14px;width:100%}.delivery-table thead{background-color:#f5f5f5}.delivery-table th{border-bottom:2px solid #e0e0e0;color:#333;font-weight:600;padding:12px 15px;text-align:left}.delivery-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background-color .2s}.delivery-table tbody tr:hover{background-color:#f9f9f9}.delivery-table td{color:#555;padding:12px 15px}.amount-cell,.date-cell{font-weight:500}.amount-cell{font-family:Courier New,monospace;text-align:right}.count-cell{text-align:center}.total-row{background-color:#f5f5f5;font-weight:700}.total-row td{border-top:2px solid #333;color:#333;padding:15px}.no-data{padding:40px 20px}.no-data p{margin:10px 0}.no-data-hint{font-size:13px;font-style:italic}.data-source-info{background-color:#f9f9f9;border-radius:4px;color:#666;padding:15px;text-align:center}.data-source-info small{font-size:12px}@media (max-width:768px){.valr-delivery-header{align-items:flex-start;flex-direction:column;gap:15px}.btn-refresh{width:100%}.delivery-stats{grid-template-columns:1fr}.delivery-table{font-size:12px}.delivery-table td,.delivery-table th{padding:8px 10px}.stat-value{font-size:24px}}.otc-booker{margin:0 auto;max-width:1400px;padding:20px}.otc-header{border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.header-buttons,.otc-header{align-items:center}.otc-header h2{color:#333;font-size:24px;font-weight:600;margin:0}.error-message{align-items:flex-start;animation:messageSlideIn .3s ease-out;border:1px solid;box-shadow:0 2px 8px #0000001a;gap:12px;line-height:1.5;position:relative;white-space:pre-line}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-message{border-color:#fecaca}.error-message:before{content:"⚠️";flex-shrink:0;font-size:16px}.error-message.success{background-color:#f0fdf4;border-color:#86efac;color:#166534}.error-message.success:before{content:"✅";font-size:16px}.error-message.info{background-color:#eff6ff;border-color:#93c5fd;color:#1e40af}.error-message.info:before{content:"ℹ️";font-size:16px}.error-message.warning{background-color:#fefce8;border-color:#fde047;color:#a16207}.error-message.warning:before{content:"⚠️";font-size:16px}.modal-message{align-items:flex-start;animation:messageSlideIn .3s ease-out;border:1px solid;border-radius:6px;display:flex;font-size:13px;font-weight:500;gap:8px;line-height:1.4;margin-bottom:16px;padding:12px 16px}.modal-message.error{background-color:#fefafa;border-color:#f5b2b2;color:#dc2626}.modal-message.error:before{content:"⚠️";flex-shrink:0;font-size:14px}.modal-message.success{background-color:#f7fef7;border-color:#a7f3d0;color:#15803d}.modal-message.success:before{content:"✅";flex-shrink:0;font-size:14px}.modal-message.info{background-color:#f0f8ff;border-color:#bfdbfe;color:#2563eb}.modal-message.info:before{content:"ℹ️";flex-shrink:0;font-size:14px}.modal-message.warning{background-color:#fffbeb;border-color:#fed7aa;color:#d97706}.modal-message.warning:before{content:"⚠️";flex-shrink:0;font-size:14px}.form-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.otc-form-container{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-height:90vh;max-width:600px;overflow-y:auto;position:relative;width:100%}.form-header{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border-bottom:1px solid #e9ecef;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:16px 20px;transition:background .3s ease}.form-header.buy{background:linear-gradient(135deg,#28a745,#1e7e34)}.form-header.sell{background:linear-gradient(135deg,#dc3545,#c82333)}.form-header h3{font-size:18px;font-weight:600;margin:0}.form-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.form-close-btn:hover{background:#ffffff1a}.otc-form{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding:20px}.form-group{gap:4px}.form-group.full-width{grid-column:1/-1}.form-group label{color:#495057;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.form-group input:not([type=checkbox]),.form-group select,.form-group textarea{background:#fff;border:1px solid #ced4da;border-radius:6px;font-size:14px;padding:8px 12px;transition:all .2s ease}.form-group input:not([type=checkbox]):focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-group input[type=checkbox],.modal input[type=checkbox]{accent-color:#007bff!important;-webkit-appearance:checkbox!important;appearance:checkbox!important;cursor:pointer!important;height:18px!important;margin:0!important;padding:0!important;pointer-events:auto!important;position:relative!important;width:18px!important;z-index:100!important}.form-group textarea{min-height:60px}.form-actions{background:#f8f9fa;border-radius:0 0 12px 12px;border-top:1px solid #e9ecef;padding:16px 20px}.form-actions button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.form-actions .btn-primary.buy{background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff}.form-actions .btn-primary.buy:hover{background:linear-gradient(135deg,#1e7e34,#155724);transform:translateY(-1px)}.form-actions .btn-primary.sell{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.form-actions .btn-primary.sell:hover{background:linear-gradient(135deg,#c82333,#bd2130);transform:translateY(-1px)}.otc-filters{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 4px #00000014;margin:15px 0;padding:12px 16px}.otc-filters h3{align-items:center;color:#495057;display:flex;font-size:16px;font-weight:600;gap:6px;margin:0 0 10px;padding:4px 0;transition:color .2s ease}.otc-filters h3:hover{color:#212529}.otc-filters h3.filters-header{margin-bottom:0}.filters-toggle{color:#6c757d;display:inline-block;font-size:12px;transition:transform .2s ease;width:16px}.otc-filters h3:before{content:"🔍";font-size:14px}.filters-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:0}.filter-group{gap:3px}.filter-group label{color:#6c757d;font-size:11px;letter-spacing:.3px;margin-bottom:0}.filter-group input[type=date],.filter-group input[type=text],.filter-group select{background:#fff;border:1px solid #ced4da;border-radius:4px;font-size:13px;height:32px;padding:6px 10px;transition:all .2s ease}.filter-group input[type=date]:focus,.filter-group input[type=text]:focus,.filter-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.filter-group input[type=date]:hover,.filter-group input[type=text]:hover,.filter-group select:hover{border-color:#adb5bd}.filter-checkbox{align-items:center;background:#fff;border:1px solid #ced4da;border-radius:4px;cursor:pointer;display:flex;gap:6px;height:32px;padding:6px 10px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.filter-checkbox:hover{background:#f8f9fa;border-color:#adb5bd}.filter-checkbox input[type=checkbox]{accent-color:#007bff;height:14px;margin:0;width:14px}.filter-checkbox label{color:#495057;cursor:pointer;font-size:13px;font-weight:500;letter-spacing:normal;margin:0;text-transform:none}.status-checkboxes{display:flex;flex-direction:column;gap:6px}.status-checkboxes .filter-checkbox{font-size:12px;height:28px;margin-bottom:0;padding:4px 8px;pointer-events:auto;position:relative}.status-checkboxes .filter-checkbox input[type=checkbox]{cursor:pointer;height:13px;pointer-events:auto;position:relative;width:13px;z-index:2}.status-checkboxes .filter-checkbox label{cursor:pointer;font-size:12px;font-weight:500;pointer-events:auto}.filter-group .btn-primary,.filter-group .btn-secondary{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:4px;height:32px;padding:6px 12px;transition:all .2s ease}.filter-group .btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.filter-group .btn-primary:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px)}.filter-group .btn-secondary{background:#6c757d;color:#fff}.filter-group .btn-secondary:hover{background:#5a6268;transform:translateY(-1px)}@media (max-width:768px){.filters-grid{gap:8px;grid-template-columns:1fr 1fr}.filter-actions{flex-direction:row;justify-content:space-between}.filter-actions button{flex:1 1;justify-content:center}.otc-filters{padding:10px 12px}}@media (max-width:480px){.filters-grid{gap:6px;grid-template-columns:1fr}.filter-group input[type=date],.filter-group input[type=text],.filter-group select{font-size:12px;height:28px;padding:5px 8px}.filter-checkbox{height:28px;padding:5px 8px}.filter-actions{flex-direction:column;gap:6px}.filter-actions button{padding:8px 12px}}.otc-trades{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.otc-trades h3{background:#f8f9fa;border-bottom:1px solid #e0e0e0;color:#333;font-size:18px;margin:0;padding:20px}.trades-table-container{border:1px solid #e0e0e0;box-shadow:0 2px 4px #0000001a;max-height:70vh;overflow:auto;position:relative;transition:box-shadow .2s ease;-webkit-user-select:none;user-select:none}.trades-table-container:hover{box-shadow:0 4px 8px #00000026}.trades-table-container:active{box-shadow:0 2px 4px #0003}.trades-table-container::-webkit-scrollbar{height:8px}.trades-table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.trades-table-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.trades-table-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.trades-table-container[style*=grabbing]{box-shadow:0 4px 12px #0003}.trades-table{font-size:10px}.trades-table th{background:#f8f9fa;border-bottom:1px solid #e0e0e0;color:#333;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;z-index:2}.trades-table th:hover{background:#e9ecef}.resize-handle{background:#0000;cursor:col-resize;height:100%;position:absolute;right:0;top:0;transition:background .2s;width:5px;z-index:3}.resize-handle:hover{background:#3498db}.resize-handle:active{background:#2980b9}.action-dropdown{display:inline-flex;justify-content:center;position:relative}.action-dropdown-trigger{background:#0000;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:1px;line-height:1;padding:4px 6px;transition:all .2s ease}.action-dropdown-trigger:hover{background:#e9ecef;color:#333}.action-dropdown-menu{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:170px;padding:4px 0;position:fixed;z-index:9999}.action-dropdown-menu button{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 14px;text-align:left;transition:background .15s ease;white-space:nowrap;width:100%}.action-dropdown-menu button:hover{background:#f0f4f8}.action-dropdown-menu button.danger{color:#dc3545}.action-dropdown-menu button.danger:hover{background:#fff5f5}.trades-table td{border-bottom:1px solid #f0f0f0;line-height:1.2;overflow:hidden;padding:2px 4px;text-overflow:ellipsis}.trades-table tbody tr:hover{background-color:#f8f9fa}.trades-table tbody tr.outstanding:hover{background-color:#ffeda0}.trades-table tbody tr.settled:hover{background-color:#b8e6c1}.trades-table tbody tr.partially-settled:hover{background-color:#ffeda0}.trade-row.outstanding{background-color:#fff3cd}.trade-row.settled{background-color:#d4edda}.status-badge{border-radius:8px;font-size:9px;line-height:1.3;padding:1px 4px}.status-badge.outstanding{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-badge.settled{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.settled-date{color:#666;font-size:12px;font-style:italic}.btn-primary{background-color:#007bff;font-weight:500;padding:10px 20px;transition:background-color .2s}.btn-primary:hover{background-color:#0056b3}.btn-primary:disabled{background-color:#adb5bd;color:#f1f3f5;opacity:.7}.btn-primary:disabled:hover{background-color:#adb5bd;transform:none}.btn-secondary{background-color:#6c757d;padding:10px 20px;transition:background-color .2s}.btn-secondary.active{background-color:#3b82f6;box-shadow:0 2px 6px #3b82f64d;color:#fff}.tabs .btn-secondary.active{background:linear-gradient(135deg,#1e40af,#3b82f6)!important;border:2px solid #1e3a8a!important;box-shadow:0 3px 10px #1e40af59;color:#fff!important;transform:translateY(-1px)}.tabs .btn-secondary:not(.active):hover{background-color:#5b6470}.btn-secondary:hover{background-color:#545b62}.btn-secondary:disabled{background-color:#adb5bd}.btn-small{padding:6px 12px}.btn-success{background-color:#28a745}.btn-success:hover{background-color:#218838}.pagination{background:#f8f9fa;border-radius:0 0 8px 8px;border-top:1px solid #e0e0e0;flex-wrap:wrap;gap:15px;justify-content:space-between;padding:20px}.pagination-size-selector{align-items:center;color:#666;display:flex;font-size:14px;gap:8px}.pagination-size-selector label{font-weight:500}.pagination-size-select{background:#fff;border:1px solid #ced4da;border-radius:4px;cursor:pointer;font-size:14px;padding:4px 8px;transition:border-color .2s ease}.pagination-size-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.pagination-controls{flex:1 1;gap:15px}.page-info{font-size:14px}.loading{font-size:16px}@media (max-width:768px){.otc-header{align-items:flex-start;flex-direction:column;gap:15px}.header-buttons{align-self:flex-end;flex-shrink:0}.form-row{grid-template-columns:1fr}.trades-table{font-size:12px}.trades-table td,.trades-table th{padding:8px 10px}.pagination{align-items:stretch;flex-direction:column;gap:15px}.pagination-controls,.pagination-size-selector{justify-content:center}.pagination-controls{flex:none}}.action-buttons{align-items:center;flex-wrap:wrap;gap:3px}.btn-small{align-items:center;border-radius:3px;display:flex;font-size:10px;height:20px;justify-content:center;min-width:20px;padding:2px 4px;transition:all .3s ease}.btn-edit{background-color:#007bff;color:#fff}.btn-edit:hover{background-color:#0056b3}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-info{background-color:#17a2b8;color:#fff}.btn-info:hover{background-color:#138496}.btn-info[title*=Clipboard]{background-color:#6c757d;border:1px solid #6c757d}.btn-info[title*=Clipboard]:hover{background-color:#5a6268;border-color:#545b62;transform:translateY(-1px)}.trade-row.deleted{background-color:#f8f9fa;opacity:.7;text-decoration:line-through}.status-badge.deleted{background-color:#6c757d;color:#fff}.modal-overlay{background-color:#00000080}.modal{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-height:80vh;max-width:500px;overflow-y:auto;padding:20px;width:90%}.modal h3{border-bottom:1px solid #eee;color:#333;margin-top:0;padding-bottom:10px}.modal-actions{border-top:1px solid #eee;padding-top:15px}.audit-modal{max-width:700px;width:95%}.audit-log{background-color:#f8f9fa;max-height:400px;overflow-y:auto}.audit-entry,.audit-log{border:1px solid #ddd;border-radius:4px;padding:10px}.audit-entry{background:#fff;margin-bottom:10px}.audit-entry:last-child{margin-bottom:0}.audit-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.audit-action{border-radius:4px;font-size:12px;font-weight:700;padding:2px 8px;text-transform:uppercase}.audit-action.created{background-color:#28a745;color:#fff}.audit-action.updated{background-color:#007bff;color:#fff}.audit-action.deleted{background-color:#dc3545;color:#fff}.audit-action.restored{background-color:#17a2b8;color:#fff}.audit-timestamp{color:#666;font-family:monospace;font-size:12px}.audit-details{color:#555;font-size:13px}.audit-details p{margin:4px 0}.settled-date{background-color:#d4edda;border-radius:2px;color:#28a745;font-size:9px;font-weight:700;margin-left:2px;padding:1px 2px}.filter-group label{align-items:center;display:flex;gap:5px}.filter-group input[type=checkbox]{margin-right:5px}.otc-form-container h3{border-bottom:2px solid #007bff;color:#333;margin-bottom:15px;padding-bottom:5px}.trades-table td:nth-child(2),.trades-table th:nth-child(2){text-align:center;width:150px}@media (max-width:768px){.action-buttons{flex-direction:column;gap:3px}.btn-small{justify-content:flex-start;padding:6px 10px;width:100%}.modal{margin:10px;width:95%}.audit-modal{width:98%}}.loading{color:#666;padding:20px}.error-message{background-color:#fde8e8;color:#111827;margin:12px 0;padding:12px 16px}.status-badge{font-weight:700;padding:4px 8px}.status-badge.outstanding{background-color:#ffc107;color:#212529}.status-badge.settled{background-color:#28a745;color:#fff}.status-badge.partially-settled{background-color:#ffc107;color:#212529}.trade-row.partially-settled{background-color:#fff3cd}@media (max-width:768px){.form-modal-overlay{align-items:flex-start;padding:5vh 10px 10px}.otc-form-container{max-height:85vh}.otc-form{gap:12px;grid-template-columns:1fr;padding:16px}.form-group.full-width{grid-column:1}.form-group input:not([type=checkbox]),.form-group select,.form-group textarea{font-size:16px;min-height:44px;padding:10px 12px}.form-header{padding:14px 16px}.form-close-btn{font-size:28px;height:44px;width:44px}.form-actions{flex-direction:column;gap:10px;padding:16px}.form-actions button{font-size:16px;justify-content:center;min-height:48px;width:100%}.trades-table-container{-webkit-overflow-scrolling:touch}.action-dropdown-trigger{min-height:44px;min-width:44px;padding:8px 10px}.action-dropdown-menu button{font-size:15px;min-height:48px;padding:12px 16px}.pagination button{min-height:44px;min-width:44px}.pagination-size-select{font-size:16px;min-height:44px}}@media (max-width:480px){.form-modal-overlay{padding:2vh 5px 5px}.otc-form-container{border-radius:8px;max-height:92vh}.otc-form{gap:10px;padding:12px}.form-header h3{font-size:16px}.form-group label{font-size:11px}.form-actions button{min-height:52px}.otc-header h2{font-size:18px}.header-buttons{flex-direction:column;width:100%}.header-buttons button{min-height:44px;width:100%}}.settlement-actions{align-items:center;display:flex;gap:5px}.settlement-btn{background:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:10px;padding:2px 6px;transition:background-color .2s}.settlement-btn:hover{background:#0056b3}.settlement-btn.danger{background:#dc3545}.settlement-btn.danger:hover{background:#c82333}.settlement-btn:disabled{background:#6c757d;cursor:not-allowed}.settlement-item{align-items:center;border-bottom:1px solid #eee;display:flex;font-size:12px;justify-content:space-between;padding:5px 0}.settlement-item:last-child{border-bottom:none}.settlement-details{flex:1 1}.settlement-details strong{color:#495057}.settlement-notes{color:#666;font-style:italic;margin-top:2px}.status-selection{display:flex;flex-direction:column;gap:12px}.status-badges{display:flex;flex-wrap:wrap;gap:8px;min-height:32px}.status-badge-filter{align-items:center;animation:badgeSlideIn .2s ease-out;background:#3b82f6;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#fff;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}@keyframes badgeSlideIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.remove-badge{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:18px;justify-content:center;line-height:1;margin:0;padding:0;transition:background-color .2s;width:18px}.remove-badge:hover{background:#fff3}.status-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s}.status-dropdown:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.status-dropdown:hover{border-color:#9ca3af}.options-selection{display:flex;flex-direction:column;gap:8px}.option-toggle{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;justify-content:flex-start;min-width:200px;padding:8px 16px;transition:all .2s}.option-toggle:hover{background:#f8fafc;border-color:#3b82f6}.option-toggle.active{background:#eff6ff;border-color:#3b82f6;color:#1e40af}.option-toggle:focus{box-shadow:0 0 0 2px #3b82f633;outline:none}@media (max-width:768px){.status-badges{gap:6px}.status-badge-filter{font-size:12px;padding:4px 8px}.option-toggle{font-size:13px;min-width:auto;padding:6px 12px}}.confirmed-icon{background:#10b981}.confirmed-icon,.rejected-icon{align-items:center;border-radius:50%;color:#fff;display:inline-flex;font-size:14px;font-weight:700;height:22px;justify-content:center;width:22px}.rejected-icon{background:#ef4444}.pending-icon{align-items:center;background:#f3f4f6;border:2px solid #d1d5db;border-radius:50%;color:#9ca3af;display:inline-flex;font-size:16px;font-weight:700;height:22px;justify-content:center;width:22px}.trade-row.unconfirmed{background-color:#fffbeb!important}.trade-row.unconfirmed:hover{background-color:#fef3c7!important}.trade-row.client-rejected{background-color:#fef2f2!important}.trade-row.client-rejected:hover{background-color:#fee2e2!important}.valr-lending{margin:0 auto;max-width:1400px;padding:20px}.lending-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.lending-header h1{color:#2c3e50;font-size:28px;margin:0}.header-buttons{display:flex;gap:10px}.account-selector-section{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:15px;margin-bottom:20px;padding:15px 20px}.account-label{color:#2c3e50;font-size:16px;margin:0}.account-select{background:#fff;border:2px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:15px;min-width:200px;padding:10px 15px;transition:all .2s ease}.account-select:hover{border-color:#adb5bd}.account-select:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.account-badge{color:#fff;font-size:13px;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.account-revenue-section{background:#f8f9fa;border-radius:8px;margin-bottom:30px;padding:20px}.account-revenue-section h4{color:#2c3e50;font-size:20px;margin-top:0}.account-revenue-section h5{color:#495057;font-size:16px;margin-top:0}.account-total{align-items:center;background:#fff;border-radius:6px;color:#495057;display:flex;font-size:14px;justify-content:space-between;margin-top:15px;padding:12px 15px}.btn-refresh,.btn-revenue-stats,.btn-telegram{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .3s ease}.btn-refresh{background:#3498db}.btn-refresh:hover:not(:disabled){background:#2980b9;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-revenue-stats{background:#9b59b6}.btn-revenue-stats:hover:not(:disabled){background:#8e44ad;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-telegram{background:#27ae60}.btn-telegram:hover:not(:disabled){background:#229954;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-refresh:disabled,.btn-revenue-stats:disabled,.btn-telegram:disabled{cursor:not-allowed;opacity:.6}.alert{animation:slideDown .3s ease;border-radius:8px;font-size:14px;line-height:1.6;margin-bottom:20px;padding:15px 20px;white-space:pre-line}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background:#fee;border-left:4px solid #c33;color:#c33}.alert-success{background:#efe;border-left:4px solid #3c3;color:#3c3}.lending-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:25px;padding:25px}.lending-section h2{color:#34495e;font-size:20px;margin:0 0 20px}.balances-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:10px}.balance-card{background:linear-gradient(135deg,#2ecc71,#27ae60);border-radius:10px;box-shadow:0 4px 12px #00000026;color:#fff;padding:20px;transition:transform .3s ease}.balance-card:hover{transform:translateY(-4px)}.balance-currency{border-bottom:2px solid #ffffff4d;font-size:24px;font-weight:700;margin-bottom:15px;padding-bottom:10px;text-align:center}.balance-available,.balance-lent,.balance-total{align-items:center;display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.balance-label{font-weight:500;opacity:.9}.balance-value{font-size:16px}.balance-value.total{color:gold;font-size:18px}.balance-total{border-top:2px solid #ffffff4d;margin-top:10px;padding-top:10px}.available-balance{color:#3498db!important;display:block;font-weight:600!important;margin-top:5px}.lending-rates-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.lending-rate-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;padding:20px;text-align:center;transition:transform .3s ease}.lending-rate-card:hover{transform:translateY(-4px)}.lending-rate-currency{font-size:18px;font-weight:700;margin-bottom:10px}.lending-rate-value{font-size:28px;font-weight:700;margin-bottom:5px}.lending-rate-hourly{font-size:12px;opacity:.9}.table-container{margin-bottom:20px;overflow-x:auto}.loans-table{border-collapse:collapse;font-size:14px;width:100%}.loans-table thead{background:#34495e;color:#fff}.loans-table td,.loans-table th{border-bottom:1px solid #e0e0e0;padding:12px 15px;text-align:left}.loans-table th{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.loans-table tbody tr{transition:background .2s ease}.loans-table tbody tr:hover{background:#f8f9fa}.loans-table tbody tr.loan-unlocking{background:#fff3cd;border-left:4px solid #ffc107}.loans-table tbody tr.loan-unlocking:hover{background:#ffe9a3}.actions-cell{display:flex;gap:8px}.btn-action{border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:6px 12px;transition:all .2s ease}.btn-action:hover{transform:scale(1.1)}.btn-rate{background:#3498db}.btn-rate:hover{background:#2980b9}.btn-increase{background:#2ecc71}.btn-increase:hover{background:#27ae60}.btn-unlock{background:#e74c3c}.btn-unlock:hover{background:#c0392b}.btn-history{background:#9b59b6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px;transition:all .2s ease}.btn-history:hover{background:#8e44ad;transform:scale(1.05)}.no-loans{color:#7f8c8d;font-size:16px;padding:40px;text-align:center}.totals-summary{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;padding:20px}.totals-summary h3{color:#2c3e50;font-size:16px;margin:0 0 15px}.total-row{display:flex;gap:20px;padding:8px 0}.total-currency{color:#2c3e50;font-weight:700;min-width:60px}.create-loan-form{grid-gap:20px;align-items:end;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group input,.form-group select{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus{border-color:#3498db;outline:none}.form-group small{color:#7f8c8d;font-size:12px;margin-top:5px}.rate-preview{color:#3498db;font-weight:600}.rate-guidance-info{color:#7f8c8d!important;display:block;font-size:12px;font-style:italic;line-height:1.4;margin-top:5px}.btn-primary{background:#27ae60;border-radius:6px;font-size:14px;padding:12px 24px;transition:all .3s ease}.btn-primary:hover:not(:disabled){background:#229954;box-shadow:0 4px 12px #27ae6066}.btn-secondary{border:none;border-radius:6px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-danger{background:#e74c3c}.btn-danger:hover:not(:disabled){background:#c0392b;box-shadow:0 4px 12px #e74c3c66}.modal-overlay{animation:fadeIn .3s ease}.modal-content{animation:slideUp .3s ease;box-shadow:0 10px 40px #0000004d;min-width:400px}.modal-wide{max-width:900px!important;min-width:700px!important}.modal-content h3{color:#2c3e50;font-size:22px}.modal-content p{color:#555;margin:10px 0}.info-text{background:#e8f4f8;border-radius:6px;color:#2c3e50;font-weight:600;padding:10px}.info-note{background:#fff3cd;border-left:4px solid #ffc107;color:#856404;font-size:14px;margin:10px 0;padding:10px 15px}.modal-actions{margin-top:25px}.history-summary{background:#f8f9fa;border-left:4px solid #9b59b6;border-radius:8px;display:flex;gap:20px;margin:15px 0;padding:15px}.summary-item{flex:1 1;gap:5px}.summary-item span{color:#7f8c8d;font-size:14px}.summary-item strong{color:#2c3e50;font-size:20px}.summary-item.highlight strong{color:#27ae60;font-size:22px}.history-table-container{margin:20px 0;max-height:400px;overflow-x:auto;overflow-y:auto}.history-table{border-collapse:collapse;font-size:13px;width:100%}.history-table thead{background:#34495e;color:#fff;position:sticky;top:0;z-index:10}.history-table td,.history-table th{border-bottom:1px solid #e0e0e0;padding:10px 12px;text-align:left}.history-table th{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.history-table tbody tr:hover{background:#f8f9fa}.interest-cell{color:#27ae60;font-weight:700}.status-badge{align-items:center;display:inline-flex;gap:4px;padding:6px 12px;white-space:nowrap}.status-in-use{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-unlocking{animation:pulse 2s ease-in-out infinite;background:#fff3cd;border:1px solid #ffc107;color:#856404}.status-unused{background:#e2e3e5;border:1px solid #d6d8db;color:#383d41}.status-badge.active{background:#d4edda;color:#155724}.status-badge.completed{background:#cce5ff;color:#004085}.status-badge.cancelled{background:#f8d7da;color:#721c24}.revenue-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:20px 0}.revenue-currency-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#fff;padding:20px}.revenue-currency-card h4{font-size:24px;font-weight:700;margin:0 0 15px;text-align:center;text-shadow:0 2px 4px #0003}.revenue-item{border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:10px 0}.revenue-item.highlight{background:#ffffff26;border:none;border-radius:6px;font-weight:700;margin-top:5px;padding:12px 10px}.revenue-label{font-size:14px;opacity:.9}.revenue-value{font-size:16px;font-weight:700}.revenue-item-small{font-size:12px;margin-top:10px;opacity:.8;text-align:center}.revenue-zar-equiv{align-items:center;background:#ffffff40;border:1px solid #ffffff4d;border-radius:6px;display:flex;justify-content:space-between;margin-top:8px;padding:10px}.zar-equiv-label{font-size:13px;font-weight:600;opacity:.95}.zar-equiv-value{font-size:15px;font-weight:700}.revenue-summary{background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;margin-top:25px;padding:25px}.revenue-summary h4{color:#2c3e50;font-size:20px;margin:0 0 20px;text-align:center}.summary-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;padding:15px}.summary-item.highlight{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #64b5f6;box-shadow:0 4px 15px #1565c033;color:#1565c0;font-weight:700;transform:scale(1.05)}.summary-label{font-size:14px;margin-bottom:8px;opacity:.8}.summary-item.highlight .summary-label{color:#1565c0;font-weight:700;opacity:1}.summary-value{font-size:24px;font-weight:700}@media (max-width:768px){.valr-lending{padding:15px}.lending-header{align-items:flex-start;flex-direction:column;gap:15px}.lending-header h1{font-size:22px}.balances-grid,.create-loan-form,.lending-rates-grid{grid-template-columns:1fr}.table-container{overflow-x:scroll}.loans-table{font-size:12px}.loans-table td,.loans-table th{padding:8px 10px}.actions-cell{flex-direction:column;gap:4px}.modal-content{min-width:90%;padding:20px}.modal-wide{min-width:95%!important}.history-summary{flex-direction:column}.history-table{font-size:11px}.history-table td,.history-table th{padding:6px 8px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.revenue-stats-grid,.summary-grid{grid-template-columns:1fr}.total-row{flex-direction:column;gap:5px}}@media (max-width:480px){.lending-header h1{font-size:18px}.lending-section{padding:15px}.btn-refresh,.btn-revenue-stats,.btn-telegram{min-height:44px;width:100%}.header-buttons{flex-direction:column;gap:8px;width:100%}}@media (max-width:768px){.account-select,.create-loan-form input,.create-loan-form select,.modal-content input,.modal-content select{font-size:16px;min-height:44px;padding:10px 12px}.btn-action,.btn-cancel,.btn-redeem,.btn-refresh,.btn-revenue-stats,.btn-telegram{min-height:44px;padding:10px 16px}.actions-cell button{min-height:36px;min-width:36px;padding:6px 10px}.table-container{-webkit-overflow-scrolling:touch;position:relative}.modal-content{max-height:85vh;overflow-y:auto}.modal-actions button{font-size:16px;min-height:48px}}.settings-container{margin:0 auto;max-width:900px;padding:20px}.settings-header{border-bottom:2px solid #3498db;margin-bottom:30px;padding-bottom:15px}.settings-header h1{color:#2c3e50;font-size:28px;margin:0}.settings-message{animation:slideIn .3s ease-out;border-radius:8px;font-weight:500;margin-bottom:20px;padding:12px 20px}.settings-message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.settings-message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.settings-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:25px}.settings-section h2{align-items:center;color:#2c3e50;display:flex;font-size:22px;gap:10px;margin:0 0 20px}.settings-section h3{color:#34495e;font-size:18px;margin:0 0 15px}.current-rate-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.current-rate-section h2{color:#fff}.current-rate-display{padding:20px 0;text-align:center}.rate-value{align-items:center;display:flex;gap:15px;justify-content:center;margin-bottom:10px}.rate-number{font-size:36px;font-weight:700}.rate-unavailable{font-size:24px;opacity:.8}.rate-source-badge{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.weekend-indicator{background-color:#fff3;border-radius:20px;display:inline-block;font-size:14px;padding:8px 16px}.setting-item{border:1px solid #e1e8ed;border-radius:8px;margin-bottom:15px;padding:20px;transition:all .3s ease}.setting-item:hover{border-color:#3498db;box-shadow:0 2px 8px #3498db1a}.setting-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.setting-header label,.setting-label{align-items:center;color:#2c3e50;display:flex;font-size:18px;font-weight:600;gap:8px}.setting-icon{font-size:24px}.setting-description{color:#7f8c8d;font-size:14px;line-height:1.6;margin:10px 0}.toggle-switch{cursor:pointer;height:30px;width:60px}.toggle-switch input{cursor:pointer;height:100%;position:absolute;width:100%;z-index:2}.toggle-slider{border-radius:30px}.toggle-slider:before{bottom:4px;height:22px;left:4px;width:22px}.toggle-switch input:checked+.toggle-slider{background-color:#27ae60}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(30px)}.manual-rate-form{margin-top:15px}.manual-rate-input-group{display:flex;gap:10px}.manual-rate-input{border:2px solid #ddd;border-radius:8px;flex:1 1;font-size:16px;padding:12px 16px;transition:border-color .3s}.manual-rate-input:focus{border-color:#3498db;outline:none}.manual-rate-input:disabled{background-color:#f8f9fa;cursor:not-allowed}.btn{font-size:16px}.btn-primary{background-color:#3498db}.btn-primary:hover{background-color:#2980b9;box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.btn-secondary:hover{background-color:#7f8c8d}.weekdays-only-badge{background-color:#f39c12;border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;margin-left:10px;padding:4px 10px;text-transform:uppercase}.weekday-notice{background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-top:15px;padding:15px}.weekday-notice p{color:#856404;margin:5px 0}.current-manual-rate{background-color:#e8f5e9;border:1px solid #4caf50;border-radius:8px;color:#2e7d32;margin-top:15px;padding:15px}.current-manual-rate strong{color:#1b5e20}.current-manual-rate small{color:#558b2f}.info-section{background-color:#f8f9fa;border-left:4px solid #3498db}.priority-list{color:#34495e;line-height:1.8;padding-left:20px}.priority-list li{margin-bottom:12px}.priority-list strong{color:#2c3e50}.beneficiary-selector{display:flex;flex-direction:column;gap:12px;margin-top:15px}.beneficiary-option{align-items:center;background:#fafbfc;border:2px solid #e1e8ed;border-radius:10px;cursor:pointer;display:flex;gap:15px;padding:16px 20px;transition:all .2s ease}.beneficiary-option:hover{background:#f0f2ff;border-color:#667eea}.beneficiary-option.selected{background:linear-gradient(135deg,#f0f2ff,#e8ebff);border-color:#667eea;box-shadow:0 2px 8px #667eea33}.beneficiary-radio{flex-shrink:0}.beneficiary-radio input[type=radio]{accent-color:#667eea;cursor:pointer;height:20px;width:20px}.beneficiary-details{flex:1 1}.beneficiary-name{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:4px}.beneficiary-account{color:#7f8c8d;font-size:14px}.beneficiary-account .account-number{color:#667eea;font-family:Monaco,Consolas,monospace;font-weight:500}.beneficiary-account .bank-name{color:#95a5a6;margin-left:8px}.beneficiary-check{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:28px;justify-content:center;width:28px}@media (max-width:768px){.settings-container{padding:15px}.settings-header h1{font-size:24px}.rate-number{font-size:28px}.manual-rate-input-group{flex-direction:column;gap:10px}.manual-rate-input-group input{font-size:16px;min-height:44px}.btn{min-height:44px;width:100%}.setting-header{align-items:flex-start;flex-direction:column;gap:15px}.beneficiary-option{min-height:48px;padding:14px 16px}.beneficiary-name{font-size:14px}.beneficiary-account{font-size:12px}.toggle-switch{min-height:28px;min-width:50px}.setting-item{padding:16px}.settings-section{padding:18px}}@media (max-width:480px){.settings-header h1{font-size:20px}.settings-section h2{font-size:18px}.rate-number{font-size:24px}.setting-item{padding:14px}.btn{font-size:16px;min-height:48px}}.email-alerts-container{margin:0 auto;max-width:900px;padding:20px}.email-alerts-header{border-bottom:2px solid #9b59b6;margin-bottom:30px;padding-bottom:15px}.email-alerts-header h1{color:#2c3e50;font-size:28px;margin:0 0 8px}.email-alerts-subtitle{color:#7f8c8d;font-size:14px;margin:0}.email-alerts-message{animation:slideIn .3s ease-out;border-radius:8px;font-weight:500;margin-bottom:20px;padding:12px 20px}.email-alerts-message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.email-alerts-message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.email-service-warning{background-color:#fff3cd;border:1px solid #ffc107;border-radius:10px;display:flex;gap:15px;margin-bottom:20px;padding:20px}.email-service-warning .warning-icon{flex-shrink:0;font-size:28px}.email-service-warning strong{color:#856404;display:block;margin-bottom:5px}.email-service-warning p{color:#856404;font-size:14px;line-height:1.5;margin:0}.email-alerts-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:25px}.section-header{justify-content:space-between;margin-bottom:10px}.section-header,.section-title{align-items:center;display:flex}.section-title{gap:10px}.section-icon{font-size:24px}.section-title h2{color:#2c3e50;font-size:22px;margin:0}.section-description{color:#7f8c8d;line-height:1.6;margin:0 0 20px}.toggle-switch-btn{background-color:#ccc;border:none;border-radius:30px;cursor:pointer;flex-shrink:0;height:30px;position:relative;transition:background-color .2s ease-in-out;width:60px}.toggle-switch-btn:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:22px;left:4px;position:absolute;top:4px;transition:transform .2s ease-in-out;width:22px}.toggle-switch-btn.on{background-color:#27ae60}.toggle-switch-btn.on:after{transform:translateX(30px)}.toggle-switch-btn:disabled{cursor:not-allowed;opacity:.5}.recipients-section{background:#f8f9fa;border-radius:8px;margin-top:15px;padding:15px}.recipients-section label{color:#2c3e50;display:block;font-weight:600;margin-bottom:8px}.recipients-section textarea{border:2px solid #ddd;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;min-height:80px;padding:12px;resize:vertical;transition:border-color .3s;width:100%}.recipients-section textarea:focus{border-color:#9b59b6;outline:none}.recipients-section textarea:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.recipients-actions{display:flex;gap:10px;margin-top:15px}.btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:#9b59b6}.btn-primary:hover:not(:disabled){background-color:#8e44ad;box-shadow:0 4px 12px #9b59b64d}.btn-secondary{background-color:#95a5a6}.btn-secondary:hover:not(:disabled){background-color:#7f8c8d}.btn-action{background-color:#27ae60;color:#fff}.btn-action:hover:not(:disabled){background-color:#219a52;box-shadow:0 4px 12px #27ae604d;transform:translateY(-2px)}.time-section{background:#f8f9fa;border-radius:8px;margin-top:20px;padding:15px}.time-section label{color:#2c3e50;display:block;font-weight:600;margin-bottom:8px}.time-input-row{align-items:center;display:flex;gap:10px}.time-input{border:2px solid #ddd;border-radius:8px;font-family:inherit;font-size:16px;padding:10px 15px;transition:border-color .3s;width:120px}.time-input:focus{border-color:#9b59b6;outline:none}.time-input:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.interval-select{background-color:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;font-family:inherit;font-size:14px;min-width:180px;padding:10px 15px}.interval-select:focus{border-color:#9b59b6;outline:none}.interval-select:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.time-hint{color:#7f8c8d;font-size:12px;margin:8px 0 0}.email-alerts-container .channels-grid input[type=checkbox]{accent-color:#007bff!important;-webkit-appearance:checkbox!important;appearance:checkbox!important;cursor:pointer!important;height:18px!important;margin:0!important;padding:0!important;pointer-events:auto!important;position:relative!important;width:18px!important;z-index:10!important}.email-alerts-container .channel-checkbox{cursor:pointer}.email-alerts-container .channel-checkbox:has(input:disabled){cursor:not-allowed;opacity:.7}.run-now-section{background:#e8f8f0;border:1px dashed #27ae60;border-radius:8px;margin-top:20px;padding:15px}.run-now-hint{color:#7f8c8d;font-size:12px;margin:10px 0 0}.email-alerts-info{background-color:#f8f9fa;border-left:4px solid #9b59b6;border-radius:10px;padding:25px}.email-alerts-info h3{color:#2c3e50;font-size:18px;margin:0 0 15px}.email-alerts-info ul{color:#34495e;line-height:1.8;margin:0 0 15px;padding-left:20px}.email-alerts-info li{margin-bottom:8px}.email-alerts-info strong{color:#2c3e50}.info-note{background:#e8e8f0;border-radius:6px;line-height:1.5}@media (max-width:768px){.email-alerts-container{padding:15px}.email-alerts-header h1{font-size:24px}.section-header{align-items:flex-start;gap:15px}.recipients-actions,.section-header{flex-direction:column}.btn{width:100%}.email-service-warning{flex-direction:column;text-align:center}}.chme-book-container{margin:0 auto;max-width:1400px;padding:2rem}.chme-book-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.chme-book-header h2{color:#1a1a2e;font-size:1.8rem;margin:0}.header-actions{align-items:center;display:flex;gap:1rem}.refresh-button{align-items:center;border-radius:50%;display:flex;font-size:1.2rem;height:40px;justify-content:center;transition:transform .3s ease,box-shadow .3s ease;width:40px}.refresh-button:hover:not(:disabled){transform:scale(1.1)}.refresh-button.refreshing{animation:spin 1s linear infinite}.last-update{color:#666;font-size:.9rem;font-style:italic}.error-message{align-items:center;border:1px solid #fcc;color:#c00;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:1rem}.error-icon{font-size:1.2rem}.chme-position-monitor{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:18px 18px 14px}.chme-position-monitor .chme-position-header{border-bottom:1px solid #e5e7eb;margin-bottom:14px;padding-bottom:12px}.chme-position-monitor .chme-position-header h3{color:#111827;font-size:18px;font-weight:700;margin:0}.chme-position-monitor .chme-position-actions{gap:10px}.chme-position-monitor .chme-position-btn{align-items:center;border-radius:8px;box-shadow:none;display:inline-flex;font-size:14px;font-weight:700;gap:8px;height:40px;justify-content:center;padding:0 14px;transform:none}.chme-position-monitor .refresh-button{background:linear-gradient(135deg,#6366f1,#4f46e5);width:auto}.chme-position-monitor .download-button{background:linear-gradient(135deg,#3b82f6,#2563eb)}.chme-position-monitor .last-update{color:#6b7280;font-size:12px;font-style:normal}.chme-position-monitor .position-cards{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:14px}.chme-position-monitor .position-row{display:contents}.chme-position-monitor .position-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000f;padding:14px 14px 12px;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.chme-position-monitor .position-card:hover{border-color:#c7d2fe;box-shadow:0 6px 18px #4f46e51a;transform:translateY(-1px)}.chme-position-monitor .card-label{color:#6b7280;font-size:12px;font-weight:800;letter-spacing:.08em;margin-bottom:8px;opacity:1;text-transform:uppercase}.chme-position-monitor .card-value{color:#111827;font-size:24px;font-weight:800;margin-bottom:6px;text-shadow:none}.chme-position-monitor .card-cell{color:#9ca3af;font-size:12px;font-style:normal;opacity:1}.chme-position-monitor .position-card.positive{border-left:4px solid #10b981}.chme-position-monitor .position-card.negative{border-left:4px solid #ef4444}.chme-position-monitor .position-card.negative .card-value{color:#dc2626}.chme-position-monitor .info-footer{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;text-align:left}.chme-position-monitor .info-footer p{color:#6b7280;font-size:13px;margin:4px 0}@media (max-width:768px){.chme-position-monitor{padding:14px 12px 10px}.chme-position-monitor .chme-position-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.chme-position-monitor .chme-position-btn{flex:1 1 auto;min-width:160px}}.position-cards{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.position-row{grid-gap:1.5rem;display:grid;gap:1.5rem}.position-row.row-1,.position-row.row-2,.position-row.row-3{grid-template-columns:1fr 1fr}.position-card{border:2px solid #0000;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:2rem;transition:transform .2s ease,box-shadow .2s ease}.position-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.card-label{color:#fff;font-size:.85rem;font-weight:600;letter-spacing:1px;margin-bottom:1rem;opacity:.9;text-transform:uppercase}.card-value{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px #0000001a;word-break:break-word}.card-cell{color:#fff;font-size:.75rem;font-style:italic;opacity:.7}.position-card{background:linear-gradient(135deg,#475569,#334155);border:none}.pnl-card.positive{background:linear-gradient(135deg,#10b981,#059669)}.pnl-card.negative{background:linear-gradient(135deg,#ef4444,#dc2626)}.position-card.negative .card-value{color:#ff6b6b!important;font-weight:800}.position-card.positive .card-value{color:#fff}.info-footer{background:#f8f9fa;border-radius:8px;padding:1.5rem;text-align:center}.info-footer p{color:#666;font-size:.9rem;margin:.5rem 0}.loading-spinner{border:4px solid #f3f3f3;height:50px;margin:2rem auto;width:50px}@media (max-width:768px){.chme-book-container{padding:1rem}.chme-book-header{align-items:flex-start;flex-direction:column;gap:1rem}.chme-book-header h2{font-size:1.5rem}.position-row.row-1,.position-row.row-2,.position-row.row-3{grid-template-columns:1fr}.card-value{font-size:1.8rem}}.chme-book-main-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.chme-book-main-header h2{color:#1a1a2e;font-size:2rem;margin:0}.chme-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:.5rem;margin-bottom:2rem}.tab-button{color:#666;font-size:1rem;padding:1rem 1.5rem;transition:all .3s ease}.tab-button:hover{color:#667eea}.tab-button.active,.tab-button:hover{background:#667eea0d}.chme-tab-content{animation:fadeIn .3s ease-in}.trade-history{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:2rem}.trade-history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.trade-history-header h3{color:#1a1a2e;font-size:1.5rem;margin:0}.download-button{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.download-button:hover:not(:disabled){box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.download-button:disabled{cursor:not-allowed;opacity:.6}.import-button{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.import-button:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.import-button:disabled{cursor:not-allowed;opacity:.6}.clear-button{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.clear-button:hover:not(:disabled){box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.clear-button:disabled{cursor:not-allowed;opacity:.6}.refresh-button{background:linear-gradient(135deg,#667eea,#764ba2)}.refresh-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66}.position-monitor .refresh-button{border-radius:50%;height:40px;padding:0;width:40px}.filters-section{background:#f8f9fa;gap:1rem;margin-bottom:2rem;padding:1.5rem}.filter-group{gap:.5rem}.filter-group label{color:#333;font-size:.9rem}.filter-group input,.filter-group select{border:1px solid #ddd;border-radius:4px;font-size:.9rem;min-width:150px;padding:.5rem}.clear-filters-button{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s ease}.clear-filters-button:hover{background:#5a6268}.stats-summary{grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1rem}.stat-card{box-shadow:0 2px 6px #0000001a;padding:.75rem 1rem}.stat-header{color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.5px;margin-bottom:.5rem;text-shadow:0 1px 2px #0003;text-transform:uppercase}.stat-row{align-items:center;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:.25rem 0}.stat-row:last-child{border-bottom:none}.stat-label{color:#fff;font-size:.7rem;font-weight:500}.stat-value{color:#fff;font-size:.75rem;text-shadow:0 1px 2px #0000001a}.trades-table-container{margin-bottom:2rem}.trades-table{font-size:.95rem}.trades-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.trades-table th{font-size:.85rem;padding:.75rem}.trades-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background .2s ease}.trades-table tbody tr:hover{background:#f8f9fa}.trades-table td{padding:.5rem .75rem;white-space:nowrap}.number-cell{font-family:Courier New,monospace;text-align:right}.currency-badge{border-radius:12px;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.currency-badge.usdt{background:#10b981;color:#fff}.currency-badge.usdc{background:#3b82f6;color:#fff}.pagination{gap:1rem;margin-top:2rem}.pagination button{background:#667eea;border:none;color:#fff;font-size:.9rem;padding:.5rem 1rem;transition:background .2s ease}.pagination button:hover:not(:disabled){background:#764ba2}.pagination button:disabled{background:#ccc}.page-info{color:#666;font-weight:600}.loading-container{padding:3rem;text-align:center}.loading-container p{color:#666;margin-top:1rem}.no-data-message{color:#666;padding:3rem;text-align:center}.no-data-message p{font-size:1.1rem}.boch-batches{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:2rem}.boch-batches-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.boch-batches-header h3{color:#1a1a2e;font-size:1.5rem;margin:0}.refresh-button{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.refresh-button:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.side-badge{font-size:.875rem;padding:.25rem .75rem}.side-badge.buy{background:#d1fae5;color:#065f46}.side-badge.sell{background:#fee2e2;color:#991b1b}.coin-badge{background:#e0e7ff;border-radius:4px;color:#3730a3;display:inline-block;font-size:.875rem;font-weight:600;padding:.25rem .75rem}.valr-summary{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:2rem}.valr-summary-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.valr-summary-header h3{color:#1a1a2e;font-size:1.5rem;margin:0}.compute-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.compute-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.compute-button:disabled{cursor:not-allowed;opacity:.6}.compare-button{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.compare-button:hover:not(:disabled){box-shadow:0 4px 12px #f59e0b66;transform:translateY(-2px)}.compare-button:disabled{cursor:not-allowed;opacity:.6}.comparison-report{background:#f8f9fa;border:2px solid #667eea;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.comparison-header{align-items:center;border-bottom:2px solid #667eea;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.comparison-header h4{color:#1a1a2e;font-size:1.3rem;margin:0}.close-button{background:#ef4444;border-radius:50%;color:#fff;font-size:1.2rem;height:32px;transition:transform .2s ease;width:32px}.close-button:hover{transform:scale(1.1)}.comparison-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.comparison-summary .summary-card{background:#fff;border-left:4px solid #667eea;border-radius:8px;font-size:.95rem;padding:1rem}.annual-totals{background:#fff;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.annual-totals h5{color:#1a1a2e;font-size:1.1rem;margin:0 0 1rem}.totals-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.totals-section h6{color:#667eea;font-size:1rem;margin:0 0 .5rem}.total-row{border-bottom:1px solid #e0e0e0;font-size:.9rem;padding:.5rem 0}.total-row:last-child{border-bottom:none}.discrepancies-section{background:#fff;border-radius:8px;padding:1rem}.discrepancies-section h5{color:#ef4444;font-size:1.1rem;margin:0 0 1rem}.comparison-table-container{max-height:600px;overflow-y:auto}.comparison-table{font-size:.9rem}.comparison-table thead{background:#e5e7eb;color:#000;position:sticky;top:0;z-index:10}.comparison-table th{background:#e5e7eb;border-bottom:2px solid #9ca3af;font-size:.9rem;font-weight:700;padding:.75rem;white-space:nowrap}.comparison-table td{border-bottom:1px solid #e0e0e0;padding:.5rem .75rem}.comparison-table tbody tr.status-discrepancy{background:#fee}.comparison-table tbody tr.status-missing-valr{background:#fef3c7}.comparison-table tbody tr.status-missing-chme{background:#dbeafe}.no-discrepancies{background:#d1fae5;border:2px solid #10b981;border-radius:8px;color:#065f46;font-size:1.1rem;font-weight:600;padding:1.5rem;text-align:center}.otc-discrepancies-section{border-top:2px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.otc-discrepancies-section h5{color:#f59e0b;font-size:1.1rem;margin:0 0 1rem}.otc-summary{display:flex;gap:1rem;margin-bottom:1rem}.otc-summary .summary-card{background:#fef3c7;border:1px solid #f59e0b;border-radius:4px;flex:1 1;padding:.75rem 1rem}.otc-section-header{border-top:2px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.otc-section-header h5{color:#f59e0b;font-size:1.1rem;margin:0 0 1rem}.comparison-table tbody tr.status-missing-otc-booker{background:#fef3c7}.comparison-table tbody tr.status-missing-luno{background:#d1fae5}.comparison-table tbody tr.status-missing-gsheet{background:#dbeafe}.source-badge{border-radius:3px;font-size:.75rem;padding:.25rem .5rem;white-space:nowrap}.source-badge.valr{border:1px solid #3b82f6}.source-badge.otc{background:#fef3c7;border:1px solid #f59e0b;color:#92400e}.source-badge.luno{background:#d1fae5;border:1px solid #10b981;color:#065f46}.comparison-report-tab{padding:1.5rem}.comparison-report-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.comparison-report-header h3{color:#1f2937;font-size:1.5rem;margin:0}.empty-state{background:#f9fafb;border:2px dashed #d1d5db;color:#6b7280;padding:3rem 2rem}.empty-state p{font-size:1rem;margin:.5rem 0}.empty-state p:first-child{color:#374151;font-size:1.1rem;font-weight:600}.refresh-all-button{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:6px;box-shadow:0 2px 4px #8b5cf633;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s}.refresh-all-button:hover:not(:disabled){box-shadow:0 4px 8px #8b5cf64d;transform:translateY(-1px)}.refresh-all-button:disabled{cursor:not-allowed;opacity:.6}.refresh-progress{animation:fadeIn .3s ease-in}@media (max-width:768px){.trade-history{padding:1rem}.trade-history-header{align-items:flex-start;flex-direction:column;gap:1rem}.filters-section{align-items:stretch;flex-direction:column}.filter-group{width:100%}.filter-group input,.filter-group select{min-width:auto;width:100%}.stats-summary{grid-template-columns:1fr}.trades-table{font-size:.85rem}.trades-table td,.trades-table th{padding:.75rem .5rem}.chme-tabs{overflow-x:auto}.tab-button{font-size:.9rem;padding:.75rem 1rem;white-space:nowrap}.valr-summary{padding:1rem}.valr-summary-header{align-items:flex-start;flex-direction:column;gap:1rem}}.chme-position-monitor .coin-card,.chme-position-monitor .futures-card,.chme-position-monitor .margin-card,.chme-position-monitor .net-positions-card,.chme-position-monitor .pnl-card.negative,.chme-position-monitor .pnl-card.positive,.chme-position-monitor .position-card{background:#fff!important}.chme-position-monitor .card-label{color:#6b7280!important}.chme-position-monitor .card-cell{color:#9ca3af!important}.chme-position-monitor .card-value{color:#111827!important;text-shadow:none!important}.chme-position-monitor .position-card.negative .card-value{color:#dc2626!important}.chme-position-monitor .position-card.positive .card-value{color:#111827!important}.modal-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;z-index:9999}.rfq-response-modal{animation:slideUp .3s ease-out;background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 12px 48px #00000026;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:2px solid #e0e0e0;padding:20px 24px}.modal-header h2{color:#2c3e50;font-size:22px;font-weight:600;margin:0}.modal-close{background:none;color:#95a5a6;font-size:32px}.modal-close:hover{color:#2c3e50;transform:scale(1.1)}.modal-close:disabled{cursor:not-allowed;opacity:.5}.modal-body{padding:24px}.rfq-details{background:#f8f9fa;border:1px solid #e0e0e0;margin-bottom:24px;padding:16px}.rfq-details h3{color:#3498db;font-size:16px;font-weight:600;margin:0 0 12px}.rfq-detail-row{border-bottom:1px solid #e8e8e8;display:flex;justify-content:space-between;padding:8px 0}.rfq-detail-row:last-child{border-bottom:none}.rfq-detail-row .label{color:#7f8c8d;font-size:14px}.rfq-detail-row .value{color:#2c3e50;font-size:14px;font-weight:600}.rfq-detail-row .value.market-price-display{font-weight:600;max-width:65%;text-align:right;word-break:break-word}.market-price-source{color:#2c3e50;font-weight:700}.market-price-sep{color:#95a5a6;font-weight:500}.market-price-loading{color:#7f8c8d;font-weight:500}.market-price-error{color:#c0392b;font-weight:500}.rfq-detail-row .value.side.buy{color:#0f8}.rfq-detail-row .value.side.sell{color:#f44}.rfq-detail-row.highlight{background:#4caf501a;border:1px solid #4caf504d;border-radius:6px;margin:8px 0;padding:12px}.rfq-detail-row.highlight.warning{background:#ff98001a;border-color:#ff98004d}.rfq-detail-row.highlight.warning .label{color:#f57c00}.rfq-detail-row.highlight.warning .value{color:#f57c00;font-weight:500}.rfq-detail-row.highlight .label{color:#4caf50;font-weight:600}.rfq-detail-row.highlight .value.requested-price-display{color:#4caf50;font-size:20px;font-weight:700}.quick-accept-section{background:#e8f5e9;border:1px solid #4caf50;border-radius:8px;margin:20px 0;padding:16px;text-align:center}.btn-quick-accept{background:#4caf50;border:none;border-radius:8px;box-shadow:0 4px 12px #4caf504d;cursor:pointer;font-size:16px;font-weight:700;padding:14px 32px;transition:all .2s}.btn-quick-accept:hover:not(:disabled){background:#45a049;box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.btn-quick-accept:disabled{cursor:not-allowed;opacity:.6;transform:none}.quick-accept-hint{color:#7f8c8d;font-size:13px;margin:8px 0 0}.or-divider{margin:24px 0;position:relative;text-align:center}.or-divider:before{background:#e0e0e0;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.or-divider span{background:#fff;color:#7f8c8d;font-size:14px;padding:0 12px;position:relative;z-index:1}.response-form{display:flex;flex-direction:column;gap:18px}.field-hint{color:#7f8c8d;margin-top:4px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#2c3e50}.form-group .required{color:#e74c3c}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #ddd;color:#2c3e50;font-family:inherit;font-size:14px;padding:12px;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#f8f9fa;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#fee;border:1px solid #e74c3c;padding:12px}.modal-actions button{border-radius:8px;flex:1 1;font-size:15px;font-weight:600;padding:12px 20px}.modal-actions .btn-primary{background:#3498db;color:#fff}.modal-actions .btn-primary:hover:not(:disabled){background:#2980b9;box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.modal-actions .btn-reject{background:#e74c3c;color:#fff}.modal-actions .btn-reject:hover:not(:disabled){background:#c0392b;transform:translateY(-2px)}.modal-actions .btn-secondary{background:#ecf0f1;border:1px solid #bdc3c7;color:#2c3e50}.modal-actions .btn-secondary:hover:not(:disabled){background:#bdc3c7}.modal-actions button:disabled{opacity:.6;transform:none}.rfq-response-modal input[type=number]{-webkit-appearance:textfield;appearance:textfield}.rfq-response-modal input[type=number]::-webkit-inner-spin-button,.rfq-response-modal input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}@media (max-width:768px){.rfq-response-modal{max-height:95vh;width:95%}.modal-body,.modal-header{padding:16px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.rfq-client-management{background-color:#f9fafb;margin:0;max-width:100%;min-height:100vh;padding:20px}.rfq-client-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.rfq-client-header h2{color:#333;flex:1 1;font-size:24px;font-weight:600;margin:0;text-align:center}.btn-back{background:#e5e7eb;border:none;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.btn-back:hover{background:#d1d5db}.rfq-client-content{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;padding:24px}.created-client-banner{background:#f0fdf4;border:2px solid #86efac;border-radius:8px;margin-bottom:24px;padding:20px}.created-client-banner h3{color:#166534;font-size:18px;margin:0 0 8px}.warning-text{color:#15803d;font-size:14px;font-weight:500;margin:8px 0 16px}.credentials-box{background:#fff;border:1px solid #d1d5db;border-radius:6px;margin-bottom:16px;padding:16px}.credential-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:10px 0}.credential-row:last-child{border-bottom:none}.credential-row label{color:#6b7280;font-size:14px;font-weight:500;min-width:100px}.credential-value{align-items:center;display:flex;flex:1 1;gap:10px}.credential-value code{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;color:#2563eb;flex:1 1;font-family:Courier New,monospace;font-size:13px;padding:8px 12px;word-break:break-all}.btn-copy{background:#2563eb;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s;white-space:nowrap}.btn-copy:hover{background:#1d4ed8;transform:translateY(-1px)}.btn-copy.copied{background:#10b981}.clients-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.clients-header h3{color:#333;font-size:20px;margin:0}.btn-add-client{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.btn-add-client:hover{background:#1d4ed8;transform:translateY(-1px)}.error-message{background-color:#fef7f7;color:#b91c1c;font-size:14px;font-weight:500;padding:16px 20px}.modal-error-message{align-items:center;background-color:#fee2e2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:16px;padding:12px 16px}.modal-error-message:before{content:"⚠️";font-size:16px}.clients-table-container{margin-top:20px;overflow-x:auto}.clients-table{background:#fff;border-collapse:collapse;table-layout:fixed;width:100%}.clients-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.clients-table th{font-weight:600;text-align:left}.clients-table td,.clients-table th{color:#374151;font-size:13px;padding:12px 8px}.clients-table td{background:#0000;border-bottom:1px solid #f3f4f6}.clients-table td:first-child,.clients-table th:first-child{width:15%}.clients-table td:nth-child(2),.clients-table th:nth-child(2){width:8%}.clients-table td:nth-child(3),.clients-table th:nth-child(3){text-align:center;width:8%}.clients-table td:nth-child(4),.clients-table th:nth-child(4){width:7%}.clients-table td:nth-child(5),.clients-table th:nth-child(5){width:12%}.clients-table td:nth-child(6),.clients-table th:nth-child(6){width:10%}.clients-table td:nth-child(7),.clients-table th:nth-child(7){width:40%}.api-key-cell{align-items:center;display:flex;gap:6px}.api-key-display{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:3px;color:#2563eb;display:inline-block;flex:1 1;font-family:Courier New,monospace;font-size:10px;max-width:calc(100% - 30px);min-width:0;overflow:hidden;padding:4px 6px;text-overflow:ellipsis;white-space:nowrap}.btn-copy-small{background:#e5e7eb;border:none;border-radius:3px;cursor:pointer;flex-shrink:0;font-size:12px;padding:4px 6px;transition:all .2s}.btn-copy-small:hover{background:#d1d5db}.clients-table tbody tr{border:none;transition:background-color .15s}.clients-table tbody tr:hover{background-color:#f9fafb}.clients-table tbody tr td{border-left:none;border-right:none;border-top:none}.client-name{color:#1f2937}.status-badge{border-radius:10px;font-size:10px;letter-spacing:.3px}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.status-badge.status-enabled{background:#d1fae5;color:#065f46}.status-badge.status-pending{background:#fef3c7;color:#92400e}.portal-badge{border-radius:10px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.3px;padding:3px 8px;text-transform:uppercase}.portal-badge.has-portal{background:#dbeafe;color:#1e40af}.portal-badge.no-portal{background:#f3f4f6;color:#6b7280}.user-count{color:#6b7280;font-size:12px}.telegram-badge{font-size:14px;margin-left:4px;opacity:.8}.action-buttons{display:flex;gap:8px}.btn-delete,.btn-edit,.btn-view{border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .2s}.btn-view{background:#dbeafe;color:#1e40af}.btn-view:hover{background:#bfdbfe}.btn-edit{background:#fef3c7;color:#92400e}.btn-edit:hover{background:#fde68a}.btn-delete{background:#fee2e2;color:#991b1b;font-size:12px;padding:6px 10px}.btn-delete:hover{background:#fecaca}.btn-view-details{background:#e0e7ff;border:none;border-radius:4px;color:#3730a3;cursor:pointer;font-size:11px;font-weight:500;padding:5px 8px;transition:all .2s;white-space:nowrap}.btn-view-details:hover{background:#c7d2fe}.btn-add-portal{background:#dbeafe;border:1px solid #3b82f6;border-radius:4px;color:#1e40af;cursor:pointer;font-size:12px;font-weight:500;padding:5px 10px;transition:all .2s;white-space:nowrap}.btn-add-portal:hover{background:#bfdbfe;border-color:#2563eb}.btn-activate{background:#d1fae5;border:none;border-radius:4px;color:#065f46;cursor:pointer;font-size:12px;font-weight:500;padding:6px 10px;transition:all .2s;white-space:nowrap}.btn-activate:hover{background:#a7f3d0}.btn-deactivate{background:#fef3c7;border:none;border-radius:4px;color:#92400e;cursor:pointer;font-size:12px;font-weight:500;padding:6px 10px;transition:all .2s;white-space:nowrap}.btn-deactivate:hover{background:#fde68a}.btn-small{background:#e5e7eb;border:none;border-radius:4px;color:#374151;cursor:pointer;font-size:12px;font-weight:500;padding:5px 10px;transition:all .2s;white-space:nowrap}.btn-small:hover{background:#d1d5db}.btn-small:disabled{cursor:not-allowed;opacity:.5}.btn-small.btn-info{background:#e0e7ff;color:#3730a3}.btn-small.btn-info:hover{background:#c7d2fe}.btn-small.btn-portal{background:#dbeafe;color:#1e40af}.btn-small.btn-portal:hover{background:#bfdbfe}.btn-small.btn-add-user{background:#d1fae5;color:#065f46}.btn-small.btn-add-user:hover{background:#a7f3d0}.btn-small.btn-warning{background:#fef3c7;color:#92400e}.btn-small.btn-warning:hover{background:#fde68a}.btn-small.btn-danger{background:#fee2e2;color:#991b1b}.btn-small.btn-danger:hover{background:#fecaca}.btn-small.btn-success{background:#d1fae5;color:#065f46}.btn-small.btn-success:hover{background:#a7f3d0}.inactive-row{background:#f9fafb;opacity:.6}.client-name-cell{color:#1f2937;font-weight:600}.actions-cell{min-width:200px;width:auto!important}.expanded-row{background:#f9fafb!important}.expanded-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:32px;margin:16px;padding:24px}.portal-info{flex:1 1}.portal-info h4,.portal-info h5,.users-section h4{color:#374151;font-size:16px;font-weight:600;margin:0 0 16px}.portal-url{align-items:center;display:flex;gap:8px;margin-bottom:12px}.portal-url label{color:#6b7280;font-size:13px;min-width:80px}.url-display{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:4px;color:#2563eb;font-family:Courier New,monospace;font-size:12px;padding:4px 8px}.telegram-settings{align-items:center;display:flex;gap:8px;margin-top:12px}.telegram-settings label{color:#6b7280;font-size:13px;min-width:140px}.telegram-display,.telegram-edit{align-items:center;display:flex;gap:8px}.telegram-edit input{border:1px solid #d1d5db;border-radius:4px;font-size:13px;padding:6px 10px;width:180px}.users-section{border-left:1px solid #e5e7eb;flex:1 1;padding-left:32px}.users-table{border-collapse:collapse;font-size:13px;width:100%}.users-table th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#6b7280;font-weight:600;padding:8px 12px;text-align:left}.users-table td{border-bottom:1px solid #f3f4f6;color:#374151;padding:8px 12px}.no-users{color:#9ca3af;font-size:13px;font-style:italic}.user-actions{display:flex;gap:6px}.info-group{display:flex;gap:12px;margin-bottom:16px}.info-group label{color:#6b7280;font-size:14px;font-weight:500;min-width:120px}.info-value{color:#374151;font-size:14px}.info-value code{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;color:#2563eb;font-family:Courier New,monospace;padding:4px 8px}.copy-button{background:#e0e7ff;border:none;border-radius:4px;color:#3730a3;cursor:pointer;font-size:12px;margin-left:8px;padding:4px 8px;transition:all .2s}.copy-button:hover{background:#c7d2fe}.portal-users-list{margin-top:12px;padding-left:20px}.portal-users-list li{color:#374151;margin:4px 0}.portal-note{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px;color:#78350f;font-size:13px;margin:16px 0;padding:12px}.telegram-settings{margin-top:16px}.telegram-edit-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.form-control,.telegram-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-control:focus,.telegram-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.telegram-actions{display:flex;gap:8px;margin-top:16px}.btn-cancel,.btn-primary,.btn-save,.btn-secondary,.btn-test{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.btn-primary,.btn-save{background:#2563eb;color:#fff}.btn-primary:hover,.btn-save:hover{background:#1d4ed8}.btn-test{background:#10b981;color:#fff}.btn-test:hover{background:#059669}.btn-cancel,.btn-secondary{background:#e5e7eb;color:#374151}.btn-cancel:hover,.btn-secondary:hover{background:#d1d5db}.field-hint{line-height:1.4}.modal-actions{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:16px}.modal-actions button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.modal-actions button[type=button]{background:#e5e7eb;color:#374151}.modal-actions button[type=button]:hover{background:#d1d5db}.modal-actions button[type=submit]{background:#2563eb;color:#fff}.modal-actions button[type=submit]:hover{background:#1d4ed8}.modal-actions button:disabled{cursor:not-allowed;opacity:.5}.otc-settings{margin-top:12px}.otc-edit-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:16px}.otc-edit-form select.telegram-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;cursor:pointer;font-size:14px;padding:10px 12px;width:100%}.otc-edit-form select.telegram-input:disabled{background:#f3f4f6;cursor:not-allowed}.loading-text{color:#6b7280;font-size:14px;font-style:italic;padding:10px}.otc-display{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:16px}.telegram-note{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px;color:#78350f;font-size:13px;margin-top:12px;padding:10px}.telegram-display{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.telegram-display-actions{display:flex;gap:8px;margin-top:16px}.btn-edit-telegram,.btn-test-telegram{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.btn-edit-telegram{background:#fbbf24;color:#78350f}.btn-edit-telegram:hover{background:#f59e0b}.btn-test-telegram{background:#10b981;color:#fff}.btn-test-telegram:hover{background:#059669}.telegram-indicator{font-size:18px;vertical-align:middle}.not-configured{font-size:13px}.shared-token{font-style:italic}.btn-find-chat{background:#dbeafe;border:1px solid #60a5fa;border-radius:6px;color:#1e40af;cursor:pointer;font-size:13px;margin-top:8px;padding:6px 12px;transition:all .2s}.btn-find-chat:hover{background:#bfdbfe}.chat-finder{background:#eff6ff;border:1px solid #93c5fd;border-radius:8px;margin-top:16px;padding:16px}.btn-search-chat{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-top:8px;padding:8px 16px;transition:all .2s}.btn-search-chat:hover:not(:disabled){background:#1d4ed8}.btn-search-chat:disabled{cursor:not-allowed;opacity:.5}.chat-finder-result{border-radius:6px;font-size:13px;margin-top:12px;padding:12px}.chat-finder-result.success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.chat-finder-result.error{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.chat-search-modal{max-width:500px}.chat-search-content{padding:16px 0}.chat-search-hint{color:#6b7280;font-size:13px;line-height:1.5;margin-bottom:16px}.chat-search-input{display:flex;gap:8px;margin-bottom:16px}.chat-search-input input{border:1px solid #d1d5db;border-radius:6px;flex:1 1;font-size:14px;padding:10px 14px}.chat-search-input input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.chat-search-input button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;white-space:nowrap}.chat-search-input button:hover:not(:disabled){background:#2563eb}.chat-search-input button:disabled{cursor:not-allowed;opacity:.5}.chat-search-results{border-top:1px solid #e5e7eb;padding-top:16px}.chat-search-results h4{color:#374151;font-size:14px;margin:0 0 12px}.chat-found h4,.chat-multiple h4{color:#059669}.chat-not-found h4{color:#374151;margin-top:16px}.chat-not-found .error-message{color:#dc2626;margin-bottom:12px}.chat-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:12px;margin-bottom:8px;padding:12px}.chat-item.selectable{cursor:pointer;transition:all .2s}.chat-item.selectable:hover{background:#eff6ff;border-color:#3b82f6}.chat-item .chat-title{color:#111827;flex:1 1;font-weight:600}.chat-item .chat-id{background:#e5e7eb;border-radius:4px;color:#6b7280;font-family:monospace;font-size:12px;padding:2px 6px}.chat-item .chat-type{color:#9ca3af;font-size:11px;text-transform:uppercase}.select-hint{color:#6b7280;font-size:12px;margin-top:8px;text-align:center}.chat-finder-result p{color:#374151;margin:4px 0}.chat-finder-result code{background:#fff;border:1px solid #e5e7eb;border-radius:3px;font-family:Courier New,monospace;padding:2px 6px}.chat-finder-result ul{margin:8px 0;padding-left:20px}.chat-finder-result li{color:#374151;margin:4px 0}.modal-content{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{border-bottom:2px solid #e5e7eb}.modal-header h3{color:#1f2937;font-size:20px}.modal-close{background:#0000;border-radius:4px;color:#6b7280;font-size:28px;height:32px;padding:0;width:32px}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-error{border-radius:6px;margin-bottom:16px}.created-credentials{padding:20px}.created-credentials h4{color:#065f46;font-size:18px;margin:0 0 16px}.created-credentials .credential-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;padding:10px 0}.created-credentials .credential-row:last-of-type{border-bottom:none}.created-credentials .credential-row label{color:#6b7280;font-size:14px;font-weight:500;min-width:100px}.created-credentials .credential-row span{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;color:#374151;flex:1 1;font-family:Courier New,monospace;font-size:13px;padding:6px 10px}.created-credentials .credential-row span.password{color:#2563eb;font-weight:600}.created-credentials .warning{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px;color:#78350f;font-size:13px;margin-top:16px;padding:12px}.created-credentials button{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-top:16px;padding:10px 20px}.created-credentials button:hover{background:#1d4ed8}.modal-description{background:#f9fafb;border-radius:6px;color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:8px;padding:12px}.modal-form{display:flex;flex-direction:column;gap:16px}.toggle-group{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:12px;padding:16px}.toggle-label{flex:1 1}.toggle-label strong{color:#1f2937;display:block;font-size:14px;margin-bottom:4px}.toggle-label small{color:#6b7280;font-size:13px}.toggle-switch{width:48px}.toggle-slider{background-color:#d1d5db;transition:.3s}.toggle-slider:before{transition:.3s}input:checked+.toggle-slider{background-color:#2563eb}input:checked+.toggle-slider:before{transform:translateX(24px)}.portal-credentials{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:16px;padding:16px}.password-display{align-items:center;display:flex;gap:8px;margin-top:8px}.password-display code{background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#2563eb;flex:1 1;font-family:Courier New,monospace;padding:8px 12px}.btn-regenerate{background:#f59e0b;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.btn-regenerate:hover{background:#d97706}.form-buttons{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:16px}button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.rfq-client-management{padding:12px}.clients-table{font-size:13px}.clients-table td,.clients-table th{padding:12px 8px}.action-buttons{flex-direction:column}.modal-content{padding:16px}}.portal-details-container{background:linear-gradient(180deg,#f9fafb,#fff);border-top:3px solid #3b82f6;padding:30px}.details-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:20px;padding:24px}.details-section:last-child{margin-bottom:0}.details-section h4{align-items:center;border-bottom:2px solid #f3f4f6;color:#1f2937;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0 0 20px;padding-bottom:12px}.telegram-indicator{color:#10b981;font-size:16px;margin-left:8px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:16px}.info-item{display:flex;flex-direction:column;gap:8px}.info-item label{color:#6b7280;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-value-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.url-code{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#2563eb;flex:1 1;font-family:Courier New,monospace;font-size:13px;min-width:200px;padding:8px 12px}.btn-icon{background:#e5e7eb;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 10px;text-decoration:none;transition:all .2s}.btn-icon:hover{background:#d1d5db;transform:translateY(-1px)}.status-pill{border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-pill.active{background:#d1fae5;color:#065f46}.status-pill.inactive{background:#fee2e2;color:#991b1b}.users-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:16px}.user-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;transition:all .2s}.user-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.user-card-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.user-card-header strong{color:#1f2937;font-size:15px}.user-card-body{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.user-detail-row{display:flex;font-size:13px;justify-content:space-between}.detail-label{color:#6b7280;font-weight:500}.detail-value{color:#374151;font-weight:400}.btn-copy-username{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;cursor:pointer;font-size:13px;font-weight:500;padding:8px;transition:all .2s;width:100%}.btn-copy-username:hover{background:#dbeafe;border-color:#93c5fd}.info-note{background:#fef3c7;border-left:4px solid #f59e0b;color:#78350f;margin-top:16px;padding:12px 16px}.telegram-display .info-grid{margin-bottom:16px}.not-configured{color:#9ca3af;font-style:italic}.shared-token{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:13px;padding:4px 8px}.telegram-actions-row{display:flex;gap:10px;margin-top:16px}.btn-success{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.btn-success:hover{background:#059669}.btn-success:disabled{background:#9ca3af;cursor:not-allowed}.wallets-section{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:20px}.wallets-section h4{color:#374151;font-size:15px;font-weight:600;margin:0 0 16px}.wallets-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.wallet-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.wallet-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.wallet-currency{color:#1f2937;font-size:16px;font-weight:600}.wallet-status{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.wallet-status.configured{background:#d1fae5;color:#065f46}.wallet-status.not-configured{background:#fef3c7;color:#92400e}.wallet-details{font-size:13px}.wallet-label{color:#374151;font-weight:500;margin-bottom:4px}.wallet-address{background:#e5e7eb;color:#6b7280;font-family:monospace;font-size:12px}.wallet-address,.wallet-override-warning{border-radius:4px;margin-bottom:8px;padding:4px 8px}.wallet-override-warning{background:#fef3c7;color:#b45309;cursor:help;font-size:11px}.wallet-actions{display:flex;gap:8px;margin-top:8px}.wallet-not-set{padding:12px 0;text-align:center}.btn-primary{background:#3b82f6}.btn-primary:hover{background:#2563eb}.btn-primary:disabled{background:#9ca3af}.wallet-modal{max-width:560px}.wallet-modal-content{padding:0 20px 20px}.wallet-modal-info{grid-gap:16px;border-bottom:1px solid #e5e7eb;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px;padding-bottom:16px}.wallet-modal-info .info-row{display:flex;flex-direction:column;gap:4px}.wallet-modal-info label{color:#6b7280;font-size:12px;font-weight:500}.wallet-modal-info span{color:#1f2937;font-size:14px;font-weight:500}.wallet-modal-info select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px}.wallet-error{background:#fee2e2;border-radius:6px;color:#991b1b;font-size:13px;margin-bottom:16px;padding:12px}.wallet-empty,.wallet-loading{color:#6b7280;font-size:14px;padding:24px;text-align:center}.wallet-select-section{margin-bottom:20px}.wallet-select-section label{color:#374151;display:block;font-size:13px;font-weight:500;margin-bottom:8px}.wallet-select-section select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px;width:100%}.wallet-preview{background:#f3f4f6;border-radius:8px;margin-bottom:20px;padding:16px}.wallet-preview h4{color:#374151;font-size:14px;margin:0 0 12px}.preview-row{display:flex;font-size:13px;margin-bottom:8px}.preview-row label{color:#6b7280;flex-shrink:0;width:100px}.preview-row span{color:#1f2937;word-break:break-all}.preview-row span.mono{background:#e5e7eb;border-radius:4px;font-family:monospace;font-size:12px;padding:2px 6px}.preview-row .match-ok{color:#059669;font-weight:500}.preview-row .match-fail{color:#dc2626;font-weight:500}.override-section{border-top:1px dashed #d1d5db;margin-top:16px;padding-top:16px}.override-label{color:#b45309;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.override-hint{color:#6b7280;font-size:12px;line-height:1.5;margin-bottom:12px}.override-section textarea{border:1px solid #f59e0b;border-radius:6px;font-size:13px;min-height:80px;padding:10px 12px;resize:vertical;width:100%}.override-section textarea:focus{border-color:#d97706;box-shadow:0 0 0 3px #f59e0b33;outline:none}.rfqs-container{margin:0 auto;max-width:1600px;padding:20px}.rfqs-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.rfqs-header h1{color:#2c3e50;font-size:28px;font-weight:600;margin:0}.rfqs-header-buttons{align-items:center;display:flex;gap:10px}.btn-client-rfq-toggle{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:13px;font-weight:700;padding:8px 14px;transition:all .2s ease}.btn-client-rfq-toggle.enabled{background:#e8f5e9;border-color:#a5d6a7;color:#1b5e20}.btn-client-rfq-toggle.disabled{background:#ffebee;border-color:#ef9a9a;color:#b71c1c}.btn-client-rfq-toggle:hover{transform:translateY(-1px)}.rfqs-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:25px;padding:25px}.rfqs-section h2{color:#34495e;font-size:20px;font-weight:600;margin:0 0 20px}.active-rfqs-section{border-left:4px solid #3498db}.rfqs-container .history-section .history-header{align-items:center;display:flex;flex-direction:row;gap:12px;justify-content:space-between;margin-bottom:12px}.rfqs-container .history-section .history-header h2{margin:0}.rfqs-container .history-section .history-filters{--rfq-filter-height:38px;grid-column-gap:10px;grid-row-gap:8px;align-items:center;column-gap:10px;display:grid;flex:1 1;grid-template-columns:minmax(180px,1.2fr) 145px 145px minmax(130px,.8fr) minmax(160px,.9fr) auto;min-width:0;overflow-x:auto;overflow-y:hidden;row-gap:8px}.rfqs-container .history-section .history-filters .filter-input{background:#f8f9fa;border:1px solid #ddd;border-radius:6px;color:#2c3e50;font-size:13px;max-width:none;min-width:0;padding:8px 12px;width:100%}.rfqs-container .history-section .history-filters .filter-input,.rfqs-container .history-section .history-filters .filter-input[type=date]{box-sizing:border-box;height:var(--rfq-filter-height);line-height:20px;max-height:var(--rfq-filter-height);min-height:var(--rfq-filter-height)}.rfqs-container .history-section .history-filters .filter-input[type=date]{padding-bottom:8px;padding-top:8px;vertical-align:middle}.rfqs-container .history-section .history-filters .filter-input[type=date]::-webkit-datetime-edit-fields-wrapper{margin:0;padding:0}.rfqs-container .history-section .history-filters .filter-input[type=date]::-webkit-datetime-edit{line-height:20px;margin:0;padding:0}.rfqs-container .history-section .history-filters .filter-input[type=date]::-webkit-date-and-time-value{margin:0;padding:0}.rfqs-container .history-section .history-filters .filter-input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;margin:0;padding:0}.rfqs-container .history-section .history-filters select.filter-input{cursor:pointer;display:block;line-height:calc(var(--rfq-filter-height) - 2px);padding-bottom:0;padding-top:0;vertical-align:middle}.rfqs-container .history-section .history-filters .filter-input:focus{background:#fff;border-color:#3498db;box-shadow:0 0 0 2px #3498db26;outline:none}.rfqs-container .history-section .history-filter-actions{align-items:center;display:flex;gap:8px}.rfqs-container .history-section .history-filters .btn-apply,.rfqs-container .history-section .history-filters .btn-clear{align-items:center;border-radius:6px;box-sizing:border-box;display:inline-flex;font-size:13px;font-weight:600;height:var(--rfq-filter-height);justify-content:center;min-height:var(--rfq-filter-height);padding:8px 16px}.btn-pagination{border:1px solid #ddd;color:#2c3e50;font-size:13px;transition:all .2s ease}.pagination-info{color:#2c3e50}.rfqs-table-container{overflow-x:auto}.rfqs-table{border-collapse:collapse;color:#2c3e50;width:100%}.rfqs-table thead{background:#f8f9fa}.rfqs-table th{border-bottom:2px solid #e0e0e0;color:#34495e;font-size:13px;font-weight:600;padding:12px 15px;text-align:left;white-space:nowrap}.rfqs-table td{border-bottom:1px solid #f0f0f0;font-size:14px;padding:12px 15px}.rfqs-table tbody tr:hover{background:#f8f9fa}.client-name{color:#2c3e50;font-weight:600}.product{color:#3498db}.product,.side{font-weight:600}.side{text-transform:uppercase}.side.buy{color:#0f8}.side.sell{color:#f44}.volume{font-family:Courier New,monospace;text-align:right}.volume .volume-zar-info{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.volume .zar-amount{color:#059669;font-weight:600}.volume .calculated-vol{color:#6b7280;font-size:11px}.elapsed{color:#e67e22;font-size:13px;font-style:italic}.status{font-size:12px;font-weight:600;text-transform:uppercase}.status.pending{background:#fef5e7;color:#e67e22}.status.pending,.status.responded{border-radius:4px;padding:4px 10px}.status.responded{background:#eafaf1;color:#27ae60}.status.rejected{background:#fadbd8;color:#e74c3c}.status.ignored,.status.rejected{border-radius:4px;padding:4px 10px}.status.ignored{background:#ecf0f1;color:#7f8c8d}.status.expired{background:#f4f6f6;border-radius:4px;color:#95a5a6;padding:4px 10px}.response-details{font-size:13px}.response-details .price{color:#27ae60;font-weight:600}.response-details .validity{color:#7f8c8d;font-size:12px}.response-details .notes{color:#95a5a6;font-style:italic;margin-top:4px}.actions{display:flex;gap:8px}.btn-ignore,.btn-primary,.btn-reject,.btn-respond,.btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;transition:all .2s}.btn-primary,.btn-respond{background:#3498db;color:#fff}.btn-primary:hover,.btn-respond:hover{background:#2980b9;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-reject{background:#e74c3c}.btn-reject:hover{background:#c0392b;transform:translateY(-2px)}.btn-ignore{background:#95a5a6;color:#fff}.btn-ignore:hover{background:#7f8c8d;transform:translateY(-2px)}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover{background:#7f8c8d;transform:translateY(-2px)}.pagination-controls{border-top:1px solid #e0e0e0}.btn-pagination{background:#f8f9fa;border:1px solid #dee2e6;color:#495057}.btn-pagination:hover:not(:disabled){background:#3498db;border-color:#3498db}.pagination-info{color:#495057}.no-data{color:#95a5a6;font-style:italic}.loading{color:#3498db;padding:40px}.error-message{background:#fadbd8;border-left:4px solid #e74c3c;color:#c0392b;padding:15px 20px}.requested-price .price-value{background:#e8f5e9;border-radius:4px;color:#2e7d32;display:inline-block;font-weight:700;padding:4px 10px}.requested-price .no-price{color:#95a5a6;font-style:italic}.response-details .quick-accept-badge{background:#4caf50;border-radius:12px;color:#fff;font-size:11px;font-weight:600;margin-left:8px;padding:2px 8px}.response-details .counter-volume{color:#f57c00;font-size:12px;font-style:italic;font-weight:600}@media (max-width:1200px){.rfqs-container .history-section .history-filters{column-gap:8px;grid-template-columns:minmax(160px,1.2fr) 145px 145px minmax(120px,.8fr) minmax(150px,.9fr) auto}}@media (max-width:768px){.rfqs-container{padding:10px}.rfqs-header{align-items:flex-start;flex-direction:column;gap:12px}.rfqs-header-buttons{flex-direction:column;width:100%}.rfqs-header-buttons button{width:100%}.rfqs-table-container{overflow-x:auto}.actions{flex-direction:column}.rfqs-container .history-section .history-header{align-items:stretch;flex-direction:column;gap:10px}.rfqs-container .history-section .history-filters{column-gap:8px;grid-template-columns:minmax(180px,1.2fr) 145px 145px minmax(130px,.8fr) minmax(160px,.9fr) auto;row-gap:8px}}@media (max-width:520px){.rfqs-container .history-section .history-filter-actions{justify-content:space-between}.rfqs-container .history-section .history-filters .btn-apply,.rfqs-container .history-section .history-filters .btn-clear{flex:1 1}}.mobile-action-cell{text-align:center}.mobile-action-cell,.mobile-action-header{display:none;width:44px}.mobile-action-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:1px solid #ddd;border-radius:6px;color:#666;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:44px;justify-content:center;transition:all .2s ease;width:44px}.mobile-action-btn:active{background:#e0e0e0;transform:scale(.95)}.context-menu{border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:150px;z-index:10000}.context-menu-item{background:none;border:none;color:#333;cursor:pointer;display:block;font-size:14px;padding:12px 16px;text-align:left;transition:background .15s ease;width:100%}.context-menu-item:active,.context-menu-item:hover{background:#f0f0f0}.rfq-row.bookable{cursor:pointer}.rfq-row.bookable:hover{background:#e3f2fd!important}@media (max-width:768px){.mobile-action-cell,.mobile-action-header{display:table-cell}.context-menu{border-radius:12px;min-width:200px}.context-menu-item{align-items:center;display:flex;font-size:16px;min-height:48px;padding:16px 20px}.btn-ignore,.btn-reject,.btn-respond{min-height:44px;min-width:44px;padding:10px 16px}.actions{flex-direction:column;gap:8px}.actions button{width:100%}.btn-pagination{min-height:44px;min-width:44px;padding:10px 14px}.pagination-controls{flex-wrap:wrap;gap:8px}}@media (max-width:480px){.mobile-action-btn{font-size:18px;height:40px;width:40px}.rfqs-table td,.rfqs-table th{font-size:12px;padding:8px 10px}.rfqs-section{padding:15px}.rfqs-header h1{font-size:20px}}.ioi-container{margin:0 auto;max-width:1400px;padding:20px}.ioi-header{border-bottom:2px solid #e0e0e0;margin-bottom:30px;padding-bottom:15px}.ioi-header h1{color:#2c3e50;font-size:28px;font-weight:600;margin:0 0 5px}.ioi-subtitle{color:#7f8c8d;font-size:14px;margin:0}.ioi-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:25px;padding:25px}.ioi-section h2{color:#34495e;font-size:20px;font-weight:600;margin:0 0 20px}.composer-section{border-left:4px solid #3498db}.history-section{border-left:4px solid #95a5a6}.ioi-alert{border-radius:6px;font-size:14px;margin-bottom:20px;padding:12px 16px}.ioi-alert.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.ioi-alert.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.composer-form{max-width:800px}.form-group{margin-bottom:20px}.form-group label{color:#34495e}.form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:15px;min-height:80px;transition:border-color .2s}.form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-group textarea:disabled{background:#f5f5f5;cursor:not-allowed}.form-group input[type=text]{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input[type=text]:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.char-count{color:#7f8c8d;font-size:12px;margin-top:5px;text-align:right}.char-count .warning{color:#e67e22;font-weight:600}.recipient-type-selector{display:flex;gap:10px}.recipient-btn{background:#fff;border:2px solid #ddd;border-radius:6px;color:#555;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.recipient-btn:hover:not(:disabled){border-color:#3498db;color:#3498db}.recipient-btn.active{background:#3498db;border-color:#3498db;color:#fff}.recipient-btn:disabled{cursor:not-allowed;opacity:.6}.client-selector{background:#fafafa;border:1px solid #ddd;border-radius:6px;padding:15px}.client-selector-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.client-selector-header label{margin-bottom:0}.client-selector-actions{display:flex;gap:8px}.client-selector-actions button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:5px 12px;transition:all .2s}.client-selector-actions button:hover:not(:disabled){border-color:#3498db;color:#3498db}.loading-clients{color:#7f8c8d;padding:20px;text-align:center}.client-list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:250px;overflow-y:auto;padding:5px}.client-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:all .2s;-webkit-user-select:none;user-select:none}.client-item:hover{background:#f8f9fa;border-color:#3498db}.client-item:active{background:#eef2f7}.client-item input[type=checkbox]{accent-color:#3498db!important;-webkit-appearance:checkbox!important;appearance:checkbox!important;cursor:pointer!important;flex-shrink:0;height:18px!important;margin:0!important;padding:0!important;pointer-events:auto!important;position:relative!important;width:18px!important;z-index:100!important}.client-name{color:#333;flex:1 1;font-size:13px}.tg-badge{font-size:12px}.composer-actions{border-top:1px solid #eee;margin-top:25px;padding-top:20px}.send-btn{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:6px;box-shadow:0 2px 4px #3498db4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .2s}.send-btn:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#1f6aa5);box-shadow:0 4px 8px #3498db66;transform:translateY(-1px)}.send-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.history-section{overflow:hidden}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.history-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.history-filters input[type=date],.history-filters select{border:1px solid #ddd;border-radius:4px;font-size:13px;min-width:150px;padding:8px 12px}.history-filters input:focus,.history-filters select:focus{border-color:#3498db;outline:none}.filter-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.filter-btn:hover{border-color:#e74c3c;color:#e74c3c}.ioi-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.ioi-table{background:#fff;border-collapse:collapse;font-size:14px;table-layout:fixed;width:100%}.ioi-table th{background:#34495e;border-bottom:2px solid #2c3e50;color:#fff;font-weight:600;padding:14px 15px;text-align:left}.ioi-table td{background:#fff;border-bottom:1px solid #e8e8e8;color:#333;padding:12px 15px;vertical-align:middle}.ioi-table tbody tr:nth-child(2n) td{background:#f9fafb}.ioi-table .clickable-row{cursor:pointer;transition:background-color .2s}.ioi-table .clickable-row:hover td{background:#e8f4fc!important}.message-cell{max-width:300px;width:30%}.message-preview{display:block;white-space:nowrap}.message-preview,.recipients-cell{overflow:hidden;text-overflow:ellipsis}.recipients-cell{width:20%}.delivery-cell{width:15%}.sent-by-cell{overflow:hidden;text-overflow:ellipsis;width:20%}.timestamp-cell{width:15%}.ioi-table .delivery-cell{white-space:nowrap}.delivery-badge{border-radius:4px;display:inline-block;font-size:12px;margin-right:5px;padding:3px 8px}.delivery-badge.tg{background:#e3f2fd;color:#1565c0}.delivery-badge.ws{background:#f3e5f5;color:#7b1fa2}.timestamp{color:#7f8c8d;white-space:nowrap}.loading,.no-data{color:#7f8c8d;font-size:15px;padding:40px 20px;text-align:center}.pagination{align-items:center;border-top:1px solid #eee;display:flex;gap:10px;justify-content:center;margin-top:20px;padding-top:20px}.pagination button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.pagination button:hover:not(:disabled){border-color:#3498db;color:#3498db}.pagination button:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#7f8c8d;font-size:13px}.modal-content{border-radius:10px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden}.modal-header{border-bottom:1px solid #eee;padding:20px}.modal-header h3{color:#2c3e50;font-size:18px}.close-btn{background:none;border:none;color:#7f8c8d;cursor:pointer;font-size:24px;line-height:1;padding:0}.close-btn:hover{color:#e74c3c}.modal-body{overflow-y:auto;padding:20px}.detail-row{margin-bottom:15px}.detail-row label{color:#34495e;display:block;font-size:13px;font-weight:600;margin-bottom:5px}.detail-row span{color:#555;font-size:14px}.message-full{background:#f8f9fa;border-radius:6px;color:#333;line-height:1.5;margin:0;padding:15px;white-space:pre-wrap;word-break:break-word}.recipients-list{border:1px solid #eee;border-radius:6px;max-height:200px;overflow-y:auto}.recipient-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:10px;padding:10px 15px}.recipient-item:last-child{border-bottom:none}.recipient-name{color:#333;flex:1 1;font-size:13px}.status-badge{border-radius:3px;padding:2px 6px}.status-badge.success{background:#d4edda;color:#155724}.status-badge.failed{background:#f8d7da;color:#721c24}.status-badge.na{background:#f5f5f5;color:#999}.all-clients-btn{border-color:#e67e22!important;color:#e67e22}.all-clients-btn.active{background:#e67e22!important;border-color:#e67e22!important;color:#fff}.all-clients-warning{align-items:center;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;display:flex;font-weight:500;gap:10px;padding:15px 20px}.warning-icon{font-size:20px}.client-item.selected{background:#e3f2fd;border-color:#3498db}.groups-management-section{background:linear-gradient(135deg,#f6f8fa,#eef2f5);border:1px solid #d0d7de;border-radius:8px;margin-bottom:20px;padding:20px}.groups-management-section h3{align-items:center;color:#2c3e50;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 15px}.groups-management-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.create-group-btn{align-items:center;background:#27ae60;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.create-group-btn:hover:not(:disabled){background:#219a52}.create-group-btn:disabled{cursor:not-allowed;opacity:.6}.no-groups-message{background:#fff;border:1px dashed #ddd;border-radius:6px;color:#7f8c8d;font-size:14px;padding:15px;text-align:center}.saved-groups{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;padding:15px}.saved-groups-list{display:flex;flex-wrap:wrap;gap:10px}.saved-group-item{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:all .2s}.saved-group-item:hover{border-color:#3498db}.saved-group-item.selected{background:#e3f2fd;border-color:#3498db}.saved-group-item .group-info{align-items:center;display:flex;flex:1 1;gap:8px}.saved-group-item .group-name{color:#333;font-weight:600}.saved-group-item .group-count{color:#7f8c8d;font-size:12px}.delete-group-btn{background:none;border:none;cursor:pointer;font-size:14px;opacity:.6;padding:2px 6px;transition:opacity .2s}.delete-group-btn:hover{opacity:1}.save-group-btn{background:#27ae60!important;border-color:#27ae60!important;color:#fff!important}.save-group-btn:hover:not(:disabled){background:#219a52!important}.modal-footer{background:#f8f9fa;border-top:1px solid #eee;gap:10px;padding:15px 20px}.btn-cancel{background:#fff;border:1px solid #ddd;color:#666;font-size:14px}.btn-cancel:hover{border-color:#999;color:#333}.btn-confirm{background:linear-gradient(135deg,#27ae60,#219a52);border-radius:6px;font-size:14px;padding:10px 20px}.btn-confirm:hover:not(:disabled){background:linear-gradient(135deg,#219a52,#1e8449)}.confirm-modal .modal-body{padding:25px}.confirm-message{margin-bottom:20px}.message-preview-confirm{background:#f8f9fa;border-left:4px solid #3498db;border-radius:6px;color:#333;font-style:italic;margin:10px 0 0;padding:15px}.confirm-recipients{margin-bottom:20px}.recipients-warning{color:#e67e22;margin:10px 0 0}.confirm-warning{background:#fff3cd;border-radius:6px;color:#333;font-size:16px;font-weight:500;padding:15px;text-align:center}.group-clients-preview{background:#f8f9fa;border-radius:6px;margin-top:15px;padding:15px}.group-clients-preview label{color:#34495e;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.group-clients-preview p{color:#555;font-size:13px;line-height:1.5;margin:0}@media (max-width:768px){.ioi-container{padding:15px}.recipient-type-selector{flex-direction:column}.recipient-btn{width:100%}.client-list{grid-template-columns:1fr}.history-filters{flex-direction:column}.history-filters input[type=date],.history-filters select{width:100%}.ioi-table{font-size:12px}.ioi-table td,.ioi-table th{padding:8px 10px}.pagination{flex-wrap:wrap}.saved-groups-list{flex-direction:column}.saved-group-item{width:100%}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}.rfq-notifications-container{display:flex;flex-direction:column;gap:12px;max-width:360px;position:fixed;right:20px;top:80px;z-index:10000}.rfq-notification{animation:slideInRight .3s ease-out;background:#fff;border-left:4px solid #4299e1;border-radius:12px;box-shadow:0 8px 32px #00000026,0 2px 8px #00000014;padding:14px 16px}.rfq-notification.buy{border-left-color:#38a169}.rfq-notification.sell{border-left-color:#e53e3e}.rfq-notification.is-counter{background:#fffbeb;border-left-color:#f59e0b}.rfq-notification.is-counter .rfq-notification-title{color:#d97706}.rfq-notification-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:10px;padding-bottom:8px}.rfq-notification-title{color:#2d3748;font-size:15px;font-weight:700}.rfq-header-right{align-items:center;display:flex;gap:8px}.rfq-timer{background:#edf2f7;border-radius:12px;color:#4a5568;font-size:13px;font-weight:600;padding:3px 8px}.rfq-timer.urgent{animation:pulse 1s ease-in-out infinite;background:#fed7d7;color:#c53030}.rfq-notification-close{align-items:center;background:none;border:none;border-radius:4px;color:#a0aec0;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;line-height:1;padding:0;transition:all .15s;width:24px}.rfq-notification-close:hover{background:#edf2f7;color:#4a5568}.rfq-notification-body{margin-bottom:12px}.rfq-notification-row{align-items:center;display:flex;justify-content:space-between;padding:4px 0}.rfq-notification-row.client-row{background:#f7fafc;border-radius:6px;margin:0 -8px 6px;padding:6px 8px}.rfq-notification-row.price-row{background:linear-gradient(135deg,#ebf8ff,#e6fffa);border:1px solid #bee3f8;border-radius:6px;margin:6px -8px 0;padding:8px}.rfq-label{color:#718096;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.rfq-value{color:#2d3748;font-size:14px;font-weight:600}.rfq-value.client{color:#1a202c;font-size:15px}.rfq-value.product{color:#4299e1;font-weight:700}.rfq-value.side.buy{color:#38a169;font-weight:700}.rfq-value.side.sell{color:#e53e3e;font-weight:700}.rfq-value.volume{color:#2d3748;font-family:SF Mono,Monaco,Consolas,monospace}.rfq-value.volume .calc-vol{color:#718096;display:block;font-size:11px;margin-top:2px}.rfq-value.price{color:#2b6cb0;font-size:15px;font-weight:700}.rfq-notification-actions{display:flex;gap:6px}.btn-quick-accept,.btn-reject,.btn-view-respond{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:8px 12px;transition:all .15s}.btn-quick-accept{background:#48bb78;color:#fff;flex:2 1}.btn-quick-accept:hover:not(:disabled){background:#38a169;transform:translateY(-1px)}.btn-view-respond{background:#4299e1;color:#fff;flex:1 1}.btn-view-respond:hover:not(:disabled){background:#3182ce;transform:translateY(-1px)}.btn-reject{background:#fed7d7;color:#c53030;padding:8px 10px}.btn-reject:hover:not(:disabled){background:#fc8181;color:#fff}.btn-quick-accept:disabled,.btn-reject:disabled,.btn-view-respond:disabled{cursor:not-allowed;opacity:.5;transform:none}.rfq-queue-count{border-top:1px solid #e2e8f0;color:#718096;font-size:11px;margin-top:8px;padding-top:8px;text-align:center}@media (max-width:480px){.rfq-notifications-container{left:10px;max-width:none;right:10px;top:60px}.rfq-notification{padding:12px}.rfq-notification-actions{flex-wrap:wrap}.btn-quick-accept{flex:1 1 100%;margin-bottom:4px}}.allocation-notifications-container{display:flex;flex-direction:column;gap:10px;max-width:400px;position:fixed;right:20px;top:80px;z-index:9999}.allocation-notification{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:12px;box-shadow:0 4px 20px #00000026;padding:16px}.allocation-notification-header{align-items:center;border-bottom:1px solid #92400e33;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.allocation-notification-title{color:#92400e;font-size:15px;font-weight:700}.allocation-notification-close{background:none;border:none;color:#92400e;cursor:pointer;font-size:20px;line-height:1;opacity:.7;padding:0;transition:opacity .2s}.allocation-notification-close:hover{opacity:1}.allocation-notification-body{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.allocation-notification-row{align-items:center;display:flex;font-size:13px;justify-content:space-between}.allocation-notification-row.highlight-row{background:#ffffff80;border-radius:6px;margin:4px -8px;padding:8px}.allocation-label{color:#92400e;font-weight:500}.allocation-value{color:#78350f;font-weight:600;text-align:right}.allocation-value.client-name{color:#1f2937;font-weight:700}.allocation-value.amount{color:#059669;font-size:15px;font-weight:700}.allocation-value.reference{background:#ffffff80;border-radius:4px;font-family:monospace;font-size:12px;max-width:180px;overflow:hidden;padding:2px 6px;text-overflow:ellipsis}.allocation-notification-actions{display:flex;gap:8px;justify-content:flex-end}.btn-view-trade{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.btn-view-trade:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.allocation-notification-actions .btn-dismiss{background:#92400e1a;border:1px solid #92400e4d;border-radius:6px;color:#92400e;cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px;transition:all .2s}.allocation-notification-actions .btn-dismiss:hover{background:#92400e33}@media (max-width:480px){.allocation-notifications-container{left:10px;max-width:none;right:10px}}.bank-txn-notifications-container{display:flex;flex-direction:column;gap:12px;max-width:380px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:10000}.bank-txn-notification{animation:bankTxnSlideIn .4s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#1a472a,#0d2818);border:1px solid #27ae60;border-radius:12px;box-shadow:0 8px 32px #27ae604d,0 0 0 1px #27ae601a;overflow:hidden;pointer-events:auto}.bank-txn-notification.incoming{border-color:#27ae60}@keyframes bankTxnSlideIn{0%{opacity:0;transform:translateX(120%)}to{opacity:1;transform:translateX(0)}}.bank-txn-notification-header{align-items:center;background:#27ae6026;border-bottom:1px solid #27ae6033;display:flex;justify-content:space-between;padding:12px 16px}.bank-txn-notification-title{align-items:center;color:#4ade80;display:flex;font-size:14px;font-weight:600;gap:8px}.bank-txn-header-right{align-items:center;display:flex;gap:10px}.bank-txn-timer{background:#27ae6033;border-radius:10px;color:#6ee7b7;font-size:12px;font-weight:600;min-width:32px;padding:2px 8px;text-align:center}.bank-txn-timer.urgent{animation:timerPulse 1s ease-in-out infinite;background:#fbbf2433;color:#fbbf24}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.6}}.bank-txn-notification-close{align-items:center;background:none;border:none;border-radius:4px;color:#6ee7b7;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;padding:0;transition:all .2s;width:24px}.bank-txn-notification-close:hover{background:#ffffff1a;color:#fff}.bank-txn-notification-body{padding:16px}.bank-txn-amount{color:#4ade80;font-size:28px;font-weight:700;margin-bottom:12px;text-shadow:0 2px 8px #4ade804d}.bank-txn-details{display:flex;flex-direction:column;gap:6px}.bank-txn-detail-row{align-items:center;display:flex;font-size:13px;justify-content:space-between}.bank-txn-label{color:#9ca3af;font-weight:500}.bank-txn-value{color:#e5e7eb;font-weight:500;max-width:200px;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.bank-txn-notification-actions{background:#0003;border-top:1px solid #27ae6026;display:flex;gap:8px;padding:12px 16px}.bank-txn-btn-view{background:linear-gradient(135deg,#27ae60,#1e8449);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:10px 16px;transition:all .2s}.bank-txn-btn-view:hover{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 4px 12px #27ae604d;transform:translateY(-1px)}.bank-txn-btn-dismiss{background:#0000;border:1px solid #9ca3af4d;border-radius:8px;color:#9ca3af;cursor:pointer;font-size:13px;font-weight:500;padding:10px 16px;transition:all .2s}.bank-txn-btn-dismiss:hover{background:#ffffff0d;border-color:#9ca3af80;color:#e5e7eb}@media (max-width:480px){.bank-txn-notifications-container{left:10px;max-width:none;right:10px;top:10px}.bank-txn-amount{font-size:24px}.bank-txn-notification-actions{flex-direction:column}.bank-txn-btn-dismiss,.bank-txn-btn-view{width:100%}}.trade-confirmation-notifications-container{display:flex;flex-direction:column;gap:10px;max-width:420px;position:fixed;right:20px;top:80px;z-index:9999}.trade-confirmation-notification{animation:slideInTradeConfirm .3s ease-out;border-radius:12px;box-shadow:0 4px 20px #00000026;padding:16px}.trade-confirmation-notification.confirmed{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1px solid #10b981}.trade-confirmation-notification.confirmed .notification-label,.trade-confirmation-notification.confirmed .trade-confirmation-notification-close,.trade-confirmation-notification.confirmed .trade-confirmation-notification-title{color:#065f46}.trade-confirmation-notification.confirmed .notification-value{color:#047857}.trade-confirmation-notification.confirmed .notification-value.client-name{color:#1f2937}.trade-confirmation-notification.confirmed .trade-confirmation-notification-actions .btn-dismiss{background:#065f461a;border:1px solid #065f464d;color:#065f46}.trade-confirmation-notification.confirmed .trade-confirmation-notification-actions .btn-dismiss:hover{background:#065f4633}.trade-confirmation-notification.rejected{background:linear-gradient(135deg,#fee2e2,#fecaca);border:1px solid #ef4444}.trade-confirmation-notification.rejected .notification-label,.trade-confirmation-notification.rejected .trade-confirmation-notification-close,.trade-confirmation-notification.rejected .trade-confirmation-notification-title{color:#991b1b}.trade-confirmation-notification.rejected .notification-value{color:#b91c1c}.trade-confirmation-notification.rejected .notification-value.client-name{color:#1f2937}.trade-confirmation-notification.rejected .trade-confirmation-notification-actions .btn-dismiss{background:#991b1b1a;border:1px solid #991b1b4d;color:#991b1b}.trade-confirmation-notification.rejected .trade-confirmation-notification-actions .btn-dismiss:hover{background:#991b1b33}@keyframes slideInTradeConfirm{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.trade-confirmation-notification-header{align-items:center;border-bottom:1px solid #0000001a;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.trade-confirmation-notification-title{font-size:16px;font-weight:700}.trade-confirmation-notification-close{background:none;border:none;cursor:pointer;font-size:20px;line-height:1;opacity:.7;padding:0;transition:opacity .2s}.trade-confirmation-notification-close:hover{opacity:1}.trade-confirmation-notification-body{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.trade-confirmation-notification-row{align-items:flex-start;display:flex;font-size:13px;justify-content:space-between}.trade-confirmation-notification-row.rejection-reason{background:#ffffff80;border-radius:6px;flex-direction:column;gap:4px;margin:6px -8px 0;padding:10px}.notification-label{font-weight:500}.notification-value{font-weight:600;text-align:right}.notification-value.client-name{font-weight:700}.notification-value.reason-text{font-style:italic;line-height:1.4;text-align:left;word-break:break-word}.trade-confirmation-notification-actions{display:flex;gap:8px;justify-content:flex-end}.trade-confirmation-notification-actions .btn-view-trade{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.trade-confirmation-notification-actions .btn-view-trade:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.trade-confirmation-notification-actions .btn-dismiss{border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px;transition:all .2s}@media (max-width:480px){.trade-confirmation-notifications-container{left:10px;max-width:none;right:10px}}.exchange-comp-container{margin:0 auto;max-width:1400px;padding:20px 20px 60px}.exchange-comp-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.exchange-comp-header h2{color:#2c3e50;font-size:28px;margin:0}.header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.status-indicators{color:#666;display:flex;flex-direction:column;font-size:12px;gap:5px}.ws-indicator{border-radius:4px;font-weight:600;padding:4px 8px}.ws-indicator.connected{background-color:#d4edda;color:#27ae60}.ws-indicator.disconnected{background-color:#f8d7da;color:#e74c3c}.last-update{color:#888;font-size:11px}.refresh-btn,.settings-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.refresh-btn:hover:not(:disabled){box-shadow:0 4px 8px #667eea4d;transform:translateY(-2px)}.refresh-btn.refreshing{animation:pulse 1.5s ease-in-out infinite}.settings-btn{background-color:#95a5a6;color:#fff}.settings-btn:hover{background-color:#7f8c8d}.main-toggle{align-items:center;display:flex;gap:10px}.toggle-label{color:#2c3e50;font-size:13px;font-weight:600}.toggle-switch{display:inline-block;height:24px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.4s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#28a745}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(26px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;margin-bottom:20px;padding:12px 20px}.loading-spinner{align-items:center;color:#666;display:flex;font-size:18px;height:400px;justify-content:center}.settings-panel{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;padding:20px}.settings-panel h3{color:#2c3e50;font-size:20px;margin-bottom:15px;margin-top:0}.setting-group{margin-bottom:20px}.setting-group h4{color:#34495e;font-size:16px;margin-bottom:10px;margin-top:0}.setting-description{color:#666;font-size:13px;line-height:1.5;margin:8px 0 12px}.setting-toggle{align-items:center;color:#555;cursor:pointer;display:flex;font-size:14px;gap:10px}.setting-toggle input[type=checkbox]{cursor:pointer;height:18px;width:18px}.setting-group label{align-items:center;color:#555;cursor:pointer;display:flex;font-size:14px;gap:8px}.setting-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.refresh-interval{margin-left:26px;margin-top:10px}.refresh-interval select{border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;margin-left:10px;padding:6px 12px}.pair-toggles{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.pair-toggle{background:#fff;border:1px solid #ddd;border-radius:6px;padding:8px 12px;transition:all .2s ease}.pair-toggle:hover{background-color:#f0f0f0;border-color:#667eea}.pair-toggle input[type=checkbox]:checked+span{color:#667eea;font-weight:600}.comparison-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;overflow-x:auto}.comparison-table{border-collapse:collapse;font-size:14px;width:100%}.comparison-table thead{background:#f8f9fa}.comparison-table th{color:#000;font-size:13px;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-align:left;text-transform:uppercase}.header-pair{background:#e9ecef;color:#000}.header-valr{background:#cfe2ff;color:#000}.header-luno{background:#fff3cd;color:#000}.header-best{background:#d1e7dd;color:#000}.header-arb{background:#f8d7da;color:#000}.comparison-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background-color .2s ease}.comparison-table tbody tr:hover{background-color:#f8f9fa}.comparison-table td{color:#2c3e50;padding:15px 12px}.pair-name{color:#667eea;font-size:15px;font-weight:600}.best-price{background-color:#d4edda;color:#155724;font-weight:600}.opportunity-high{background-color:#fff3cd;border-left:4px solid #ffc107}.opportunity-medium{background-color:#fff9e6;border-left:4px solid #ffe066}.arbitrage-cell{font-weight:600}.arbitrage-value{color:#28a745}.arb-direction{color:#666;font-size:11px;font-weight:400}.no-arbitrage,.no-data{color:#999}.no-data{font-size:16px;padding:40px;text-align:center}.info-panel{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.info-panel h4{color:#2c3e50;font-size:18px;margin-bottom:15px;margin-top:0}.info-panel ul{list-style:none;margin:0 0 15px;padding:0}.info-panel li{color:#555;font-size:14px;padding:6px 0}.best-price-indicator{background-color:#d4edda;color:#155724}.best-price-indicator,.opportunity-high-indicator{border-radius:3px;display:inline-block;font-size:12px;font-weight:600;padding:2px 6px;text-align:center;width:60px}.opportunity-high-indicator{background-color:#fff3cd;color:#856404}.opportunity-medium-indicator{background-color:#fff9e6;border-radius:3px;color:#856404;display:inline-block;font-size:12px;font-weight:600;padding:2px 6px;text-align:center;width:100px}.info-note{background:#fff;border-left:4px solid #667eea;border-radius:4px;color:#666;font-size:13px;margin:0;padding:12px}.data-status{bottom:0;font-size:13px;font-weight:500;left:0;padding:8px 20px;position:fixed;right:0;text-align:center;transition:all .3s ease;z-index:100}.status-fresh{background-color:#d4edda;border-top:2px solid #28a745;color:#155724}.status-ok{background-color:#d1ecf1;border-top:2px solid #17a2b8;color:#0c5460}.status-warning{background-color:#fff3cd;border-top:2px solid #ffc107;color:#856404}.status-stale{background-color:#f8d7da;border-top:2px solid #dc3545;color:#721c24}.status-unknown{background-color:#e2e3e5;border-top:2px solid #6c757d;color:#383d41}@media (max-width:1200px){.comparison-table{font-size:13px}.comparison-table td,.comparison-table th{padding:12px 8px}}@media (max-width:768px){.exchange-comp-container{padding:15px}.exchange-comp-header{align-items:flex-start;flex-direction:column;gap:15px}.header-controls{justify-content:space-between;width:100%}.comparison-table{font-size:11px}.comparison-table td,.comparison-table th{padding:8px 4px}.pair-toggles{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.exchange-comp-header h2{font-size:22px}.header-controls{align-items:stretch;flex-direction:column}.refresh-btn,.settings-btn{width:100%}}.historical-premium{margin:0 auto;max-width:1400px;padding:20px}.page-header{margin-bottom:30px}.page-header h2{color:#333;font-size:28px;margin:0 0 10px}.page-header .subtitle{color:#666;font-size:14px;margin:0}.filters-section{--filter-height:38px;align-items:flex-end;background:#f5f5f5;border-radius:8px;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:20px}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group label{color:#555;font-size:12px;font-weight:600;text-transform:uppercase}.filter-group input[type=date],.filter-group select{background:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;cursor:pointer;font-size:14px;height:var(--filter-height);line-height:20px;max-height:var(--filter-height);min-height:var(--filter-height);padding:0 12px}.filter-group input[type=date]{min-width:150px}.filter-group input[type=date]::-webkit-datetime-edit-fields-wrapper{padding:0}.filter-group input[type=date]::-webkit-datetime-edit{line-height:20px;padding:0}.filter-group input[type=date]::-webkit-calendar-picker-indicator,.filter-group input[type=date]::-webkit-date-and-time-value{margin:0;padding:0}.filter-group input[type=date]:focus,.filter-group select:focus{border-color:#2196f3;outline:none}.filters-section .btn-export,.filters-section .btn-primary{border:none;border-radius:4px;box-sizing:border-box;cursor:pointer;font-size:14px;font-weight:600;height:var(--filter-height);line-height:var(--filter-height);max-height:var(--filter-height);min-height:var(--filter-height);padding:0 16px;transition:all .2s}.btn-primary{background:#2196f3}.btn-primary:hover{background:#1976d2}.btn-export{background:#4caf50;color:#fff}.btn-export:hover{background:#45a049}.filters-section .btn-telegram{background:#08c;border:none;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:14px;font-weight:600;height:var(--filter-height);line-height:var(--filter-height);max-height:var(--filter-height);min-height:var(--filter-height);padding:0 16px;transition:all .2s}.filters-section .btn-telegram:hover{background:#069}.filters-section .btn-telegram:disabled{background:#88c4e0;cursor:not-allowed}.telegram-message{border-radius:4px;font-size:13px;font-weight:500;padding:8px 12px}.telegram-message.success{background:#e8f5e9;color:#2e7d32}.telegram-message.error{background:#ffebee;color:#c62828}.chart-view-selector{border-bottom:2px solid #e0e0e0;display:flex;gap:10px;margin-bottom:20px;padding-bottom:10px}.chart-view-selector button{background:#0000;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.chart-view-selector button:hover{color:#2196f3}.chart-view-selector button.active{border-bottom-color:#2196f3;color:#2196f3}.stats-summary{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#fff;padding:20px}.stat-card:nth-child(2){background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-card:nth-child(3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-card:nth-child(4){background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-label{font-size:12px;margin-bottom:8px;opacity:.9}.stat-value{font-size:28px}.chart-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;overflow-x:auto;padding:20px}.chart-container canvas{display:block;height:auto;max-width:100%}.heatmap-container{display:flex;flex-direction:column;gap:30px;margin-bottom:30px}.heatmap-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:15px 20px}.heatmap-header h3{color:#333;font-size:20px;margin:0}.btn-pdf{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.btn-pdf:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.btn-pdf:active{transform:translateY(0)}.heatmap-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px}.heatmap-section h3{color:#333;font-size:18px;margin:0 0 20px}.heatmap-grid{grid-gap:10px;display:grid;gap:10px}.heatmap-cell{align-items:center;background:#f9f9f9;border-radius:4px;display:flex;gap:10px;padding:10px}.cell-label{color:#555;font-size:13px;font-weight:600;min-width:80px}.cell-bar{border-radius:3px;height:20px;min-width:2px;transition:width .3s}.cell-value{color:#333;font-size:14px;font-weight:600;min-width:60px;text-align:right}.heatmap-grid-detailed{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.heatmap-cell-detailed{align-items:stretch;border:1px solid #0000001a;border-radius:8px;flex-direction:column;gap:8px;padding:12px 15px;transition:transform .2s,box-shadow .2s}.heatmap-cell-detailed:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.cell-header{align-items:center;display:flex;justify-content:space-between;width:100%}.cell-header .cell-label{color:#1a1a1a;font-size:16px;font-weight:700;text-shadow:0 1px 1px #ffffff80}.cell-rank{background:#ffffffb3;border-radius:12px;color:#333;font-size:12px;font-weight:700;padding:2px 8px}.cell-count{color:#444;font-size:11px;font-weight:500}.cell-stats{display:flex;flex-direction:column;gap:4px;width:100%}.cell-stats .cell-value{color:#1a1a1a;font-size:18px;font-weight:700;text-align:left;text-shadow:0 1px 1px #ffffff80}.cell-range{color:#333;font-size:12px;font-weight:500}.cell-stats .cell-count{color:#444;font-size:11px;margin-top:4px}.heatmap-legend{align-items:center;background:#f5f5f5;border-radius:6px;display:flex;gap:12px;justify-content:center;margin-bottom:15px;padding:10px}.legend-label{color:#666;font-size:12px;font-weight:500}.legend-gradient{background:linear-gradient(90deg,#dc503c,#dcdc3c,#50c83c);border:1px solid #0000001a;border-radius:8px;height:16px;width:200px}.insights-panel{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:25px}.insights-panel h3{color:#333;font-size:20px;margin:0 0 20px}.insights-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.insight-card{background:#f9f9f9;border-left:4px solid #2196f3;border-radius:8px;padding:20px}.insight-card h4{color:#333;font-size:16px;margin:0 0 10px}.insight-note{color:#666;font-size:13px;margin:0 0 15px}.insight-card ul{list-style:none;margin:0;padding:0}.insight-card li{border-bottom:1px solid #e0e0e0;color:#555;font-size:14px;padding:8px 0}.insight-card li:last-child{border-bottom:none}.insight-card li strong{color:#2196f3;float:right}.error-state,.loading-state,.no-data-state{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#666;font-size:16px;margin:30px 0;padding:60px 20px;text-align:center}.error-state{border:2px solid #ffebee;color:#f44336}.no-data-state{border:2px solid #fff3e0;color:#ff9800}@media (max-width:768px){.historical-premium{padding:10px}.filters-section{align-items:stretch;flex-direction:column}.filter-group{width:100%}.chart-view-selector{flex-wrap:wrap}.chart-view-selector button{flex:1 1;min-width:120px}.insights-grid,.stats-summary{grid-template-columns:1fr}.heatmap-cell{align-items:flex-start;flex-direction:column}.cell-bar{width:100%!important}}.otc-pnl-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:15px auto;max-width:1600px;padding:20px 25px}.otc-pnl-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.otc-pnl-header h2{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0}.otc-pnl-header-actions{align-items:center;display:flex;gap:12px}.date-filter{align-items:center;display:flex;gap:8px}.date-filter label{color:#64748b;font-size:.85rem}.date-filter input[type=date]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#1e293b;font-size:.9rem;padding:8px 12px}.date-filter input[type=date]:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a;outline:none}.apply-dates-btn{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 14px;transition:background .2s}.apply-dates-btn:hover{background:#4f46e5}.apply-dates-btn:disabled{cursor:not-allowed;opacity:.6}.refresh-btn{background:#6366f1;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.refresh-btn:hover{background:#5856eb}.sub-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:4px;margin-bottom:20px;padding-bottom:0}.sub-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:500;margin-bottom:-2px;padding:10px 20px;transition:all .2s}.sub-tab:hover{background:#f8fafc;color:#1e293b}.sub-tab.active{background:#0000;border-bottom-color:#6366f1;color:#6366f1}.position-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:20px}.position-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:16px 20px;transition:all .2s ease}.position-card:hover{box-shadow:0 4px 12px #0000001a}.position-card.usdt{border-left:4px solid #10b981}.position-card.usdc{border-left:4px solid #3b82f6}.position-card.futures{border-left:4px solid #f59e0b}.position-card.clickable{cursor:pointer}.position-card.clickable:hover{border-color:#6366f1;border-left-color:inherit}.position-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.position-card-title{align-items:center;display:flex;gap:8px}.position-card-title h3{color:#1e293b;font-size:1rem;font-weight:600;margin:0}.position-card-icon{font-size:1.2rem}.position-card-badge{background:#f1f5f9;border-radius:12px;color:#64748b;font-size:.75rem;font-weight:500;padding:4px 10px}.position-main-value{margin-bottom:12px}.position-quantity{font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;margin-bottom:2px}.position-quantity.positive{color:#059669}.position-quantity.negative{color:#dc2626}.position-quantity.neutral{color:#64748b}.position-label{color:#64748b;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.position-details{grid-gap:10px;border-top:1px solid #e2e8f0;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);padding-top:12px}.detail-item{gap:2px}.detail-label{color:#94a3b8;font-size:.7rem;text-transform:uppercase}.detail-value{color:#475569;font-family:Courier New,monospace;font-size:.85rem;font-weight:500}.detail-value.positive{color:#059669}.detail-value.negative{color:#dc2626}.drill-down-hint{border-top:1px dashed #e2e8f0;color:#6366f1;font-size:.75rem;margin-top:10px;opacity:.8;padding-top:10px;text-align:center}.position-card.clickable:hover .drill-down-hint{opacity:1}.pnl-summary-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:16px 20px}.pnl-summary-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.pnl-summary-header h3{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.pnl-cards{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.pnl-card{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:14px;text-align:center}.pnl-card-label{color:#64748b;font-size:.75rem;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.pnl-card-value{font-family:Courier New,monospace;font-size:1.25rem;font-weight:700}.pnl-card-value.positive{color:#059669}.pnl-card-value.negative{color:#dc2626}.pnl-card-value.neutral{color:#64748b}.pnl-card.total{background:#f0fdf4;border-color:#bbf7d0}.futures-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:16px 20px}.futures-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.futures-section-header h3{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.add-futures-btn{align-items:center;background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:background .2s}.add-futures-btn:hover{background:#059669}.futures-position-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.futures-summary-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;gap:4px;min-width:140px;padding:12px 16px}.futures-summary-label{color:#64748b;font-size:.7rem;letter-spacing:.5px;text-transform:uppercase}.futures-summary-value{color:#1e293b;font-family:Courier New,monospace;font-size:1rem;font-weight:600}.futures-summary-value.positive{color:#059669}.futures-summary-value.negative{color:#dc2626}.futures-table-container{border:1px solid #e2e8f0;border-radius:6px;overflow-x:auto}.futures-table{border-collapse:collapse;font-size:13px;width:100%}.futures-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:10px 12px;text-align:left;text-transform:uppercase}.futures-table td{border-bottom:1px solid #e2e8f0;color:#1e293b;padding:10px 12px}.futures-table tbody tr:hover{background:#f8fafc}.futures-table.compact th{font-size:.7rem;padding:4px 8px}.futures-table.compact td{font-size:.8rem;line-height:1.2;padding:4px 8px}.futures-table.compact tr{height:auto}.futures-table.compact .side-badge,.futures-table.compact .status-badge{font-size:.6rem;padding:1px 5px}.futures-table.compact .action-btn{font-size:.7rem;margin-right:2px;padding:1px 4px}.actions-cell{text-align:center;width:40px}.context-menu-wrapper{display:inline-block;position:relative}.context-menu-trigger{background:#0000;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:1.1rem;line-height:1;padding:2px 8px}.context-menu-trigger:hover{background:#f1f5f9;color:#1e293b}.context-menu{background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:100px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.context-menu button{background:#0000;border:none;color:#1e293b;cursor:pointer;display:block;font-size:.85rem;padding:8px 12px;text-align:left;white-space:nowrap;width:100%}.context-menu button:hover{background:#f8fafc}.context-menu button.delete{color:#dc2626}.context-menu button.delete:hover{background:#fef2f2}.side-badge{border-radius:4px;display:inline-block;font-size:.7rem;font-weight:600;padding:3px 8px;text-transform:uppercase}.side-badge.buy{background:#dcfce7;color:#111}.side-badge.sell{background:#fecaca;color:#111}.status-badge{border-radius:4px;font-size:.7rem;font-weight:500;padding:3px 8px}.status-badge.open{background:#fef3c7;color:#d97706}.status-badge.closed{background:#dcfce7;color:#059669}.status-badge.expired{background:#f1f5f9;color:#64748b}.action-btn{background:#0000;border:1px solid #e2e8f0;border-radius:4px;color:#64748b;cursor:pointer;font-size:.8rem;margin-right:4px;padding:4px 8px;transition:all .2s}.action-btn:hover{background:#f8fafc;color:#1e293b}.action-btn.delete:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.breakdown-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:16px 20px}.breakdown-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.breakdown-header h3{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.breakdown-tabs{display:flex;gap:6px}.breakdown-tab{background:#0000;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;font-size:.85rem;padding:6px 14px;transition:all .2s}.breakdown-tab:hover{background:#f8fafc}.breakdown-tab.active{background:#6366f1;border-color:#6366f1;color:#fff}.breakdown-content{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.breakdown-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;padding:14px;transition:all .2s}.breakdown-card:hover{border-color:#6366f1}.breakdown-card h4{color:#475569;font-size:.85rem;font-weight:600;margin:0 0 10px}.breakdown-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr)}.breakdown-stat{display:flex;flex-direction:column;gap:2px}.breakdown-stat-label{color:#94a3b8;font-size:.65rem;text-transform:uppercase}.breakdown-stat-value{color:#1e293b;font-family:Courier New,monospace;font-size:.85rem}.modal-overlay{background:#00000080;padding:20px}.modal-content{border:1px solid #e2e8f0;box-shadow:0 20px 40px #00000026;max-width:550px;padding:24px;width:100%}.modal-content.drill-down-modal{background:#fafbfc;height:calc(100vh - 80px)!important;max-height:none!important;max-width:none!important;padding:28px 36px;width:calc(100vw - 80px)!important}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.modal-header-left{align-items:center;display:flex;gap:14px}.modal-header h3{color:#1e293b;font-size:1.3rem;font-weight:600;margin:0}.modal-close{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:1.3rem;height:36px;justify-content:center;line-height:1;transition:all .2s;width:36px}.modal-close:hover{background:#e2e8f0;color:#1e293b}.back-btn{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s}.back-btn:hover{background:#e2e8f0;color:#1e293b}.drill-down-content{height:calc(100vh - 200px);max-height:calc(100vh - 200px);overflow-y:auto;padding:8px 0}.counterparty-breakdown h4,.drill-down-sources h4{color:#475569;font-size:1rem;font-weight:500;margin:0 0 16px}.source-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}@media (max-width:1000px){.source-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}.source-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:18px;transition:all .2s ease}.source-card.clickable{cursor:pointer}.source-card.clickable:hover{border-color:#6366f1;box-shadow:0 4px 12px #0000001a}.source-card.otc{border-left:4px solid #f59e0b}.source-card-header{align-items:center;display:flex;gap:10px;margin-bottom:14px}.source-icon{font-size:1.4rem}.source-name{color:#1e293b;font-size:1rem;font-weight:600}.source-card-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-bottom:12px}.source-stat{background:#f8fafc;border-radius:6px;display:flex;flex-direction:column;gap:3px;padding:10px}.source-stat-label{color:#94a3b8;font-size:.65rem;letter-spacing:.3px;text-transform:uppercase}.source-stat-value{color:#1e293b;font-family:Courier New,monospace;font-size:.95rem;font-weight:600}.source-stat-value.positive{color:#059669}.source-stat-value.negative{color:#dc2626}.source-card-footer{border-top:1px dashed #e2e8f0;color:#6366f1;font-size:.8rem;padding-top:10px;text-align:right}.counterparty-cards{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.counterparty-card{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #f59e0b;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:14px;transition:all .2s ease}.counterparty-card.clickable{cursor:pointer}.counterparty-card.clickable:hover{border-color:#6366f1 #6366f1 #6366f1 #f59e0b;box-shadow:0 4px 12px #0000001a}.counterparty-name{border-bottom:1px solid #e2e8f0;color:#1e293b;font-size:1rem;font-weight:600;margin-bottom:12px;padding-bottom:10px}.counterparty-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-bottom:10px}.cp-stat{background:#f8fafc;border-radius:4px;display:flex;flex-direction:column;gap:2px;padding:8px}.cp-stat-label{color:#94a3b8;font-size:.6rem;text-transform:uppercase}.cp-stat-value{color:#1e293b;font-family:Courier New,monospace;font-size:.85rem;font-weight:600}.cp-stat-value.positive{color:#059669}.cp-stat-value.negative{color:#dc2626}.counterparty-footer{border-top:1px dashed #e2e8f0;color:#6366f1;font-size:.75rem;padding-top:8px;text-align:right}.trades-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px}.trades-table{font-size:13px}.trades-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-size:.7rem;position:sticky;top:0;z-index:1}.trades-table td{border-bottom:1px solid #e2e8f0;color:#1e293b}.trades-table tbody tr:hover{background:#f8fafc}.account-badge{background:#ede9fe;color:#7c3aed;font-size:.7rem}.account-badge,.counterparty-badge{border-radius:4px;display:inline-block;font-weight:600;padding:3px 8px}.counterparty-badge{background:#fef3c7;color:#d97706;font-size:.75rem}.order-id{color:#94a3b8;font-family:Consolas,Monaco,monospace;font-size:.75rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-group label{color:#475569;font-size:.85rem;font-weight:500;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#1e293b;font-size:.95rem;padding:10px 12px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#94a3b8}.form-row{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}.form-actions{gap:10px;justify-content:flex-end;margin-top:20px}.btn-cancel{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s}.btn-cancel:hover{background:#e2e8f0;color:#1e293b}.btn-submit{background:#6366f1;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 24px;transition:all .2s}.btn-submit:hover{background:#5856eb}.loading-container{align-items:center;display:flex;justify-content:center;padding:60px 20px}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-top-color:#6366f1;height:36px;width:36px}.error-message{background:#fef2f2;font-size:.9rem;margin-bottom:16px;padding:14px 16px;text-align:center}.empty-state{background:#f8fafc;border:2px dashed #e2e8f0;border-radius:8px;color:#64748b;margin:16px 0;padding:50px 30px;text-align:center}.empty-state-icon{font-size:3rem;margin-bottom:12px;opacity:.5}.empty-state-text{color:#64748b;font-size:1rem}@media (max-width:768px){.otc-pnl-container{margin:10px;padding:15px}.otc-pnl-header{align-items:stretch}.otc-pnl-header,.otc-pnl-header-actions{flex-direction:column}.date-filter{flex-wrap:wrap}.form-row,.pnl-cards,.position-cards{grid-template-columns:1fr}.breakdown-tabs{flex-wrap:wrap}.source-cards{grid-template-columns:1fr}.net-exposure-row,.net-exposure-totals{grid-template-columns:1fr!important}}.net-exposure-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:10px;margin-bottom:20px;padding:20px}.net-exposure-header h3{color:#0c4a6e;font-size:1.1rem;font-weight:600;margin:0 0 16px}.net-exposure-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:16px}.net-exposure-item{background:#fff;border:1px solid #e0f2fe;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:12px 16px}.net-exposure-label{color:#64748b;font-size:.8rem;font-weight:500}.net-exposure-qty{font-size:1.15rem;font-weight:700}.net-exposure-zar{color:#64748b;font-size:.85rem}.net-exposure-totals{grid-gap:16px;border-top:2px solid #bae6fd;display:grid;gap:16px;grid-template-columns:1fr 1fr;padding-top:12px}.net-exposure-total-item{align-items:center;display:flex;flex-direction:column;gap:4px}.net-exposure-total-label{color:#0c4a6e;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.net-exposure-total-value{font-size:1.6rem;font-weight:800;letter-spacing:-.5px}.pnl-card-sub{color:#64748b;display:flex;flex-wrap:wrap;font-size:.75rem;gap:8px;margin-top:6px}.pnl-card-sub span{white-space:nowrap}.futures-header-actions{align-items:center;display:flex;gap:10px}.import-btn{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;color:#475569;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s}.import-btn:hover:not(:disabled){background:#e2e8f0;border-color:#94a3b8}.import-btn:disabled{cursor:not-allowed;opacity:.6}.import-status{align-items:center;border-radius:6px;display:flex;font-size:.85rem;gap:8px;margin-bottom:16px;padding:10px 16px}.import-status.success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.import-status.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.import-status-close{background:none;border:none;color:inherit;cursor:pointer;font-size:1.1rem;margin-left:auto;padding:0 4px}.import-details{font-weight:600}.flips-section{background:#fff;border-radius:8px;padding:16px 20px}.flips-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.flips-section-header h3{color:#1e293b;font-size:1.1rem;margin:0}.flips-source-filters{display:flex;flex-wrap:wrap;gap:6px}.flips-filter-btn{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;font-size:.8rem;padding:5px 12px;transition:all .15s}.flips-filter-btn:hover{background:#e2e8f0;color:#334155}.flips-filter-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.flips-summary-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.flips-summary-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px;text-align:center}.flips-summary-card.total{background:#eff6ff;border-color:#bfdbfe}.flips-summary-label{color:#64748b;display:block;font-size:.75rem;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.flips-summary-value{color:#1e293b;display:block;font-size:1.15rem;font-weight:700}.flips-summary-value.positive{color:#16a34a}.flips-summary-value.negative{color:#dc2626}.flips-summary-value.neutral{color:#64748b}.flips-summary-sub{color:#94a3b8;display:block;font-size:.7rem;margin-top:2px}.flips-table-container{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.flips-table{border-collapse:collapse;font-size:.82rem;width:100%}.flips-table thead th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-size:.78rem;font-weight:600;letter-spacing:.3px;padding:10px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.flips-table tbody td.num,.flips-table tfoot td.num,.flips-table thead th.num{text-align:right}.flips-table tbody td{border-bottom:1px solid #f1f5f9;color:#334155;padding:8px 12px;white-space:nowrap}.flips-table tbody tr:hover{background:#f8fafc}.flips-table tbody td.positive{color:#16a34a;font-weight:600}.flips-table tbody td.negative{color:#dc2626;font-weight:600}.flips-table tfoot td{background:#f8fafc;border-top:2px solid #e2e8f0;color:#1e293b;padding:10px 12px}.flips-total-row td{font-size:.85rem}.source-badge{border-radius:4px;display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.3px;padding:2px 8px}.source-badge.valr{background:#dbeafe;color:#1e40af}.source-badge.luno{background:#fef3c7;color:#92400e}.source-badge.bitstamp{background:#e0e7ff;color:#3730a3}.source-badge.otc{background:#f3e8ff;color:#6b21a8}.flips-date-cell{background:#f8fafc;border-right:2px solid #e2e8f0;color:#1e293b;font-weight:600;vertical-align:top;white-space:nowrap}.flips-day-subtotal{background:#f1f5f9;border-bottom:2px solid #cbd5e1}.flips-day-subtotal td{color:#334155;font-size:.8rem;padding:6px 12px}.breakdown-header-actions{align-items:center;display:flex;gap:8px;margin-left:auto}.import-btn.small{font-size:.72rem;padding:4px 10px}.copy-btn{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;font-size:.75rem;padding:4px 12px;transition:all .15s}.copy-btn:hover{background:#e2e8f0;color:#1e293b}.import-status.compact{font-size:.78rem;margin-bottom:8px;padding:6px 10px}.breakdown-table-container{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.breakdown-table{border-collapse:collapse;font-size:.82rem;width:100%}.breakdown-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-size:.76rem;font-weight:600;letter-spacing:.3px;padding:8px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.breakdown-table thead th.currency-group-header{border-bottom:1px solid #cbd5e1;border-left:2px solid #cbd5e1;color:#1e293b;font-size:.82rem;font-weight:700;text-align:center}.breakdown-table thead tr.sub-header th{background:#f1f5f9;color:#64748b;font-size:.7rem;padding:5px 10px}.breakdown-table thead tr.sub-header th:nth-child(5){border-right:none}.breakdown-table thead tr.sub-header th:nth-child(6){border-left:2px solid #cbd5e1}.breakdown-table tbody td.num,.breakdown-table tfoot td.num,.breakdown-table thead th.num{text-align:right}.breakdown-table tbody td{border-bottom:1px solid #f1f5f9;color:#334155;padding:8px 10px;white-space:nowrap}.breakdown-table tbody td:nth-child(6){border-left:2px solid #e2e8f0}.breakdown-table tbody tr.clickable-row{cursor:pointer}.breakdown-table tbody tr.clickable-row:hover{background:#f0f9ff}.breakdown-table tbody tr:hover{background:#f8fafc}.breakdown-table .source-name-cell{color:#1e293b;font-weight:600}.breakdown-table tfoot td{background:#f8fafc;border-top:2px solid #e2e8f0;padding:10px}.breakdown-table tfoot td:nth-child(6){border-left:2px solid #e2e8f0}.breakdown-table tfoot tr.net-row{border-top:2px solid #334155}.breakdown-table tfoot tr.net-row td{background:#f1f5f9;font-size:.88rem}.breakdown-table .currency-group-header.usdc,.breakdown-table thead tr.sub-header th:nth-child(5){border-left:2px solid #cbd5e1}.bitstamp-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.bitstamp-modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;padding:0;width:480px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.bitstamp-modal-header{align-items:center;background:linear-gradient(135deg,#fff7ed,#ffedd5);border-bottom:2px solid #f7931a;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:16px 20px}.bitstamp-modal-header h3{color:#c2410c;font-size:18px;font-weight:600;margin:0}.bitstamp-modal-header .side-badge{border-radius:4px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;margin-left:auto;margin-right:10px;padding:6px 12px;text-transform:uppercase}.side-badge.buy{background:linear-gradient(135deg,#22c55e,#16a34a)}.side-badge.sell{background:linear-gradient(135deg,#ef4444,#dc2626)}.close-button{align-items:center;background:none;border:none;border-radius:4px;color:#c2410c;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:background-color .2s;width:30px}.close-button:hover{background-color:#c2410c1a}.bitstamp-order-form{flex:1 1;overflow-y:auto;padding:24px}.bitstamp-order-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px}.bitstamp-order-form .form-group{display:flex;flex-direction:column;gap:6px}.bitstamp-order-form .form-group label{color:#4a5568;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.bitstamp-order-form .form-group input,.bitstamp-order-form .form-group select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#1f2937;font-size:15px;font-weight:500;padding:12px 14px;transition:all .2s ease}.bitstamp-order-form .form-group input:focus,.bitstamp-order-form .form-group select:focus{border-color:#f7931a;box-shadow:0 0 0 3px #f7931a26;outline:none}.bitstamp-order-form .input-help{color:#6b7280;font-size:11px;font-weight:500}.side-selector{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.side-selector .side-btn{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .2s}.side-selector .side-btn.buy.active,.side-selector .side-btn.buy:hover{background:#22c55e1a;border-color:#22c55e;color:#16a34a}.side-selector .side-btn.sell.active,.side-selector .side-btn.sell:hover{background:#ef44441a;border-color:#ef4444;color:#dc2626}.price-limit-info{margin-bottom:16px}.price-limit-info .warning{background:#fbbf2426;border:1px solid #f59e0b;border-radius:6px;color:#b45309;display:block;font-size:13px;font-weight:500;padding:10px 14px}.bitstamp-order-form .error-message{background:#ef44441a;border:1px solid #fecaca;border-radius:8px;color:#dc2626}.bitstamp-order-form .error-message,.bitstamp-order-form .success-message{font-size:13px;font-weight:500;margin-bottom:16px;padding:12px 16px;text-align:center}.bitstamp-order-form .success-message{background:#22c55e1a;border:1px solid #bbf7d0;border-radius:8px;color:#16a34a}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:center;margin-top:24px;padding-top:20px}.cancel-button,.submit-button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:140px;padding:12px 24px;transition:all .2s ease}.cancel-button{background:#f3f4f6;border:1px solid #d1d5db;color:#4b5563}.cancel-button:hover{background:#e5e7eb}.submit-button{color:#fff}.submit-button.buy{background:linear-gradient(135deg,#22c55e,#16a34a)}.submit-button.sell{background:linear-gradient(135deg,#ef4444,#dc2626)}.submit-button:hover:not(:disabled){box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.submit-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}@media (max-width:500px){.bitstamp-modal-content{margin:10px;max-height:95vh}.bitstamp-order-form .form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.bitstamp-trading{margin:0 auto;max-width:1400px;padding:20px}.bitstamp-header{margin-bottom:20px;text-align:center}.bitstamp-header h1{color:#2d3748;font-size:1.5em;font-weight:600;margin:0 0 4px}.bitstamp-subtitle{color:#6b7280;font-size:.9em;font-style:italic;margin:0}.bitstamp-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:16px;overflow:hidden;transition:all .3s ease}.bitstamp-panel:hover{box-shadow:0 6px 25px #00000026;transform:translateY(-2px)}.panel-header{align-items:center;background:#f8fafc;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 16px}.panel-header h2{color:#2d3748;font-size:1em;font-weight:600;margin:0}.panel-content{padding:16px}.refresh-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.refresh-btn:hover:not(:disabled){box-shadow:0 2px 8px #667eea66;transform:scale(1.05)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.bitstamp-content{display:flex;flex-direction:column;gap:16px}.bitstamp-bottom-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}.balances-panel .panel-header{border-bottom-color:#f7931a}.balances-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.balance-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;text-align:center}.balance-currency{color:#6b7280;display:block;font-size:.8em;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.balance-value{color:#1f2937;display:block;font-family:Courier New,monospace;font-size:1.2em;font-weight:700}.orderbook-panel .panel-header{border-bottom-color:#3b82f6}.orderbook-controls{align-items:center;display:flex;gap:12px}.pair-selector{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;font-size:13px;outline:none;padding:6px 12px}.orderbook-sidebyside{width:100%}.orderbook-table{border-collapse:collapse;font-size:13px;table-layout:fixed;width:100%}.orderbook-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:.75em;font-weight:600;letter-spacing:.5px;padding:10px 8px;text-transform:uppercase}.orderbook-table td{border-bottom:1px solid #f1f5f9;font-family:Courier New,monospace;padding:8px}.orderbook-table tr:hover{background:#f8fafc}.right-align{text-align:right}.left-align{text-align:left}.price-cell{font-weight:600}.bid-price{color:#16a34a}.ask-price{color:#dc2626}.bps-cell{color:#6b7280;font-size:.85em}.bid-bps{color:#059669}.ask-bps{color:#dc2626}.size-cell{color:#374151}.clickable-ask,.clickable-bid{cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.clickable-bid:hover{background-color:#dc26261a}.clickable-ask:hover{background-color:#22c55e1a}.clickable-ask:active,.clickable-bid:active{transform:scale(.98)}.user-order-highlight{background:#3b82f626!important;border:1px solid #3b82f64d;border-radius:4px;color:#1d4ed8!important;font-weight:700!important}.user-order-highlight:hover{background:#3b82f640!important}.market-stats{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:32px;justify-content:center;margin-top:16px;padding:12px}.stat-item{align-items:center;display:flex;flex-direction:column;gap:4px}.stat-label{color:#6b7280;font-size:.75em;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stat-value{color:#1f2937;font-family:Courier New,monospace;font-size:1em;font-weight:700}.trading-hint{color:#9ca3af;font-size:.8em;font-style:italic;margin-top:12px;text-align:center}.orders-panel .panel-header{border-bottom-color:#8b5cf6}.transactions-panel .panel-header{border-bottom-color:#06b6d4}.orders-table-wrapper{max-height:280px;overflow-x:auto;overflow-y:auto}.transactions-table-wrapper{max-height:400px;overflow-x:auto;overflow-y:auto}.orders-table,.transactions-table{border-collapse:collapse;font-size:13px;width:100%}.orders-table th,.transactions-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:.75em;font-weight:600;letter-spacing:.5px;padding:10px 12px;position:sticky;text-align:left;text-transform:uppercase;top:0}.orders-table td,.transactions-table td{border-bottom:1px solid #f1f5f9;color:#2d3748;padding:10px 12px}.transactions-table{background:#fff}.transactions-table th{background:linear-gradient(135deg,#2c3e50,#34495e)!important;border-bottom:2px solid #ffffff26;color:#fff!important}.transactions-table td{background:#fff}.orders-table tr:hover,.transactions-table tr:hover,.transactions-table tr:nth-child(2n) td{background:#f8fafc}.order-id,.tx-id{color:#6b7280;font-family:Courier New,monospace;font-size:11px}.order-side.buy,.side-buy{color:#16a34a;font-weight:600}.order-side.sell,.side-sell{color:#dc2626;font-weight:600}.cancel-btn{background:#ef44441a;border:1px solid #ef4444;border-radius:4px;color:#dc2626;cursor:pointer;font-size:12px;padding:4px 12px;transition:all .2s}.cancel-btn:hover:not(:disabled){background:#ef444433}.cancel-btn:disabled{cursor:not-allowed;opacity:.6}.empty-state,.error-message,.loading{color:#6b7280;font-size:14px;padding:30px 20px;text-align:center}.error-message{background:#ef44441a;border:1px solid #fecaca;border-radius:8px;color:#dc2626;padding:16px}@media (max-width:768px){.bitstamp-trading{padding:12px}.balances-grid{grid-template-columns:1fr}.orderbook-table td,.orderbook-table th{font-size:11px;padding:6px 4px}.market-stats{flex-direction:column;gap:12px}}.client-login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.client-login-card{animation:slideIn .4s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:440px;padding:40px;width:100%}.client-login-header{margin-bottom:30px;text-align:center}.client-login-header h1{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 10px}.client-login-org{color:#6b7280;font-size:16px;font-weight:600;letter-spacing:1px;margin:0;text-transform:uppercase}.client-login-error{background-color:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;margin-bottom:20px;padding:12px 16px;text-align:center}.client-login-form .form-group{margin-bottom:20px}.client-login-form label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.password-input-wrapper{position:relative;width:100%}.client-login-form input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:15px;padding:12px 16px;transition:all .2s;width:100%}.password-input-wrapper input{padding-right:48px}.client-login-form input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.client-login-form input:disabled{background-color:#f3f4f6;cursor:not-allowed}.password-toggle{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .2s}.password-toggle:hover:not(:disabled){background-color:#667eea1a;color:#667eea}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.password-toggle svg{display:block}.client-login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:14px;transition:all .3s;width:100%}.client-login-button:hover:not(:disabled){box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.client-login-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.client-login-footer{border-top:1px solid #e5e7eb;margin-top:30px;padding-top:20px;text-align:center}.client-login-footer p{color:#9ca3af;font-size:13px;margin:0}.twofa-header{margin-bottom:24px;text-align:center}.twofa-header h2{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 8px}.twofa-header p{color:#6b7280;font-size:14px;margin:0}.twofa-input{font-family:SF Mono,Monaco,Consolas,monospace;font-size:24px!important;letter-spacing:8px;text-align:center}.twofa-form-group{align-items:center;display:flex;flex-direction:column;text-align:center}.twofa-form-group label{font-size:12px;letter-spacing:1px;text-align:center;text-transform:uppercase}.twofa-form-group input{max-width:280px;min-width:200px;width:auto}.backup-code-input{font-family:SF Mono,Monaco,Consolas,monospace;font-size:18px!important;letter-spacing:2px;text-align:center;text-transform:uppercase}.back-link,.toggle-backup-link{background:none;border:none;color:#667eea;cursor:pointer;display:block;font-size:14px;padding:8px 0;text-align:center;transition:color .2s;width:100%}.back-link:hover,.toggle-backup-link:hover{color:#764ba2;text-decoration:underline}.back-link{color:#6b7280;margin-top:4px}.back-link:hover{color:#4b5563}.client-login-error.lockout{background-color:#fef3c7;border-color:#fcd34d;color:#92400e}.attempts-warning{font-weight:600}@media (max-width:480px){.client-login-card{padding:30px 20px}.client-login-header h1{font-size:24px}.twofa-input{font-size:20px!important;letter-spacing:6px}}.allocation-modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.allocation-modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;padding:30px;width:100%}.allocation-modal-content h3{color:#1f2937;font-size:22px;font-weight:700;margin:0 0 24px}.trade-summary{border:1px solid #e5e7eb;border-radius:12px;margin-bottom:24px;padding:20px}.summary-header{border-bottom:1px solid #e5e7eb;color:#667eea;font-size:16px;font-weight:700;margin-bottom:16px;padding-bottom:12px}.summary-row{align-items:center}.summary-row .label{color:#6b7280;font-size:13px;font-weight:500}.summary-row .value{color:#1f2937;font-size:14px;font-weight:600}.summary-row .value.side{font-size:14px;font-weight:700}.summary-row .value.side.buy{color:#10b981}.summary-row .value.side.sell{color:#ef4444}.summary-row .value.highlight{color:#1f2937;font-size:16px}.summary-row .value.remaining{color:#667eea;font-size:15px}.summary-divider{background:#e5e7eb;height:1px;margin:12px 0}.modal-error{background-color:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;font-weight:500;padding:12px 16px}.allocation-form .form-group,.modal-error{margin-bottom:20px}.allocation-form label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.allocation-form input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:15px;padding:12px 14px;transition:all .2s;width:100%}.allocation-form input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.allocation-form input:disabled{background-color:#f3f4f6;cursor:not-allowed}.input-hint{color:#9ca3af;display:block;font-size:12px;margin-top:6px}.info-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:24px;padding:16px}.info-box p{color:#1e40af;font-size:13px;line-height:1.5;margin:0}.info-box strong{display:block;margin-bottom:6px}.modal-actions{gap:12px}.btn-cancel,.btn-submit{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-cancel{background:#e5e7eb;color:#374151}.btn-cancel:hover:not(:disabled){background:#d1d5db}.btn-cancel:disabled{cursor:not-allowed;opacity:.6}.btn-submit:hover:not(:disabled){box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:480px){.allocation-modal-content{padding:20px}.allocation-modal-content h3{font-size:18px}.modal-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}.client-otc-trades{padding:0;width:100%}.trades-controls{align-items:flex-end;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px 14px;margin:0 0 16px;padding:14px}.control-group{display:flex;flex-direction:column;gap:6px;min-width:140px}.control-group label{color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.trades-controls .control-group input,.trades-controls .control-group select{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;display:block;font-size:13px;height:38px;margin:0;padding:8px 10px;width:100%}.trades-controls .control-group input[type=date]{height:38px;line-height:20px;max-height:38px;min-height:38px;padding-bottom:8px;padding-top:8px}.trades-controls .control-group input[type=date]::-webkit-datetime-edit-fields-wrapper{margin:0;padding:0}.trades-controls .control-group input[type=date]::-webkit-datetime-edit{line-height:20px;margin:0;padding:0}.trades-controls .control-group input[type=date]::-webkit-date-and-time-value{margin:0;padding:0}.trades-controls .control-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;margin:0;padding:0}.trades-controls .control-group input:focus,.trades-controls .control-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1f;outline:none}.sort-row{align-items:center;display:flex;gap:8px}.btn-sort-dir{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:12px;font-weight:700;min-height:38px;padding:8px 10px;transition:all .2s}.btn-sort-dir:hover{background:#f3f4f6}.control-actions{display:flex;gap:10px;margin-left:auto}.btn-apply,.btn-download,.btn-reset{border-radius:8px;cursor:pointer;font-size:13px;font-weight:700;min-height:38px;padding:9px 14px;transition:all .2s}.btn-download{background:#fff;border:1px solid #d1d5db;color:#1f2937}.btn-download:hover{background:#f3f4f6}.btn-apply{background:#667eea;border:1px solid #667eea;color:#fff}.btn-apply:hover{background:#5a67d8;border-color:#5a67d8}.btn-reset{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-reset:hover{background:#f3f4f6}.no-trades{color:#6b7280;padding:60px 20px;text-align:center}.no-trades p{font-size:18px;margin:0 0 10px}.no-trades small{color:#9ca3af;font-size:14px}.trades-table-container{overflow-x:auto}.trades-table-container .pagination-controls.pos-top{border-top:none;justify-content:flex-end;margin-bottom:12px;margin-top:0;padding-top:0}.trades-table-container .pagination-controls.pos-bottom{justify-content:center}.trades-table{border-collapse:collapse;table-layout:fixed;width:100%}.trades-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.trades-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.trades-table th.sortable:hover{background:#f3f4f6;color:#111827}.trades-table td{border-bottom:1px solid #e5e7eb;font-size:13px;padding:10px 12px;vertical-align:middle}.trades-table td:first-child,.trades-table th:first-child{width:7%}.trades-table td:nth-child(2),.trades-table th:nth-child(2){width:9%}.trades-table td:nth-child(3),.trades-table th:nth-child(3){width:10%}.trades-table td:nth-child(4),.trades-table th:nth-child(4){width:6%}.trades-table td:nth-child(5),.trades-table th:nth-child(5){width:7%}.trades-table td:nth-child(6),.trades-table th:nth-child(6){width:10%}.trades-table td:nth-child(7),.trades-table th:nth-child(7){width:8%}.trades-table td:nth-child(8),.trades-table th:nth-child(8){width:12%}.trades-table td:nth-child(9),.trades-table th:nth-child(9){width:10%}.trades-table td:nth-child(10),.trades-table th:nth-child(10){width:14%}.trades-table td:nth-child(11),.trades-table th:nth-child(11){width:7%}.trades-table tbody tr:hover{background:#f9fafb}.trade-row{transition:background-color .2s}.trade-number{color:#667eea;font-size:13px;font-weight:600}.client-side{font-size:13px;font-weight:700;text-transform:uppercase}.client-side.buy{color:#10b981}.client-side.sell{color:#ef4444}.zar-value{color:#1f2937;font-size:13px;font-weight:600}.trades-table td:nth-child(6),.trades-table td:nth-child(7),.trades-table td:nth-child(8),.trades-table th:nth-child(6),.trades-table th:nth-child(7),.trades-table th:nth-child(8){text-align:right}.status-badge{font-size:11px}.status-outstanding{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.status-partial{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.status-settled{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.settlement-info{font-size:11px}.settlement-line{margin-bottom:2px}.settlement-line.muted{color:#9ca3af;font-size:11px}.btn-allocate{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 14px;transition:all .2s}.btn-allocate:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.allocation-count{margin-top:6px}.pending-badge{background:#fef3c7;border-radius:8px;color:#92400e;display:inline-block;font-size:10px;font-weight:600;padding:2px 8px}@media (max-width:1400px){.trades-table{table-layout:auto}.trades-table td,.trades-table th{width:auto!important}}@media (max-width:1024px){.trades-table{font-size:12px}.trades-table td,.trades-table th{padding:8px}}@media (max-width:768px){.trades-controls{gap:10px;padding:12px}.control-group{flex:1 1 160px;min-width:0}.control-actions{margin-left:0;width:100%}.trades-table td,.trades-table th{padding:7px 6px}.btn-allocate{font-size:11px;padding:6px 10px}}.trade-row{cursor:pointer}.trade-row:hover{background:#f3f4f6!important}.trade-detail-modal{max-height:90vh;max-width:1400px!important;overflow-y:auto;width:90vw!important}.modal-body{display:flex;flex-direction:column;gap:16px}.detail-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:0;padding:24px 32px}.detail-section h3{align-items:center;color:#1f2937;display:flex;font-size:17px;font-weight:600;gap:10px;margin:0 0 16px}.detail-grid{grid-gap:16px 24px;display:grid;gap:16px 24px;grid-template-columns:repeat(6,1fr)}.detail-item{display:flex;flex-direction:column;gap:6px}.detail-item label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item .value{color:#1f2937;font-size:15px;font-weight:600}.detail-item .value.buy{color:#10b981;font-size:17px}.detail-item .value.sell{color:#ef4444;font-size:17px}.detail-item .zar-highlight{color:#667eea;font-size:18px;font-weight:700}.banking-details{grid-gap:16px 32px;display:grid;gap:16px 32px;grid-template-columns:repeat(4,1fr)}.banking-details .detail-item{flex-direction:column;gap:6px}.banking-details .detail-item label{color:#6b7280;font-size:11px;font-weight:600}.banking-details .detail-item .value{font-size:15px;font-weight:600}.reference-highlight{background:#fef3c7;border-radius:4px;color:#92400e;font-weight:600;padding:4px 8px}.address-highlight{background:#f3f4f6;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:8px 12px;word-break:break-all}.notes-content{background:#fff;border-radius:6px;color:#374151;font-size:14px;line-height:1.5;padding:10px 12px;white-space:pre-wrap}.allocations-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.allocation-item{background:#fff;border:2px solid #e5e7eb;border-radius:6px;padding:12px}.allocation-item.status-pending{background:#fffbeb;border-color:#fbbf24}.allocation-item.status-approved{background:#f0fdf4;border-color:#10b981}.allocation-item.status-rejected{background:#fef2f2;border-color:#ef4444}.allocation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.allocation-type{color:#1f2937;font-size:16px;font-weight:600}.allocation-details{color:#374151;display:flex;flex-direction:column;font-size:14px;gap:6px}.allocation-details strong{color:#6b7280;font-weight:600}.action-hint{background:#eff6ff;border:1px solid #bfdbfe}.action-hint p{color:#1e40af;font-size:14px;line-height:1.6;margin:0}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:8px;padding-top:12px}.modal-footer .btn-primary{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:background .2s}.modal-footer .btn-primary:hover{background:#5a67d8}@media (max-width:1600px){.detail-grid{grid-template-columns:repeat(5,1fr)}}@media (max-width:1200px){.detail-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:900px){.detail-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.detail-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:1200px){.banking-details{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.banking-details{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.trade-detail-modal{max-width:98vw!important;width:98vw!important}.banking-details,.detail-grid{grid-template-columns:1fr}.detail-section{padding:16px}.detail-section h3{font-size:15px}.allocations-list{grid-template-columns:1fr}}.confirmation-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;text-transform:uppercase}.confirmation-pending{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.confirmation-confirmed{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.confirmation-rejected{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.confirmation-buttons{display:flex;flex-wrap:wrap;gap:6px}.btn-confirm,.btn-reject{border:none;border-radius:6px;cursor:pointer;font-size:11px;font-weight:600;padding:6px 12px;transition:all .2s}.btn-confirm{background:#10b981;color:#fff}.btn-confirm:hover:not(:disabled){background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover:not(:disabled){background:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.btn-confirm:disabled,.btn-reject:disabled{cursor:not-allowed;opacity:.6}.rejection-modal{max-width:500px!important;width:90vw!important}.rejection-warning{background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:20px;padding:16px}.rejection-warning p{color:#92400e;margin:0 0 8px}.rejection-warning p:last-child{margin-bottom:0}.trade-summary{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:16px}.summary-row{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:8px 0}.summary-row:last-child{border-bottom:none}.summary-row span:first-child{color:#6b7280;font-weight:500}.summary-row span:last-child{color:#1f2937;font-weight:600}.form-group{margin-bottom:16px}.form-group label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:14px;padding:12px;resize:vertical;width:100%}.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1f;outline:none}.modal-footer .btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:all .2s}.modal-footer .btn-secondary:hover{background:#e5e7eb}.modal-footer .btn-danger{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:all .2s}.modal-footer .btn-danger:hover:not(:disabled){background:#dc2626}.modal-footer .btn-danger:disabled,.modal-footer .btn-secondary:disabled{cursor:not-allowed;opacity:.6}.confirmation-actions-section{background:#eff6ff;border:2px solid #3b82f6}.confirmation-actions-section h3{color:#1e40af}.confirmation-actions-section p{color:#1e40af;margin:0 0 16px}.confirmation-action-buttons{display:flex;flex-wrap:wrap;gap:12px}.btn-confirm-large,.btn-reject-large{border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-confirm-large{background:#10b981;color:#fff}.btn-confirm-large:hover:not(:disabled){background:#059669;box-shadow:0 4px 16px #10b98166;transform:translateY(-1px)}.btn-reject-large{background:#ef4444;color:#fff}.btn-reject-large:hover:not(:disabled){background:#dc2626;box-shadow:0 4px 16px #ef444466;transform:translateY(-1px)}.btn-confirm-large:disabled,.btn-reject-large:disabled{cursor:not-allowed;opacity:.6}.detail-item.full-width{grid-column:1/-1}.trades-table td:first-child,.trades-table th:first-child{width:6%}.trades-table td:nth-child(2),.trades-table td:nth-child(3),.trades-table th:nth-child(2),.trades-table th:nth-child(3){width:8%}.trades-table td:nth-child(4),.trades-table th:nth-child(4){width:5%}.trades-table td:nth-child(5),.trades-table th:nth-child(5){width:6%}.trades-table td:nth-child(6),.trades-table th:nth-child(6){width:9%}.trades-table td:nth-child(7),.trades-table th:nth-child(7){width:7%}.trades-table td:nth-child(8),.trades-table th:nth-child(8){width:10%}.trades-table td:nth-child(9),.trades-table th:nth-child(9){width:9%}.trades-table td:nth-child(10),.trades-table th:nth-child(10){width:8%}.trades-table td:nth-child(11),.trades-table td:nth-child(12),.trades-table th:nth-child(11),.trades-table th:nth-child(12){width:12%}@media (max-width:768px){.confirmation-action-buttons,.confirmation-buttons{flex-direction:column}.btn-confirm-large,.btn-reject-large{width:100%}}.ioi-notifications-container{display:flex;flex-direction:column;gap:10px;max-width:380px;position:fixed;right:20px;top:20px;width:100%;z-index:1000}.ioi-notification{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#2193b0,#6dd5ed);border-radius:12px;box-shadow:0 8px 32px #2193b04d;color:#fff;overflow:hidden}.ioi-notification-header{align-items:center;background:#0000001a;display:flex;justify-content:space-between;padding:12px 15px}.ioi-notification-title{font-size:14px;font-weight:600}.ioi-header-right{align-items:center;display:flex;gap:10px}.ioi-timer{background:#fff3;border-radius:10px;font-size:12px;font-weight:500;padding:3px 8px}.ioi-timer.urgent{animation:pulse 1s infinite;background:#ff646466}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.ioi-notification-close{background:none;border:none;color:#fff;cursor:pointer;font-size:20px;line-height:1;opacity:.8;padding:0;transition:opacity .2s}.ioi-notification-close:hover{opacity:1}.ioi-notification-body{padding:15px}.ioi-message{font-size:15px;line-height:1.5;margin:0 0 10px;word-break:break-word}.ioi-notification-footer{display:flex;justify-content:flex-end}.ioi-time{font-size:12px;opacity:.8}.ioi-notification-actions{display:flex;gap:10px;padding:0 15px 15px}.ioi-notification-actions button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:10px 15px;transition:all .2s}.btn-view-history{background:#fff3;color:#fff}.btn-view-history:hover{background:#ffffff4d}.btn-dismiss{background:#fff;color:#2193b0}.btn-dismiss:hover{background:#f0f0f0}.ioi-queue-count{background:#0000001a;font-size:12px;font-weight:500;padding:8px;text-align:center}@media (max-width:480px){.ioi-notifications-container{left:10px;max-width:none;right:10px;top:10px}.ioi-notification{border-radius:8px}.ioi-notification-header{padding:10px 12px}.ioi-notification-body{padding:12px}.ioi-notification-actions{padding:0 12px 12px}}.client-rfq-container{background:#f3f4f6;min-height:100vh}.client-rfq-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:20px 40px}.header-left h1{font-size:28px;font-weight:700;margin:0 0 5px}.org-name{font-size:14px;letter-spacing:1px;margin:0;opacity:.9;text-transform:uppercase}.header-right .user-info{align-items:center;display:flex;gap:15px}.username{font-size:14px;font-weight:500}.logout-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s}.logout-btn:hover{background:#ffffff4d}.client-tabs{background:#fff;border-bottom:2px solid #e5e7eb;display:flex;gap:0;margin:0 auto;max-width:1400px;padding:0 20px}.tab-button{background:#0000;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:-2px;padding:16px 24px;transition:all .2s}.tab-button:hover{background:#f9fafb;color:#374151}.tab-button.active{background:#0000;border-bottom-color:#667eea;color:#667eea}.client-rfq-content{margin:0 auto;max-width:1800px;padding:30px 40px}.trades-section{min-height:400px}.trades-section .section-card{padding:40px}.section-card,.trades-section .section-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.section-card{padding:30px}.section-card h2{color:#1f2937;font-size:22px;font-weight:700;margin:0 0 8px}.section-description{color:#6b7280;font-size:14px;margin:0 0 24px}.rfq-history-section,.rfq-submit-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px}.rfq-submit-actions{display:flex;flex-direction:column;gap:10px}.open-submit-modal-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:10px 14px;transition:all .2s;width:180px}.open-submit-modal-btn:hover:not(:disabled){box-shadow:0 8px 20px #667eea40;transform:translateY(-1px)}.open-submit-modal-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.rfq-closed-banner{background:#f3f4f6;border:1px solid #d1d5db;border-radius:10px;color:#374151;font-size:13px;font-weight:600;padding:10px 12px}.rfq-form-modal .modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.rfq-bbo{background:#ffffffbf;border:1px solid #00000014;border-radius:10px;margin:10px 0 14px;padding:12px}.rfq-bbo-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:1fr 1fr auto}.rfq-bbo-item{display:flex;flex-direction:column;gap:2px}.rfq-bbo-label{color:#374151;font-size:11px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.rfq-bbo-value{color:#111827;font-size:14px;font-weight:800}.rfq-bbo-meta{align-items:flex-end;display:flex;flex-direction:column;gap:2px;text-align:right}.rfq-bbo-pair{color:#374151;font-size:12px;font-weight:800}.rfq-bbo-disclaimer,.rfq-bbo-stale{color:#6b7280;font-size:12px}.rfq-bbo-disclaimer{line-height:1.35;margin-top:8px}.rfq-bbo-error{color:#b91c1c;font-weight:700}@media (max-width:768px){.rfq-bbo-row{grid-template-columns:1fr 1fr}.rfq-bbo-meta{align-items:flex-start;grid-column:1/-1;text-align:left}}.rfq-submit-modal.buy{background-color:#ecfdf5;border:1px solid #a7f3d0}.rfq-submit-modal.sell{background-color:#fef2f2;border:1px solid #fecaca}.rfq-submit-modal .rfq-form label{color:#374151;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.rfq-submit-modal .submit-btn.buy{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important}.rfq-submit-modal .submit-btn.sell{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important}.rfq-history-section h2,.rfq-submit-section h2{color:#1f2937;font-size:22px;font-weight:700;margin:0 0 20px}.message{border-radius:8px;font-size:14px;font-weight:500;margin-bottom:20px;padding:12px 16px}.message.error{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.message.success{background-color:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.rfq-form .form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.rfq-form .form-group{display:flex;flex-direction:column;gap:6px}.rfq-form label{color:#374151;font-size:14px;font-weight:600}.rfq-form input,.rfq-form select{border:1px solid #d1d5db;border-radius:8px;font-size:14px;line-height:1.2;min-height:40px;padding:8px 12px;transition:all .2s}.rfq-form input:focus,.rfq-form select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.rfq-form input:disabled,.rfq-form select:disabled{background-color:#f3f4f6;cursor:not-allowed}.submit-btn{border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;margin-top:10px;padding:12px;transition:all .3s;width:100%}.submit-btn.buy{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.submit-btn.buy:hover:not(:disabled){box-shadow:0 8px 20px #10b98166;transform:translateY(-2px)}.submit-btn.sell{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.submit-btn.sell:hover:not(:disabled){box-shadow:0 8px 20px #ef444466;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.no-rfqs{color:#6b7280;font-size:16px;padding:40px;text-align:center}.rfq-table-container{overflow-x:auto}.rfq-table-container .pagination-controls.pos-top{border-top:none;flex-wrap:wrap;justify-content:flex-end;margin-bottom:12px;margin-top:0;padding-top:0}.rfq-table-container .pagination-controls.pos-bottom{flex-wrap:wrap}.rfq-table{border-collapse:collapse;width:100%}.pagination-controls{align-items:center;border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px;padding-top:20px}.page-size{align-items:center;display:flex;gap:8px;height:36px;margin-right:6px}.page-size-label{color:#6b7280;display:block;font-size:12px;font-weight:700;letter-spacing:.4px;line-height:36px;margin:0;text-transform:uppercase}.pagination-controls .page-size-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#374151;cursor:pointer;font-size:14px;font-weight:600;height:36px;line-height:36px;margin:0!important;padding:0 12px}.pagination-controls .page-size-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1f;outline:none}.btn-pagination{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#374151;cursor:pointer;font-size:14px;font-weight:500;height:36px;margin:0;padding:8px 16px;transition:all .2s}.btn-pagination:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff}.btn-pagination:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#374151;font-size:14px;font-weight:500;padding:0 15px}.rfq-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 12px;text-align:left;text-transform:uppercase}.rfq-table td{border-bottom:1px solid #e5e7eb;font-size:13px;padding:10px 12px}.rfq-table tbody tr:hover{background:#f9fafb}.side.buy{color:#10b981;font-weight:600}.side.sell{color:#ef4444;font-weight:600}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;text-transform:uppercase}.status-pending{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.status-responded{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.status-rejected{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.status-expired{background:#e5e7eb;border:1px solid #d1d5db;color:#374151}.status-quoted{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.status-countered{background:#fef3c7;border:1px solid #fbbf24;color:#92400e}.status-accepted{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.status-cancelled{background:#f3f4f6;border:1px solid #d1d5db;color:#6b7280}.response-info{font-size:14px}.response-info strong{color:#10b981}.response-info small{color:#6b7280}.text-muted{color:#9ca3af;font-style:italic}.timestamp{color:#6b7280;font-size:13px}.loading{color:#6b7280;font-size:18px;padding:60px 20px;text-align:center}.rfq-row{cursor:pointer}.actions{white-space:nowrap}.quote-actions{display:flex;flex-wrap:wrap;gap:6px}.btn-accept,.btn-cancel,.btn-counter{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.btn-cancel{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.btn-cancel:hover{background:#fca5a5;color:#7f1d1d}.btn-accept{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.btn-accept:hover{background:#6ee7b7;color:#064e3b}.btn-counter{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.btn-counter:hover{background:#93c5fd;color:#1e3a8a}.quote-timer{color:#ef4444;font-size:11px;font-weight:700;margin-top:4px}.modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;padding:30px;width:90%}.modal-large{max-width:700px}.confirm-modal{max-width:420px}.confirm-subtitle{color:#6b7280;font-size:14px;margin-bottom:20px}.confirm-details{background:#f9fafb;border-radius:8px;margin-bottom:24px;padding:16px}.confirm-row{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:10px 0}.confirm-row:last-child{border-bottom:none}.confirm-label{color:#6b7280;font-size:14px;font-weight:500}.confirm-value{color:#1f2937;font-size:14px;font-weight:600}.confirm-value.highlight{color:#059669;font-size:16px}.confirm-value.side-badge{border-radius:20px;font-size:12px;font-weight:700;padding:4px 12px}.confirm-value.side-badge.buy{background:#d1fae5;color:#065f46}.confirm-value.side-badge.sell{background:#fee2e2;color:#991b1b}.confirm-actions{display:flex;gap:12px}.btn-confirm{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:14px 24px;transition:all .2s}.btn-confirm.buy{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-confirm.buy:hover:not(:disabled){box-shadow:0 8px 20px #10b98166;transform:translateY(-2px)}.btn-confirm.sell{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-confirm.sell:hover:not(:disabled){box-shadow:0 8px 20px #ef444466;transform:translateY(-2px)}.btn-confirm:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.btn-cancel-confirm{background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:14px 24px;transition:all .2s}.btn-cancel-confirm:hover:not(:disabled){background:#e5e7eb}.btn-cancel-confirm:disabled{cursor:not-allowed;opacity:.6}.modal-content h3{color:#1f2937;font-size:20px;margin:0 0 20px}.modal-content h4{color:#374151;font-size:16px;margin:20px 0 10px}.counter-form .form-group{margin-bottom:15px}.counter-form label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.counter-form input{border:1px solid #d1d5db;border-radius:8px;font-size:14px;padding:10px 12px;width:100%}.counter-form input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn-close,.btn-submit{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-submit:hover{box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.btn-close{background:#e5e7eb;color:#374151}.btn-close:hover{background:#d1d5db}.rfq-details{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:15px}.detail-row{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#6b7280;font-size:13px;font-weight:600}.detail-row .value{color:#1f2937;font-size:14px}.responses-list{display:flex;flex-direction:column;gap:15px}.response-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:15px}.response-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:10px;padding-bottom:10px}.response-header strong{color:#1f2937;font-size:14px}.response-time{color:#6b7280;font-size:12px}.response-body{display:flex;flex-direction:column;gap:8px}.response-detail{display:flex;font-size:13px;justify-content:space-between}.response-detail .label{color:#6b7280;font-weight:600}.response-detail .value{color:#1f2937}.no-responses{color:#9ca3af;font-style:italic;padding:20px;text-align:center}@media (max-width:1400px){.client-rfq-content,.trades-section .section-card{padding:30px}}@media (max-width:768px){.client-rfq-header{align-items:flex-start;flex-direction:column;gap:15px;padding:20px}.client-rfq-content{padding:20px 15px}.trades-section .section-card{padding:20px}.header-right .user-info{justify-content:space-between;width:100%}.rfq-form .form-row{grid-template-columns:1fr}.rfq-history-section,.rfq-submit-section{padding:20px}.rfq-table{font-size:12px}.rfq-table td,.rfq-table th{padding:8px 6px}}.volume-info{display:flex;flex-direction:column;gap:2px}.volume-info .zar-amount{color:#059669;font-weight:600}.volume-info .calculated-vol{color:#6b7280;font-size:11px}.field-hint{color:#6b7280;display:block;font-size:12px;margin-top:6px}.field-hint.calculated-volume{color:#059669;font-weight:500}.ioi-section{margin:0 auto;max-width:900px;padding:30px 40px}.ioi-section .section-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.ioi-section h2{color:#1f2937;font-size:22px;margin:0 0 8px}.ioi-section .section-description{color:#6b7280;font-size:14px;margin:0 0 25px}.ioi-history-list{display:flex;flex-direction:column;gap:12px}.ioi-history-item{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:10px;padding:16px 20px;transition:all .2s}.ioi-history-item:hover{box-shadow:0 4px 12px #0ea5e926;transform:translateY(-2px)}.ioi-history-item .ioi-message{color:#0c4a6e;font-size:15px;line-height:1.5;margin:0 0 10px;word-break:break-word}.ioi-history-item .ioi-meta{display:flex;justify-content:flex-end}.ioi-history-item .ioi-time{color:#64748b;font-size:12px}.ioi-section .loading,.ioi-section .no-data{color:#6b7280;font-size:16px;padding:60px 20px;text-align:center}@media (max-width:768px){.ioi-section,.ioi-section .section-card{padding:20px}}.client-2fa-setup-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.client-2fa-setup-card{animation:slideIn .4s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:480px;padding:40px;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.setup-header{margin-bottom:30px;text-align:center}.setup-icon{font-size:48px;margin-bottom:16px}.setup-icon.success{animation:bounce .5s ease}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.setup-header h1{color:#1f2937;font-size:24px;font-weight:700;margin:0 0 10px}.setup-header p{color:#6b7280;font-size:15px;margin:0}.setup-info{background:#f9fafb;border-radius:12px;margin-bottom:24px;padding:20px}.setup-info h3{color:#1f2937;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.setup-info h3:not(:first-child){margin-top:20px}.setup-info ul{margin:0;padding-left:20px}.setup-info li{color:#4b5563;font-size:14px;margin-bottom:8px}.setup-info li:last-child{margin-bottom:0}.setup-error{background-color:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;margin-bottom:20px;padding:12px 16px;text-align:center}.setup-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:all .3s;width:100%}.btn-primary:hover:not(:disabled){box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{background:#0000;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:14px;transition:all .2s;width:100%}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.qr-section{margin-bottom:30px;text-align:center}.qr-code{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:16px}.manual-entry{margin-top:20px}.manual-entry p{color:#6b7280;font-size:13px;margin:0 0 8px}.secret-code{background:#f3f4f6;border-radius:8px;color:#1f2937;display:block;font-family:SF Mono,Monaco,Consolas,monospace;font-size:14px;padding:12px 16px;-webkit-user-select:all;user-select:all;word-break:break-all}.verify-form{margin-top:24px}.verify-form .form-group{margin-bottom:16px}.verify-form label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px;text-align:center}.code-input{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:SF Mono,Monaco,Consolas,monospace;font-size:28px;letter-spacing:12px;padding:16px;text-align:center;transition:border-color .2s;width:100%}.code-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.backup-warning{background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;color:#92400e;font-size:13px;line-height:1.5;margin-bottom:24px;padding:14px 16px}.backup-codes{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.backup-code{background:#f3f4f6;border-radius:6px;color:#1f2937;font-family:SF Mono,Monaco,Consolas,monospace;font-size:14px;padding:10px;text-align:center;-webkit-user-select:all;user-select:all}.backup-actions{display:flex;gap:12px;margin-bottom:12px}.btn-outline{background:#0000;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px;transition:all .2s}.btn-outline:hover{background:#667eea;color:#fff}@media (max-width:480px){.client-2fa-setup-card{padding:30px 20px}.setup-header h1{font-size:20px}.code-input{font-size:24px;letter-spacing:8px}.backup-codes{grid-template-columns:1fr}.backup-actions{flex-direction:column}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;scroll-behavior:smooth}.app{min-height:100vh;position:relative}.market-data-with-luno{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr;width:100%}.luno-orderbook-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;width:100%}.luno-orderbook-container .luno-order-book{grid-column:auto}.mobile-menu-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;cursor:pointer;display:none;flex-direction:column;gap:4px;height:48px;justify-content:center;left:20px;position:fixed;top:20px;transition:all .3s ease;width:48px;z-index:1001}.mobile-menu-button:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:scale(1.05)}.mobile-menu-button:active{transform:scale(.95)}.hamburger-line{background-color:#fff;border-radius:1px;height:2px;transition:all .3s ease;width:20px}.mobile-menu-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;display:none;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:999}.app-layout,.main-content{min-height:100vh}.main-content{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);margin-left:280px;padding:20px;transition:margin-left .3s ease}.main-content.sidebar-collapsed{margin-left:70px}.market-data-top{margin-bottom:16px;width:100%}.dashboard-grid{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:1fr 2fr;width:100%}.balances-section,.positions-section{animation:slideInLeft .5s ease-out;min-width:0}.orders-section{animation:slideInRight .5s ease-out;min-width:0}.account-balances-page{animation:fadeIn .5s ease-out;margin:0 auto;max-width:1200px}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-screen{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e0e7ff;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:20px;width:40px}.loading-screen p{color:#6b7280;font-size:1.1em;font-weight:500}@media (max-width:480px){.main-content,.main-content.sidebar-collapsed{margin-left:0;padding:80px 10px 15px}.mobile-menu-button{height:44px;left:15px;top:15px;width:44px}.dashboard-grid{gap:8px}}@media (min-width:481px) and (max-width:768px){.mobile-menu-button{display:flex}.mobile-menu-backdrop{display:block}.main-content,.main-content.sidebar-collapsed{margin-left:0;padding:80px 20px 20px}.dashboard-grid{gap:12px;grid-template-columns:1fr}}@media (min-width:769px) and (max-width:1024px){.main-content{margin-left:280px;padding:20px}.main-content.sidebar-collapsed{margin-left:70px}.dashboard-grid{gap:16px;grid-template-columns:1fr 1.5fr}}@media (min-width:1025px) and (max-width:1200px){.main-content.sidebar-collapsed{margin-left:70px}.dashboard-grid{gap:16px;grid-template-columns:1fr 2fr}}@media (min-width:1201px){.main-content.sidebar-collapsed{margin-left:70px}.dashboard-grid{gap:20px;grid-template-columns:1fr 2fr}.main-content{padding:24px}}@media (max-width:1200px){.dashboard-grid{gap:12px}.dashboard-grid,.luno-orderbook-container,.market-data-with-luno{grid-template-columns:1fr}}@media (max-width:768px){.mobile-menu-button{display:flex}.mobile-menu-backdrop{display:block}.main-content,.main-content.sidebar-collapsed{margin-left:0;padding:80px 15px 15px}.dashboard-grid{gap:12px}.dashboard-grid,.luno-orderbook-container,.market-data-with-luno{grid-template-columns:1fr}}@media (hover:none) and (pointer:coarse){.mobile-menu-button{min-height:48px;min-width:48px}.nav-item{min-height:48px}.mobile-close-button{min-height:44px;min-width:44px}[role=button],button,input[type=button],input[type=submit]{min-height:44px}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{font-size:16px;min-height:44px}}.two-factor-setup-required{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.two-factor-setup-required .setup-container{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:600px;overflow:hidden;padding:0;width:100%}.two-factor-setup-required .setup-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;text-align:center}.two-factor-setup-required .setup-header h1{font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.two-factor-setup-required .setup-header p{font-size:1rem;margin:0;opacity:.95}.two-factor-setup-required .two-factor-container{background:#fff;padding:2rem}.two-factor-setup-required .two-factor-header{display:none}body{background-color:#f4f7f6;box-sizing:border-box;font-family:Arial,sans-serif;margin:0;min-height:100vh;overflow-y:auto;padding:20px}.container{background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;margin:0 auto;max-width:800px;padding:20px;width:100%}h1,h2,h3{color:#333;text-align:center}.navigation{display:flex;justify-content:center;margin-bottom:20px}.nav-button{background-color:#4caf50;border-radius:5px;color:#fff;cursor:pointer;display:inline-block;font-weight:700;margin:0 10px;padding:10px 20px;text-decoration:none;transition:background-color .3s}.nav-button:hover{background-color:#45a049}.form-container{margin-top:20px}label{color:#555;display:block;margin-bottom:8px}input[type=number],input[type=text],select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;margin-bottom:16px;padding:8px;width:100%}button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px}button:hover{background-color:#0056b3}.form-container button,.navigation button,button.login-btn,button.nav-button{width:100%}.spreadsheet-data{background-color:#f8f9fa;border-radius:4px;margin-top:20px;padding:10px}table{border-collapse:collapse;width:100%}td,th{border:1px solid #ddd;padding:8px;text-align:left}th{background-color:#f2f2f2}input[type=date],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],select,textarea{font-size:16px}@media (max-width:768px){.form-modal-overlay,.modal-overlay{align-items:flex-start;padding:5vh 10px 10px}.modal,.modal-content,.otc-form-container{-webkit-overflow-scrolling:touch;max-height:85vh;max-width:none!important;overflow-y:auto;width:95%!important}.form-actions button,.modal-actions button{min-height:44px;padding:10px 16px}body.modal-open{overflow:hidden;position:fixed;width:100%}}@media (max-width:480px){.form-modal-overlay,.modal-overlay{padding:2vh 5px 5px}.modal,.modal-content{max-height:90vh;padding:15px;width:98%!important}.form-actions,.modal-actions{flex-direction:column;gap:8px}.form-actions button,.modal-actions button{min-height:48px;width:100%}}
/*# sourceMappingURL=main.26270ec3.css.map*/