:root{--bg-primary: rgb(18, 18, 18);--bg-secondary: rgb(24, 24, 24);--bg-tertiary: rgb(28, 28, 28);--bg-elevated: rgb(32, 32, 32);--border-primary: rgb(38, 38, 38);--border-secondary: rgb(64, 64, 64);--text-primary: rgb(255, 255, 255);--text-secondary: rgb(156, 163, 175);--text-muted: rgb(107, 114, 128);--accent-green: rgb(16, 185, 129);--accent-green-hover: rgb(5, 150, 105);--accent-green-muted: rgba(16, 185, 129, .15);--accent-red: rgb(239, 68, 68);--accent-red-hover: rgb(220, 38, 38);--accent-red-muted: rgba(239, 68, 68, .15);--accent-blue: rgb(59, 130, 246);--accent-blue-muted: rgba(59, 130, 246, .15);--accent-yellow: rgb(234, 179, 8);--accent-yellow-muted: rgba(234, 179, 8, .15);--discord-purple: rgb(88, 101, 242);--discord-purple-hover: rgb(71, 82, 196);--success: rgb(34, 197, 94);--error: rgb(239, 68, 68);--warning: rgb(234, 179, 8);--info: rgb(59, 130, 246);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-compact-1: .125rem;--space-compact-2: .375rem;--space-compact-3: .5rem;--space-compact-4: .75rem;--space-compact-5: 1rem;--space-compact-6: 1.125rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -4px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 8px 10px -6px rgba(0, 0, 0, .5);--transition-fast: .1s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-toast: 1070;--nav-height: 60px;--impersonation-banner-height: 36px;--watchlist-width: 250px;--order-entry-width: 320px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px)}[data-theme=light]{--bg-primary: rgb(247, 248, 250);--bg-secondary: rgb(255, 255, 255);--bg-tertiary: rgb(244, 245, 248);--bg-elevated: rgb(234, 236, 241);--border-primary: rgb(228, 231, 236);--border-secondary: rgb(208, 213, 221);--text-primary: rgb(15, 18, 22);--text-secondary: rgb(71, 84, 103);--text-muted: rgb(102, 112, 133);--accent-green: rgb(22, 163, 74);--accent-green-hover: rgb(15, 118, 53);--accent-green-muted: rgba(22, 163, 74, .1);--accent-red: rgb(220, 38, 38);--accent-red-hover: rgb(185, 28, 28);--accent-red-muted: rgba(220, 38, 38, .1);--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06);--shadow-md: 0 4px 12px rgba(16, 24, 40, .1);--shadow-lg: 0 12px 28px rgba(16, 24, 40, .12)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}a{color:var(--accent-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}::selection{background-color:var(--accent-blue);color:var(--text-primary)}.text-green{color:var(--accent-green)!important}.text-red{color:var(--accent-red)!important}.text-muted{color:var(--text-muted)!important}.text-secondary{color:var(--text-secondary)!important}.bg-green{background-color:var(--accent-green-muted)!important}.bg-red{background-color:var(--accent-red-muted)!important}.font-mono{font-family:var(--font-mono)!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes flash-green{0%{background-color:var(--accent-green-muted)}to{background-color:transparent}}@keyframes flash-red{0%{background-color:var(--accent-red-muted)}to{background-color:transparent}}.animate-fade-in{animation:fadeIn var(--transition-normal)}.animate-slide-in-right{animation:slideInRight var(--transition-slow)}.animate-slide-in-up{animation:slideInUp var(--transition-slow)}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.flash-up{animation:flash-green .6s ease-out}.flash-down{animation:flash-red .6s ease-out}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:var(--font-medium);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}.btn-md{height:40px;padding:0 var(--space-4);font-size:var(--text-sm)}.btn-lg{height:48px;padding:0 var(--space-6);font-size:var(--text-base)}.btn-primary{background-color:var(--accent-green);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--accent-green-hover)}.btn-danger{background-color:var(--accent-red);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--accent-red-hover)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-secondary)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-elevated);border-color:var(--text-muted)}.btn-ghost{background-color:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-discord{background-color:var(--discord-purple);color:#fff}.btn-discord:hover:not(:disabled){background-color:var(--discord-purple-hover)}.input,.form-input{width:100%;padding:0 var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);background-color:var(--bg-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input,input.form-input,select.form-input{height:40px}textarea.form-input{padding:var(--space-2) var(--space-3);min-height:40px;line-height:1.4}.input::placeholder,.form-input::placeholder{color:var(--text-muted)}.input:focus,.form-input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-muted)}.input:disabled,.form-input:disabled{opacity:.5;cursor:not-allowed}.input-error{border-color:var(--accent-red)}.input-error:focus{box-shadow:0 0 0 3px var(--accent-red-muted)}.card{background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-4)}.card-lg{padding:var(--space-6)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.card-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full)}.badge-buy{background-color:var(--accent-green-muted);color:var(--accent-green)}.badge-sell{background-color:var(--accent-red-muted);color:var(--accent-red)}.badge-open{background-color:var(--accent-blue-muted);color:var(--accent-blue)}.badge-filled{background-color:var(--accent-green-muted);color:var(--accent-green)}.badge-cancelled{background-color:#6b728033;color:var(--text-muted)}.badge-partial{background-color:var(--accent-yellow-muted);color:var(--accent-yellow)}.order-rejection-reason{margin-top:4px;font-size:11px;color:var(--text-muted);max-width:220px}.instrument-tag{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;font-size:9px;font-weight:var(--font-bold);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px}.tag-stock{background-color:#3b82f626;color:var(--accent-blue)}.tag-bond{background-color:#eab30826;color:var(--accent-yellow)}.tag-etf{background-color:#a855f726;color:var(--accent-purple, #a855f7)}.tag-futures{background-color:#ef444426;color:var(--accent-red, #ef4444)}.tag-cfut{background-color:#14b8a626;color:var(--accent-teal, #14b8a6)}.tag-casino{background-color:#22c55e26;color:var(--accent-green, #22c55e)}.tag-halted{background-color:#ef444440;color:#ef4444}.tag-qi{background-color:#f59e0b33;color:#f59e0b}.tag-server{background-color:#10b98126;color:var(--accent-emerald, #10b981)}.tag-hedge-fund{background-color:#a855f726;color:var(--accent-purple, #a855f7)}.tag-llc-corp{background-color:#3b82f626;color:var(--accent-blue)}.tag-government{background-color:#fbbf2426;color:var(--accent-yellow)}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--font-medium);color:var(--text-muted);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.05em;border-bottom:1px solid var(--border-primary);background-color:var(--bg-secondary);position:sticky;top:0}.table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-primary);color:var(--text-primary)}.table tr:hover td{background-color:var(--bg-tertiary)}.table-number{font-family:var(--font-mono);text-align:right}.tabs{display:flex;gap:var(--space-1);padding:var(--space-1);background-color:var(--bg-tertiary);border-radius:var(--radius-md)}.tab{flex:1;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.tab:hover{color:var(--text-primary)}.tab.active{background-color:var(--bg-secondary);color:var(--text-primary)}.tab-buy.active{background-color:var(--accent-green);color:#fff}.tab-sell.active{background-color:var(--accent-red);color:#fff}.modal-overlay{position:fixed;inset:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-normal)}.modal-content{background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:slideInUp var(--transition-slow)}.modal-content.order-entry-modal-large{max-width:1100px;width:80vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.modal-content.accountant-tools-modal-wide{max-width:900px;width:95vw}.modal-body.order-entry-modal-large{padding:var(--space-2);overflow-y:auto;flex:1;min-height:0}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-primary)}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.modal-close:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.modal-body{padding:var(--space-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-primary)}.futures-risk-modal{max-width:520px}.futures-risk-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-primary)}.futures-risk-warning-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;background-color:var(--color-danger, #ef4444);color:#fff;font-weight:var(--font-bold);font-size:var(--text-lg);display:flex;align-items:center;justify-content:center}.futures-risk-title{flex:1;font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0}.futures-risk-close{font-size:var(--text-xl);line-height:1}.futures-risk-body{padding:var(--space-6)}.futures-risk-intro{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:var(--text-sm)}.futures-risk-statement{padding:var(--space-4);border:1px solid var(--color-danger, #ef4444);border-radius:var(--radius-md);background-color:#ef444414;color:var(--text-primary);font-size:var(--text-sm);line-height:1.6}.futures-risk-statement p{margin:0}.futures-risk-statement p+p{margin-top:var(--space-3)}.futures-risk-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-primary)}.futures-risk-authorize{white-space:nowrap}.toast-container{position:fixed;top:calc(var(--nav-height) + var(--space-4));right:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast)}.toast{display:flex;align-items:center;gap:var(--space-3);min-width:300px;max-width:400px;padding:var(--space-3) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:slideInRight var(--transition-slow)}.toast-icon{flex-shrink:0}.toast-content{flex:1}.toast-title{font-weight:var(--font-medium);margin-bottom:var(--space-1)}.toast-message{font-size:var(--text-sm);color:var(--text-secondary)}.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1)}.toast-success{border-left:3px solid var(--success)}.toast-error{border-left:3px solid var(--error)}.toast-warning{border-left:3px solid var(--warning)}.toast-info{border-left:3px solid var(--info)}.toast-variant-buy{border-left:3px solid var(--accent-green)}.toast-variant-buy .toast-icon svg{color:var(--accent-green)}.toast-variant-sell{border-left:3px solid var(--accent-red)}.toast-variant-sell .toast-icon svg{color:var(--accent-red)}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;right:0;min-width:200px;max-height:calc(100vh - 80px);background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);animation:fadeIn var(--transition-fast);overflow-y:auto;overflow-x:hidden}.dropdown-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-primary)}.dropdown-item{display:block;width:100%;padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-sm);color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:all var(--transition-fast)}.dropdown-item:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.dropdown-divider{height:1px;background-color:var(--border-primary);margin:var(--space-1) 0}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-elevated) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-sm)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary)}.form-error{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--accent-red)}.form-helper{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--text-muted)}.select{width:100%;height:40px;padding:0 var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);background-color:var(--bg-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-10)}.select:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-muted)}.contracts-layout{display:grid;grid-template-columns:300px 1fr 300px;gap:var(--space-4);flex:1;min-height:0;padding:var(--space-4);background:var(--bg-primary);overflow:hidden}@media (min-width: 768px){.contracts-layout{gap:var(--space-compact-3);padding:var(--space-compact-3)}}.contract-list-panel{display:flex;flex-direction:column;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);overflow:hidden}.contract-list-header{padding:var(--space-4);border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.contract-list-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-3)}.contract-search{position:relative;margin-bottom:var(--space-3)}.contract-search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.contract-search .input{padding-left:var(--space-10);background:var(--bg-primary)}.contract-filter-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);background:var(--bg-primary);border-radius:var(--radius-md)}.contract-filter-tab{flex:1;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.contract-filter-tab:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.contract-filter-tab.active{background:var(--accent-green);color:#fff}.contract-list-items{flex:1;overflow-y:auto}.contract-list-item{padding:var(--space-4);cursor:pointer;border-bottom:1px solid var(--border-primary);transition:background var(--transition-fast)}@media (min-width: 768px){.contract-list-item{padding:var(--space-compact-3);gap:var(--space-compact-2)}}.contract-list-item:hover{background:var(--bg-tertiary)}.contract-list-item.selected{background:var(--bg-tertiary);border-left:3px solid var(--accent-green);padding-left:calc(var(--space-4) - 3px)}.contract-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.contract-ticker{font-weight:var(--font-bold);color:var(--text-primary);font-size:var(--text-sm);font-family:var(--font-mono)}.contract-status-badge{font-size:10px;font-weight:var(--font-semibold);padding:2px 8px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.03em}.contract-status-badge.active{background:#10b98126;color:var(--accent-green)}.contract-status-badge.halted{background:#eab30826;color:var(--accent-yellow)}.contract-status-badge.pending{background:#3b82f626;color:var(--accent-blue)}.contract-status-badge.resolved{background:var(--bg-elevated);color:var(--text-muted)}.contract-item-title{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.4;margin-bottom:var(--space-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.contract-item-prices{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.contract-price-row{display:flex;align-items:center;gap:var(--space-2)}.contract-price-label{font-size:var(--text-xs);font-weight:var(--font-bold);width:28px;color:var(--text-muted)}.contract-price-value{font-family:var(--font-mono);font-weight:var(--font-bold);font-size:var(--text-sm)}.contract-price-value.yes{color:var(--accent-green)}.contract-price-value.no{color:var(--accent-red)}.contract-price-prob{font-size:var(--text-xs);color:var(--text-muted);margin-left:auto}.contract-item-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-2);border-top:1px solid var(--border-primary)}.contract-volume{font-size:var(--text-xs);color:var(--text-muted)}.contract-expiration{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.contract-expiration.expired{color:var(--accent-yellow)}.countdown-badge{display:inline-block;margin-left:var(--space-2);padding:1px 6px;border-radius:4px;background:color-mix(in srgb,var(--accent-blue) 15%,transparent);color:var(--accent-blue);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.countdown-badge.expired{background:color-mix(in srgb,var(--accent-yellow) 15%,transparent);color:var(--accent-yellow)}.contract-list-empty{padding:var(--space-8);text-align:center;color:var(--text-muted)}.contract-main-panel{display:flex;flex-direction:column;gap:var(--space-4);min-height:0;overflow-y:auto}.contract-data-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);min-height:200px;max-height:300px;flex-shrink:0}@media (min-width: 768px){.contract-data-panels{gap:var(--space-compact-3);max-height:260px}}.contract-detail-panel{display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto;padding-right:var(--space-2);flex:1;min-height:0}.contract-detail{display:flex;flex-direction:column;gap:var(--space-4)}.contract-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-4);color:var(--text-muted);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary)}.kukkis-empty-logo{width:80%;max-height:80%;flex:1 1 0;min-height:0;object-fit:contain;filter:invert(1) brightness(2);opacity:.35}.kukkis-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0000008c;backdrop-filter:blur(4px);animation:kukkis-flash .5s ease-in-out forwards}.kukkis-modal{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-8);text-align:center;box-shadow:0 24px 60px #00000080;animation:kukkis-pop-in .3s cubic-bezier(.175,.885,.32,1.275);min-width:260px}.kukkis-modal-inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.kukkis-modal-logo{width:80px;height:80px;object-fit:contain;filter:invert(1) brightness(2)}.kukkis-modal-text{font-size:1.1rem;font-weight:600;color:var(--text-primary);letter-spacing:.02em;margin:0}.kukkis-modal-bar{width:100%;height:3px;background:var(--border-primary);border-radius:2px;overflow:hidden}.kukkis-modal-progress{height:100%;width:100%;background:var(--accent-blue, #4f8ef7);border-radius:2px;transform-origin:left;animation:kukkis-drain 3s linear forwards}@keyframes kukkis-fade-in{0%{opacity:0}to{opacity:1}}@keyframes kukkis-pop-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes kukkis-drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes kukkis-flash{0%{opacity:0}25%{opacity:1}to{opacity:0}}.contract-detail-header{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);padding:var(--space-5)}@media (min-width: 768px){.contract-detail-header{padding:var(--space-compact-4)}}.contract-detail-info{margin-bottom:var(--space-4)}.contract-detail-ticker{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.contract-detail-ticker .ticker{font-size:var(--text-sm);font-weight:var(--font-bold);font-family:var(--font-mono);color:var(--text-primary);background:var(--bg-primary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.contract-detail-ticker .status-badge{font-size:10px;font-weight:var(--font-semibold);padding:3px 10px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.03em}.contract-detail-ticker .status-badge.active{background:#10b98126;color:var(--accent-green)}.contract-detail-ticker .status-badge.trading_halted,.contract-detail-ticker .status-badge.halted{background:#eab30826;color:var(--accent-yellow)}.contract-detail-ticker .status-badge.pending_resolution{background:#3b82f626;color:var(--accent-blue)}.contract-detail-ticker .status-badge.resolved{background:var(--bg-elevated);color:var(--text-muted)}.contract-detail-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);line-height:1.4;margin:0}.contract-price-display{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.price-card{display:flex;flex-direction:column;padding:var(--space-4);background:var(--bg-primary);border-radius:var(--radius-md);text-align:center}.price-card.yes{border:1px solid rgba(16,185,129,.3)}.price-card.no{border:1px solid rgba(239,68,68,.3)}.price-card .price-label{font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.05em;margin-bottom:var(--space-1)}.price-card.yes .price-label{color:var(--accent-green)}.price-card.no .price-label{color:var(--accent-red)}.price-card .price-value{font-size:var(--text-2xl);font-weight:var(--font-bold);font-family:var(--font-mono);margin-bottom:var(--space-1)}.price-card.yes .price-value{color:var(--accent-green)}.price-card.no .price-value{color:var(--accent-red)}.price-card .price-probability{font-size:var(--text-xs);color:var(--text-muted)}.contract-chart{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);padding:var(--space-4)}.contract-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.chart-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary)}.chart-legend{display:flex;gap:var(--space-4)}.legend-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.legend-item .legend-dot{width:8px;height:8px;border-radius:50%}.legend-item.yes .legend-dot{background:var(--accent-green)}.legend-item.no .legend-dot{background:var(--accent-red)}.contract-chart-container{position:relative;height:220px;background:var(--bg-primary);border-radius:var(--radius-md);overflow:hidden}.contract-chart-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:var(--text-sm)}.price-chart-svg{width:100%;height:100%}.contract-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.contract-info-card{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);padding:var(--space-4)}.contract-info-card h3{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-3)}.contract-info-card p{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6}.contract-details-list{display:flex;flex-direction:column;gap:var(--space-2)}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0;border-bottom:1px solid var(--border-primary)}.detail-row:last-child{border-bottom:none}.detail-label{font-size:var(--text-sm);color:var(--text-muted)}.detail-value{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-primary);font-weight:var(--font-medium)}.detail-link{display:flex;align-items:center;gap:var(--space-1);color:var(--accent-blue);font-size:var(--text-sm);text-decoration:none}.detail-link:hover{text-decoration:underline}.outcome-badge{font-size:var(--text-xs);font-weight:var(--font-bold);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.outcome-badge.yes{background:#10b98126;color:var(--accent-green)}.outcome-badge.no{background:#ef444426;color:var(--accent-red)}.contract-orderbook-panel{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);overflow:hidden}.contract-orderbook-panel .panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-primary)}.contract-orderbook-panel .panel-header h3{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin:0}.contract-orderbook-panel .panel-empty{padding:var(--space-6);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.orderbook-side-toggle{display:flex;gap:var(--space-1);padding:2px;background:var(--bg-primary);border-radius:var(--radius-md)}.orderbook-side-toggle .side-btn{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.orderbook-side-toggle .side-btn.active.yes{background:#10b98126;color:var(--accent-green)}.orderbook-side-toggle .side-btn.active.no{background:#ef444426;color:var(--accent-red)}.orderbook-content{padding:var(--space-3)}.orderbook-header{display:grid;grid-template-columns:1fr 1fr 1fr;padding:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-primary)}.orderbook-header span:last-child{text-align:right}.orderbook-asks,.orderbook-bids{display:flex;flex-direction:column}.orderbook-row{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;padding:var(--space-2);font-size:var(--text-sm);font-family:var(--font-mono)}.orderbook-row .orderbook-bar{position:absolute;top:0;bottom:0;right:0;opacity:.1}.orderbook-row.ask .orderbook-bar{background:var(--accent-red)}.orderbook-row.bid .orderbook-bar{background:var(--accent-green)}.orderbook-row .price{z-index:1}.orderbook-row.ask .price{color:var(--accent-red)}.orderbook-row.bid .price{color:var(--accent-green)}.orderbook-row .qty{z-index:1;color:var(--text-secondary)}.orderbook-row .total{z-index:1;text-align:right;color:var(--text-muted)}.orderbook-spread{padding:var(--space-2);text-align:center;font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-primary);border-radius:var(--radius-sm);margin:var(--space-2) 0}.pool-badge{font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--accent-blue, #3b82f6);background:#3b82f626;padding:2px var(--space-2);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.pool-info-content{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.pool-prices{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.pool-price{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3);background:var(--bg-primary);border-radius:var(--radius-md)}.pool-price-label{font-size:var(--text-xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.05em}.pool-price.yes .pool-price-label{color:var(--accent-green)}.pool-price.no .pool-price-label{color:var(--accent-red)}.pool-price-value{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--text-primary);font-family:var(--font-mono)}.pool-price-dollar{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.pool-depth{display:flex;flex-direction:column;gap:var(--space-2)}.pool-depth-label{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.pool-depth-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--bg-primary)}.pool-depth-fill.yes{background:var(--accent-green);opacity:.6;transition:width var(--transition-normal)}.pool-depth-fill.no{background:var(--accent-red);opacity:.6;transition:width var(--transition-normal)}.pool-depth-labels{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.pool-stats{display:flex;flex-direction:column;gap:var(--space-2)}.pool-stat-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-1) 0}.pool-stat-label{font-size:var(--text-xs);color:var(--text-muted)}.pool-stat-value{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);font-family:var(--font-mono)}.cpmm-quote-preview{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--space-3);margin:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);border:1px solid var(--border-primary)}.quote-row{display:flex;justify-content:space-between;align-items:center}.quote-label{font-size:var(--text-xs);color:var(--text-muted)}.quote-value{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);font-family:var(--font-mono)}.slippage-buttons{display:flex;gap:var(--space-2)}.slippage-btn{flex:1;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.slippage-btn:hover{color:var(--text-secondary);border-color:var(--border-secondary)}.slippage-btn.active{color:var(--text-primary);background:var(--bg-tertiary);border-color:var(--accent-blue, #3b82f6)}.contract-trade-feed-panel{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);overflow:hidden}.contract-trade-feed-panel .panel-header{padding:var(--space-4);border-bottom:1px solid var(--border-primary)}.contract-trade-feed-panel .panel-header h3{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin:0}.contract-trade-feed-panel .panel-empty{padding:var(--space-6);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.trade-feed-list{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);max-height:200px;overflow-y:auto}.trade-feed-item{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-primary);border-radius:var(--radius-sm);font-size:var(--text-sm)}.trade-feed-item .trade-side{font-weight:var(--font-bold);font-size:var(--text-xs)}.trade-feed-item .trade-side.yes{color:var(--accent-green)}.trade-feed-item .trade-side.no{color:var(--accent-red)}.trade-feed-item .trade-info{font-family:var(--font-mono);color:var(--text-secondary)}.trade-feed-item .trade-time{font-size:var(--text-xs);color:var(--text-muted)}.contract-order-entry-panel{display:flex;flex-direction:column;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);overflow:hidden;max-height:100%;min-height:0}.contract-order-entry-panel .order-entry-form{flex:1;overflow-y:auto;min-height:0}.order-entry-header{background:var(--bg-tertiary)}.chip{position:fixed;width:150px;background:#0c0e12;border:1px solid #1c1f27;border-radius:10px;box-shadow:0 4px 20px #0009,inset 0 1px #ffffff0a;z-index:900;overflow:hidden;user-select:none;touch-action:none;transition:box-shadow .2s,border-color .2s}.chip--dragging{box-shadow:0 20px 60px #000000d9,0 0 0 1px #4ade8033;border-color:#4ade8040}.chip__accent{height:2px;width:100%}.chip__handle{display:flex;justify-content:center;gap:4px;padding:5px 0 2px}.chip__dot{display:block;width:3px;height:3px;border-radius:50%;background:#94a3b8;opacity:.2}.chip__header{display:flex;align-items:center;justify-content:space-between;padding:2px 11px 0}.chip__ticker{font-family:Syne,sans-serif;font-weight:700;font-size:13px;color:#e2e8f0;letter-spacing:.04em}.chip__type-badge{font-family:IBM Plex Mono,monospace;font-size:7px;color:#374151;background:#13151b;border:1px solid #1c1f27;padding:1px 4px;border-radius:2px}.chip__price{font-family:IBM Plex Mono,monospace;font-weight:600;font-size:20px;color:#e2e8f0;line-height:1;letter-spacing:-.02em;padding:4px 11px 0}.chip__delta{font-family:IBM Plex Mono,monospace;font-weight:600;font-size:10px;color:#4ade80;padding:2px 11px 6px}.chip__delta--down{color:#f87171}.chip__sparkline{width:150px;overflow:hidden;line-height:0}.chip__sparkline svg{display:block}.chip__divider{height:1px;background:#13151b;margin:0 11px}.chip-trade-btn{display:block;width:calc(100% - 22px);margin:8px 11px 10px;padding:7px;border:none;border-radius:6px;background:#4ade80;color:#021204;font-family:Syne,sans-serif;font-weight:700;font-size:10px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;box-shadow:0 2px 10px #4ade8040;transition:background .15s,box-shadow .15s,transform .15s}.chip-trade-btn:hover{background:#6ee7a0;box-shadow:0 4px 16px #4ade8061;transform:translateY(-1px)}.chip-overlay{position:fixed;inset:0;background:#05070acc;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:950;opacity:0;pointer-events:none;transition:opacity .2s}.chip-overlay--open{opacity:1;pointer-events:all}.chip-modal{width:320px;background:#0c0e12;border:1px solid #1c1f27;border-radius:14px;overflow:hidden;box-shadow:0 40px 100px #000000e6,inset 0 1px #ffffff0a;transform:translateY(14px) scale(.97);transition:transform .22s cubic-bezier(.4,0,.2,1)}.chip-overlay--open .chip-modal{transform:translateY(0) scale(1)}.chip-modal__accent{height:2px;width:100%}.chip-modal__header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px;border-bottom:1px solid #13151b}.chip-modal__header-left{display:flex;align-items:center;gap:8px}.chip-modal__symbol{font-family:Syne,sans-serif;font-weight:700;font-size:14px;color:#e2e8f0}.chip-modal__price-pill{font-family:IBM Plex Mono,monospace;font-size:10px;color:#4ade80;background:#4ade8014;border:1px solid rgba(74,222,128,.18);padding:2px 7px;border-radius:4px}.chip-modal__price-pill--down{color:#f87171;background:#f8717114;border-color:#f871712e}.chip-modal__close{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid #1c1f27;border-radius:5px;background:#0a0c10;color:#374151;font-size:12px;cursor:pointer;transition:color .15s,border-color .15s;flex-shrink:0}.chip-modal__close:hover{color:#94a3b8;border-color:#2d3340}.chip-modal__side-toggle{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:12px 16px 0;padding:3px;background:#080a0c;border:1px solid #13151b;border-radius:7px}.chip-modal__side-btn{padding:7px;border:none;border-radius:5px;background:transparent;color:#2d3340;font-family:Syne,sans-serif;font-weight:700;font-size:11px;letter-spacing:.08em;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.chip-modal__side-btn--buy-active{background:#4ade80;color:#021204;box-shadow:0 2px 10px #4ade804d}.chip-modal__side-btn--sell-active{background:#f87171;color:#0e0101;box-shadow:0 2px 10px #f871714d}.chip-modal__order-types{display:flex;gap:5px;margin:10px 16px 0}.chip-modal__order-type-btn{flex:1;padding:5px;border:1px solid #1c1f27;border-radius:5px;background:transparent;color:#374151;font-family:IBM Plex Mono,monospace;font-weight:600;font-size:8px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.chip-modal__order-type-btn--active{background:#13151b;border-color:#2d3340;color:#94a3b8}.chip-modal__inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 16px 0}.chip-modal__input-group{display:flex;flex-direction:column}.chip-modal__input-label{font-family:IBM Plex Mono,monospace;font-size:8px;color:#374151;text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}.chip-modal__input{background:#080a0c;border:1px solid #1c1f27;border-radius:6px;padding:8px 9px;font-family:IBM Plex Mono,monospace;font-weight:600;font-size:13px;color:#e2e8f0;outline:none;width:100%;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.chip-modal__input:focus{border-color:#2d3340;box-shadow:0 0 0 2px #4ade8012}.chip-modal__input:disabled{cursor:default}.chip-modal__stats{margin:10px 16px 0;background:#080a0c;border:1px solid #13151b;border-radius:7px;overflow:hidden}.chip-modal__stat-row{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-bottom:1px solid #0f1116}.chip-modal__stat-row--last{border-bottom:none}.chip-modal__stat-key{font-family:IBM Plex Mono,monospace;font-size:8px;color:#374151;text-transform:uppercase;letter-spacing:.07em}.chip-modal__stat-val{font-family:IBM Plex Mono,monospace;font-size:11px;color:#94a3b8}.chip-modal__stat-val--cash{color:#4ade80}.chip-modal__cta{display:block;width:calc(100% - 32px);margin:10px 16px 14px;padding:11px;border:none;border-radius:7px;font-family:Syne,sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s,box-shadow .15s,transform .15s}.chip-modal__cta--buy{background:#4ade80;color:#021204;box-shadow:0 4px 18px #4ade8047}.chip-modal__cta--buy:hover{background:#6ee7a0;box-shadow:0 6px 26px #4ade8066;transform:translateY(-1px)}.chip-modal__cta--sell{background:#f87171;color:#0e0101;box-shadow:0 4px 18px #f8717147}.chip-modal__cta--sell:hover{background:#fca5a5;box-shadow:0 6px 26px #f8717166}.order-entry-subheader{background:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.order-side-tabs{display:grid;grid-template-columns:1fr 1fr}.order-side-tabs .tab{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);border:none;background:transparent;cursor:pointer;transition:all var(--transition-fast);position:relative;color:var(--text-muted)}.order-side-tabs .tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:transparent}.order-side-tabs .tab-buy:hover{color:var(--accent-green)}.order-side-tabs .tab-buy.active{background:#10b9811a;color:var(--accent-green)}.order-side-tabs .tab-buy.active:after{background:var(--accent-green)}.order-side-tabs .tab-sell:hover{color:var(--accent-red)}.order-side-tabs .tab-sell.active{background:#ef44441a;color:var(--accent-red)}.order-side-tabs .tab-sell.active:after{background:var(--accent-red)}.contract-tabs{display:grid;grid-template-columns:1fr 1fr}.contract-tabs .tab{padding:var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);border:none;background:transparent;cursor:pointer;transition:all var(--transition-fast);position:relative}.contract-tabs .tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:transparent}.contract-tabs .tab-yes{color:var(--text-muted)}.contract-tabs .tab-yes:hover{color:var(--accent-green)}.contract-tabs .tab-yes.active{background:#10b9811a;color:var(--accent-green)}.contract-tabs .tab-yes.active:after{background:var(--accent-green)}.contract-tabs .tab-no{color:var(--text-muted)}.contract-tabs .tab-no:hover{color:var(--accent-red)}.contract-tabs .tab-no.active{background:#ef44441a;color:var(--accent-red)}.contract-tabs .tab-no.active:after{background:var(--accent-red)}.contract-order-info{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--bg-primary);border-bottom:1px solid var(--border-primary)}.contract-order-ticker{font-weight:var(--font-bold);font-family:var(--font-mono);color:var(--text-primary)}.contract-order-probability{font-family:var(--font-mono);font-weight:var(--font-semibold);font-size:var(--text-sm)}.contract-order-probability.yes{color:var(--accent-green)}.contract-order-probability.no{color:var(--accent-red)}.order-entry-form{flex:1;padding:var(--space-4);display:flex;flex-direction:column}.form-label{display:flex;justify-content:space-between;align-items:center}.form-hint{font-weight:var(--font-normal);color:var(--text-muted);font-size:var(--text-xs)}.contract-order-summary{margin-top:var(--space-4);padding:var(--space-3);background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-primary)}.summary-row{display:flex;justify-content:space-between;padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--text-secondary)}.summary-row.highlight{padding-top:var(--space-3);margin-top:var(--space-2);border-top:1px solid var(--border-secondary);font-weight:var(--font-semibold);color:var(--text-primary)}.summary-value{font-family:var(--font-mono);font-weight:var(--font-medium)}.summary-value.positive{color:var(--accent-green)}.summary-value.negative{color:var(--accent-red)}.current-position-info{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-4);padding:var(--space-3);background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-md);font-size:var(--text-sm)}.position-label{color:var(--text-secondary)}.position-value{font-family:var(--font-mono);font-weight:var(--font-semibold);color:var(--text-primary)}.order-warning{margin-top:var(--space-4);padding:var(--space-3);background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);color:var(--accent-red);font-size:var(--text-sm);text-align:center}.market-order-warning{margin:var(--space-3) 0;padding:var(--space-3);background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md);font-size:var(--text-xs);color:#f59e0b;line-height:1.5}.market-order-warning-title{font-weight:var(--font-semibold);margin-bottom:var(--space-1);font-size:var(--text-sm)}.order-warning-banner{display:flex;align-items:center;gap:6px;padding:8px 10px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.35);border-radius:6px;color:#f59e0b;font-size:12px;margin-bottom:8px}.order-balance{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-4);padding:var(--space-3);background:var(--bg-primary);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-muted)}.order-balance-value{font-family:var(--font-mono);font-weight:var(--font-semibold);color:var(--text-primary)}.order-holdings{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--text-secondary);padding:var(--space-2) 0}.order-holdings-value{font-family:var(--font-mono);color:var(--text-primary)}.order-submit{margin-top:auto;padding-top:var(--space-4)}.contract-order-explanation{margin-top:var(--space-4);padding:var(--space-3);background:var(--bg-primary);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-muted);line-height:1.6}.order-entry-empty{display:flex;align-items:center;justify-content:center;padding:var(--space-8);color:var(--text-muted);text-align:center;font-size:var(--text-sm)}@media (max-width: 1400px){.contracts-layout{grid-template-columns:280px 1fr 300px}}@media (max-width: 1200px){.contracts-layout{grid-template-columns:260px 1fr 280px;gap:var(--space-3)}.contract-info-grid{grid-template-columns:1fr}}@media (max-width: 992px){.contracts-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;min-height:auto}.contract-list-panel{max-height:350px}.contract-detail-panel{padding-right:0}}@media (max-width: 768px){.btn-sm{height:40px;padding:0 var(--space-4)}.btn-md{height:48px;padding:0 var(--space-5)}.btn-lg{height:52px;padding:0 var(--space-6)}.input,.select{height:48px;font-size:16px}.dropdown-item{min-height:44px;padding:var(--space-4)}.watchlist-item{min-height:56px;padding:var(--space-4)}.tab,.filter-tab{min-height:44px;padding:var(--space-3) var(--space-4)}.table td{padding:var(--space-4)}.toast-container{left:var(--space-4);right:var(--space-4);top:auto;bottom:var(--space-4)}.toast{min-width:auto;max-width:none;width:100%}.modal-overlay{align-items:flex-end}.modal-content{width:100%;max-width:100%;max-height:90vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin-top:auto}.table-scroll-wrapper{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll-wrapper:after{content:"";position:absolute;right:0;top:0;bottom:0;width:24px;background:linear-gradient(to right,transparent,var(--bg-secondary));pointer-events:none}.contract-list-panel{max-height:200px}.contract-data-panels{grid-template-columns:1fr}.form-group{margin-bottom:var(--space-5)}.contract-list-item{padding:var(--space-4);min-height:80px}.order-book-row,.trade-row{padding:var(--space-2) var(--space-3);min-height:36px}}.mobile-trade-fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--accent-blue);color:#fff;border:none;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;z-index:var(--z-sticky);box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),transform var(--transition-fast)}.mobile-trade-fab:hover{background:var(--discord-purple-hover);transform:scale(1.05)}.mobile-order-panel-wrap .order-panel-wrap{width:100%!important;max-width:100%!important}.instrument-mode-tabs{display:flex;gap:var(--space-1);padding:var(--space-2);background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.instrument-mode-tab{flex:1;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase;letter-spacing:.05em}.instrument-mode-tab:hover{color:var(--text-secondary);background:var(--bg-primary)}.instrument-mode-tab.active{color:var(--text-primary);background:var(--bg-secondary);box-shadow:0 1px 2px #0000001a}.mobile-instrument-tabs{margin-bottom:var(--space-3);border-bottom:none;border-radius:var(--radius-md)}.options-contract-info{padding:var(--space-3);background:var(--bg-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.options-info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-1) 0}.options-info-row:not(:last-child){border-bottom:1px solid var(--border-primary);padding-bottom:var(--space-2);margin-bottom:var(--space-2)}.options-info-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.options-info-value{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);font-family:var(--font-mono)}.options-empty-state{padding:var(--space-4);text-align:center;color:var(--text-muted);font-size:var(--text-sm);background:var(--bg-primary);border:1px dashed var(--border-secondary);border-radius:var(--radius-md)}.options-position{background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-md);padding:var(--space-3);margin-top:var(--space-3)}.mobile-options-info{padding:var(--space-2)}.mobile-options-info .options-info-row:not(:last-child){border-bottom:none;margin-bottom:var(--space-1);padding-bottom:var(--space-1)}.options-info-compact{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary)}.options-ticker{font-family:var(--font-mono);font-weight:var(--font-bold);color:var(--text-primary);font-size:var(--text-xs)}.options-type-badge{font-size:10px;font-weight:var(--font-bold);padding:2px 8px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.03em}.options-type-badge.badge-call{background:#10b98126;color:var(--accent-green)}.options-type-badge.badge-put{background:#ef444426;color:var(--accent-red)}.input-error-text{display:block;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--accent-red)}.tag-option{background:#a855f726;color:#a855f7}.halt-modal-overlay{z-index:9999}.halt-modal-content{max-width:420px;animation:slideInUp var(--transition-slow),flash-halt-border 1s ease-in-out infinite;border:2px solid var(--accent-red)}@keyframes flash-halt-border{0%,to{border-color:var(--accent-red);box-shadow:0 0 20px #ef44444d}50%{border-color:#ef44444d;box-shadow:0 0 8px #ef44441a}}.halt-modal-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.2)}.halt-modal-warning-icon{width:28px;height:28px;border-radius:50%;background:var(--accent-red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.halt-modal-title{flex:1;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--accent-red);margin:0}.halt-modal-close{font-size:24px;line-height:1;color:var(--text-muted)}.halt-modal-body{padding:var(--space-6);text-align:center}.halt-modal-symbol{font-size:32px;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-3);letter-spacing:2px}.halt-modal-reason{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-4);line-height:1.5}.halt-modal-countdown-section{margin-top:var(--space-4)}.halt-modal-countdown-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-2)}.halt-modal-countdown{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:36px;font-weight:700;color:var(--accent-red);letter-spacing:3px}.halt-modal-indefinite{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.halt-modal-queue-note{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--text-secondary);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.halt-order-warning{margin-bottom:var(--space-3);background:#f59e0b1a;border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.halt-order-warning-icon{font-size:18px;color:#f59e0b;line-height:1}.halt-order-warning-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.halt-order-warning-text strong{color:#f59e0b}.halt-order-warning-actions{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.halt-order-warning-cancel{flex:1;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:transparent;color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:background .15s}.halt-order-warning-cancel:hover{background:var(--bg-secondary);color:var(--text-primary)}.halt-order-warning-confirm{flex:1;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid rgba(245,158,11,.5);background:#f59e0b26;color:#f59e0b;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background .15s}.halt-order-warning-confirm:hover{background:#f59e0b40}.feature-block-overlay{position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn var(--transition-normal)}.feature-block-modal{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-10);max-width:440px;width:90%;text-align:center;animation:slideInUp var(--transition-slow)}.feature-block-icon{color:var(--text-muted);margin-bottom:var(--space-4);opacity:.6}.feature-block-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 var(--space-3) 0}.feature-block-message{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.6}.options-chain-modal-content{max-width:720px;width:95vw;display:flex;flex-direction:column;max-height:85vh;overflow:hidden}.options-chain-body{display:flex;flex-direction:column;flex:1;overflow:hidden}.options-chain-expirations{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4);overflow-x:auto;border-bottom:1px solid var(--border-primary);flex-shrink:0}.expiration-pill{padding:var(--space-1) var(--space-3);border-radius:999px;border:1px solid var(--border-primary);background:transparent;color:var(--text-secondary);font-size:var(--text-xs);white-space:nowrap;cursor:pointer;transition:all .15s ease}.expiration-pill:hover{border-color:var(--text-secondary);color:var(--text-primary)}.expiration-pill.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.options-chain-grid-wrapper{flex:1;overflow-y:auto;overflow-x:auto;padding:0 var(--space-2)}.options-chain-grid{min-width:480px}.options-chain-header{display:grid;grid-template-columns:1fr 80px 1fr;position:sticky;top:0;z-index:1;background:var(--bg-primary);border-bottom:1px solid var(--border-primary)}.chain-header-cell{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.chain-header-strike{text-align:center}.options-chain-row{display:grid;grid-template-columns:1fr 80px 1fr;border-bottom:1px solid var(--border-secondary)}.options-chain-row:last-child{border-bottom:none}.chain-cell{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);min-height:40px}.chain-cell.clickable{cursor:pointer;transition:background .15s ease}.chain-cell-call.clickable:hover{background:#10b9811a}.chain-cell-put.clickable:hover{background:#ef44441a}.chain-cell-strike{justify-content:center;font-weight:600;font-family:var(--font-mono);background:var(--bg-tertiary);border-left:1px solid var(--border-secondary);border-right:1px solid var(--border-secondary);color:var(--text-primary)}.chain-cell-price{font-family:var(--font-mono);color:var(--text-primary)}.chain-cell-delta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.chain-cell-empty{color:var(--text-muted)}.itm-call{background:#10b9810d}.itm-put{background:#ef44440d}.atm-row{background:#3b82f60d}.atm-strike{border-left:2px solid var(--accent-blue)!important;border-right:2px solid var(--accent-blue)!important;color:var(--accent-blue)}.options-chain-legend{padding:var(--space-2) var(--space-4);text-align:center;font-size:var(--text-xs);color:var(--text-muted);border-top:1px solid var(--border-primary);flex-shrink:0}.options-chain-trigger{width:100%;text-align:left;cursor:pointer;color:var(--text-secondary)}.options-chain-trigger .selected-contract-name{color:var(--text-primary)}@media (max-width: 768px){.options-chain-modal-content{max-width:100%;width:100%;max-height:90vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin-top:auto}.options-chain-modal{align-items:flex-end}}.treasury-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border-primary);padding-bottom:0;overflow-x:auto;scrollbar-width:none}.treasury-tabs::-webkit-scrollbar{display:none}.treasury-tab{flex:0 0 auto;white-space:nowrap;padding:8px 16px;background:none;border:none;color:var(--text-muted);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}.treasury-tab:hover{color:var(--text-primary)}.treasury-tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.treasury-balance-display{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);margin-bottom:16px}.treasury-balance-label{font-size:13px;color:var(--text-muted)}.treasury-balance-value{font-size:18px;font-weight:700;color:var(--accent-green);font-variant-numeric:tabular-nums}.treasury-withdraw-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:16px}.treasury-withdraw-card h4{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text-primary)}.treasury-card-desc{font-size:13px;color:var(--text-muted);margin:0 0 12px}.treasury-fee-preview{background:var(--bg-tertiary, var(--bg-primary));border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:8px}.treasury-fee-line{display:flex;justify-content:space-between;font-size:13px;color:var(--text-muted);padding:2px 0}.treasury-fee-line.treasury-fee-total{color:var(--text-primary);font-weight:600;border-top:1px solid var(--border-primary);margin-top:4px;padding-top:6px}.treasury-message{padding:10px 12px;border-radius:var(--radius-sm);font-size:13px;margin-top:8px}.treasury-success{background:#00ba7c1a;color:var(--accent-green);border:1px solid rgba(0,186,124,.2)}.treasury-error{background:#f4212e1a;color:var(--accent-red);border:1px solid rgba(244,33,46,.2)}.treasury-info{background:var(--bg-secondary);color:var(--text-secondary, var(--text-muted));border:1px solid var(--border-primary)}.order-entry-modal-large{width:80vw!important;max-width:1100px!important}.order-entry-modal-content.order-entry-modal-large{width:100%}.order-entry-enhanced-container{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-3)}.order-entry-form-section{border-right:1px solid var(--border-primary);padding-right:var(--space-3)}.order-entry-details-section{display:flex;flex-direction:column;gap:var(--space-2);padding-left:var(--space-3);overflow-y:auto;max-height:100%}.order-entry-portfolio-section{border-left:1px solid var(--border-primary);padding-left:var(--space-3);overflow-y:auto;max-height:100%}.details-panel{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-2)}.details-panel-header{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);margin-bottom:var(--space-1);padding-bottom:var(--space-1);border-bottom:1px solid var(--border-primary);text-transform:uppercase;letter-spacing:.5px}.details-row{display:flex;justify-content:space-between;align-items:center;padding:2px 0;font-size:var(--text-xs)}.details-row:not(:last-child){border-bottom:1px solid var(--border-secondary)}.details-label{color:var(--text-muted);font-weight:500}.details-value{color:var(--text-primary);font-weight:600;font-variant-numeric:tabular-nums}.details-value.text-green{color:var(--accent-green)}.details-value.text-red{color:var(--accent-red)}.details-value.font-bold{font-weight:700}.details-value.text-sm{font-size:var(--text-xs);opacity:.8}.portfolio-panel{display:flex;flex-direction:column;gap:var(--space-2)}.portfolio-holdings-table,.portfolio-orders-table{width:100%;border-collapse:collapse;font-size:var(--text-xs)}.portfolio-holdings-table th,.portfolio-orders-table th{text-align:left;color:var(--text-muted);font-weight:500;padding:2px 4px;border-bottom:1px solid var(--border-primary);white-space:nowrap}.portfolio-holdings-table td,.portfolio-orders-table td{padding:3px 4px;color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap}.portfolio-holdings-table tr:not(:last-child) td,.portfolio-orders-table tr:not(:last-child) td{border-bottom:1px solid var(--border-secondary)}.portfolio-row-active{background:var(--bg-tertiary)}.portfolio-cell-symbol{font-weight:600;color:var(--accent-blue)}.portfolio-empty{font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:var(--space-2)}.portfolio-cancel-btn{background:none;border:1px solid var(--border-primary);color:var(--text-muted);cursor:pointer;padding:1px 6px;border-radius:var(--radius-sm);font-size:10px;line-height:1.2;transition:all .15s ease}.portfolio-cancel-btn:hover{border-color:var(--accent-red);color:var(--accent-red)}.portfolio-cancel-confirm{display:inline-flex;gap:4px}.portfolio-cancel-yes{border-color:var(--accent-red);color:var(--accent-red)}.portfolio-cancel-yes:hover{background:var(--accent-red);color:var(--text-primary)}.portfolio-cancel-no{border-color:var(--text-muted)}.portfolio-expand-toggle{width:100%;padding:var(--space-1) var(--space-2);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-xs);cursor:pointer;transition:all .15s ease;text-align:center}.portfolio-expand-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--accent-blue)}.portfolio-status-filled{color:var(--accent-green)}.portfolio-status-cancelled{color:var(--text-muted)}.portfolio-status-rejected{color:var(--accent-red)}@media (max-width: 1100px){.order-entry-enhanced-container{grid-template-columns:1fr 1fr;gap:var(--space-3)}.order-entry-portfolio-section{grid-column:1 / -1;border-left:none;border-top:1px solid var(--border-primary);padding-left:0;padding-top:var(--space-3)}.order-entry-modal-large{max-width:95vw!important;width:95vw!important}}@media (max-width: 900px){.order-entry-enhanced-container{grid-template-columns:1fr;gap:var(--space-3)}.order-entry-form-section{border-right:none;border-bottom:1px solid var(--border-primary);padding-right:0;padding-bottom:var(--space-3)}.order-entry-details-section{padding-left:0;grid-template-columns:repeat(2,1fr);display:grid}.order-entry-portfolio-section{border-left:none;border-top:1px solid var(--border-primary);padding-left:0;padding-top:var(--space-3)}}@media (max-width: 600px){.order-entry-enhanced-container{grid-template-columns:1fr;gap:var(--space-2)}.order-entry-details-section{display:flex;flex-direction:column}.order-entry-portfolio-section{display:none}.order-entry-modal-large{max-width:98vw!important;width:98vw!important}}.tb-grid{display:flex;flex-direction:column;gap:10px}.tb-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-muted);text-align:center}.tb-tile{--tb-accent: var(--accent-primary, #5b8cff);position:relative;border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.tb-tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--tb-accent);opacity:.35;transition:opacity .15s ease}.tb-tile:hover{border-color:var(--tb-accent)}.tb-tile.open{border-color:var(--tb-accent);box-shadow:0 0 0 1px var(--tb-accent),0 8px 24px -12px var(--tb-accent)}.tb-tile.open:before{opacity:1}.tb-tile-head{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px 12px 18px;background:none;border:none;cursor:pointer;text-align:left;color:inherit}.tb-logo{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;border-radius:var(--radius-sm);background:var(--bg-primary);border:1px solid var(--border-primary);overflow:hidden}.tb-logo img{max-width:100%;max-height:100%;object-fit:contain}.tb-logo-fallback{font-weight:700;font-size:15px;color:var(--tb-accent);letter-spacing:.02em}.tb-tile-meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.tb-tile-name{font-weight:600;font-size:15px;color:var(--text-primary)}.tb-tile-tag{font-size:12.5px;color:var(--text-muted)}.tb-tile-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}.tb-badge{font-size:11px;padding:1px 7px;border-radius:999px;background:var(--bg-primary);border:1px solid var(--border-primary);color:var(--text-muted)}.tb-badge.ok{color:var(--accent-green);border-color:var(--accent-green)}.tb-badge.warn{color:var(--accent-yellow, #c59a04);border-color:var(--accent-yellow, #c59a04)}.tb-chevron{flex:0 0 auto;font-size:22px;line-height:1;color:var(--text-muted);transform:rotate(90deg);transition:transform .15s ease}.tb-chevron.up{transform:rotate(-90deg);color:var(--tb-accent)}.tb-tile-body{padding:4px 16px 16px 18px;display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--border-primary)}.tb-section{display:flex;flex-direction:column;gap:8px}.tb-section-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tb-accent)}.tb-deposit{margin:0;font-size:13.5px;line-height:1.5;color:var(--text-secondary, var(--text-muted));white-space:pre-wrap}.tb-holds{grid-column:1 / -1;padding:12px 14px;margin-bottom:12px;border:1px solid var(--border-primary);border-left:3px solid var(--accent-amber, #d9a441);border-radius:var(--radius-sm);background:var(--bg-secondary)}.tb-holds-head{font-size:14px;font-weight:600}.tb-holds-body{margin:6px 0 0;font-size:12.5px;color:var(--text-muted);line-height:1.5}.tb-holds-list{margin:8px 0 0;padding-left:18px;font-size:12.5px;color:var(--text-secondary, var(--text-muted))}.tb-hint{display:block;margin-top:4px;font-size:12px;color:var(--text-muted)}.tb-card-frame{min-height:40px;margin:8px 0;max-width:460px;padding:10px 12px;border-radius:var(--radius-md, 8px);border:1px solid rgb(228,231,236);background:#fff;color-scheme:light}.tb-card-frame iframe{width:100%;border:0;display:block}.tb-mode-row{display:flex;gap:6px;margin-bottom:4px}.tb-mode{flex:1;padding:7px 0;font-size:13px;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-muted);cursor:pointer}.tb-mode.active{color:var(--tb-accent);border-color:var(--tb-accent)}.tb-mode-desc{margin:0 0 10px;font-size:12.5px;color:var(--text-muted)}.casino-page{max-width:1200px;margin:0 auto;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);flex:1;overflow-y:auto;min-height:0}.casino-header{display:flex;align-items:center;justify-content:space-between}.casino-header h1{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0}.casino-balance{font-family:var(--font-mono);font-size:var(--text-lg);color:var(--accent-green);background:var(--bg-secondary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-primary)}.casino-tabs{display:flex;gap:2px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:3px;overflow-x:auto}.casino-tab{flex:1;padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .15s;white-space:nowrap;min-width:0}.casino-tab:hover{color:var(--text-primary);background:var(--bg-tertiary)}.casino-tab-active{background:var(--bg-elevated);color:var(--text-primary);box-shadow:0 1px 3px #0000004d}.casino-game-panel{flex:1;min-height:0;display:flex;flex-direction:column}.casino-game-body{display:flex;gap:var(--space-5);flex:1;min-height:0}.casino-game-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-4)}.casino-log{width:260px;flex-shrink:0;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-4);align-self:stretch;display:flex;flex-direction:column;min-height:0}.casino-log h3{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin:0 0 var(--space-2) 0;text-transform:uppercase;letter-spacing:.05em}.casino-table{border-radius:var(--radius-lg);border:3px solid;padding:var(--space-8);min-height:420px;display:flex;flex-direction:column;justify-content:space-between;position:relative}.casino-table:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200px;height:200px;border:2px solid rgba(255,255,255,.06);border-radius:50%;pointer-events:none}.casino-controls{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.casino-error{background:var(--accent-red-muted);color:var(--accent-red);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);text-align:center}.casino-explainer{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden}.casino-explainer summary{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);cursor:pointer;user-select:none;list-style:none;display:flex;align-items:center;gap:var(--space-2)}.casino-explainer summary:before{content:"▶";font-size:.6rem;transition:transform .2s}.casino-explainer details[open] summary:before{transform:rotate(90deg)}@media (max-width: 768px){.casino-page{padding:var(--space-3);gap:var(--space-3)}.casino-tabs{gap:1px;padding:2px}.casino-tab{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.casino-header h1{font-size:var(--text-xl)}.casino-balance{font-size:var(--text-sm)}.casino-header{flex-wrap:wrap;gap:var(--space-2)}.casino-game-body{flex-direction:column}.casino-log{width:100%;max-height:180px;order:1}.casino-game-main{gap:var(--space-3)}.casino-table{padding:var(--space-4);min-height:340px}}.odds-panel{background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #2a2a2a);border-radius:var(--radius-md, 8px);padding:var(--space-3);margin-top:var(--space-3)}.odds-panel-header h3{margin:0 0 var(--space-2) 0;font-size:var(--text-base, 14px);font-weight:600;color:var(--text-primary)}.odds-panel-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.odds-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.odds-section h4{margin:0;font-size:var(--text-xs, 12px);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.odds-source-badge{font-size:10px;padding:1px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}.odds-source-badge.odds-source-live_shoe,.odds-source-badge.odds-source-live_deck{background:color-mix(in srgb,var(--color-success, #22c55e) 18%,transparent);color:var(--color-success, #22c55e)}.odds-source-badge.odds-source-fresh_shoe,.odds-source-badge.odds-source-fresh_deck{background:color-mix(in srgb,var(--text-muted, #888) 18%,transparent);color:var(--text-muted, #888)}.odds-table{width:100%;border-collapse:collapse;font-size:var(--text-xs, 12px)}.odds-table th{text-align:left;font-weight:500;color:var(--text-muted);border-bottom:1px solid var(--border-subtle, #2a2a2a);padding:4px 6px}.odds-table td{padding:4px 6px;border-bottom:1px solid var(--border-subtle, #2a2a2a);color:var(--text-primary)}.odds-table td.payout{color:var(--color-success, #22c55e);font-variant-numeric:tabular-nums}.odds-table td.probability{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-secondary, #ccc)}.odds-notes{margin:var(--space-2) 0 0 0;padding:0 0 0 var(--space-4);font-size:11px;color:var(--text-muted)}.odds-notes-global{grid-column:1 / -1}.odds-loading,.odds-error{font-size:var(--text-xs);color:var(--text-muted);padding:var(--space-2)}.odds-error{color:var(--color-danger, #ef4444)}.report-bet{display:flex;flex-direction:column;align-items:center;gap:8px;margin:10px auto 0;max-width:360px}.report-bet-id{display:inline-flex;align-items:center;gap:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:4px 8px;font-size:11px;color:#ffffff8c;cursor:pointer;font-family:inherit}.report-bet-id:hover{border-color:#ffffff47}.report-bet-id code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#fffc;letter-spacing:.3px}.report-bet-copy{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--casino-accent, #d4af37);opacity:.8}.report-bet-open{background:transparent;border:1px solid rgba(212,175,55,.4);color:#d4af37e6;border-radius:6px;padding:5px 12px;font-size:12px;cursor:pointer;transition:background .15s,border-color .15s}.report-bet-open:hover{background:#d4af371f;border-color:#d4af37b3}.report-bet-form{display:flex;flex-direction:column;gap:8px;width:100%}.report-bet-reason{width:100%;background:#00000059;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#fff;padding:8px;font-size:12px;font-family:inherit;resize:vertical}.report-bet-reason:focus{outline:none;border-color:#d4af3799}.report-bet-actions{display:flex;gap:8px;justify-content:center}.report-bet-submit,.report-bet-cancel{border-radius:6px;padding:5px 14px;font-size:12px;cursor:pointer;border:1px solid transparent}.report-bet-submit{background:#d4af37d9;color:#1a1a1a;font-weight:600}.report-bet-submit:hover{background:#d4af37}.report-bet-submit:disabled{opacity:.6;cursor:default}.report-bet-cancel{background:transparent;border-color:#fff3;color:#ffffffb3}.report-bet-cancel:hover{border-color:#fff6}.report-bet-confirm{font-size:12px;color:#4ade80;font-weight:600}.report-bet-error{font-size:11px;color:#f87171;text-align:center}.blackjack-page{max-width:1200px;margin:0 auto;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6);flex:1;overflow-y:auto;min-height:0}.blackjack-access-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);min-height:400px;text-align:center;color:var(--text-secondary)}.blackjack-access-gate h2{color:var(--text-primary);font-size:1.5rem;margin:0}.blackjack-access-gate p{margin:0;font-size:.95rem}.blackjack-access-error{color:var(--accent-red);font-size:.85rem}.blackjack-body{display:flex;gap:var(--space-5);flex:1;min-height:0}.blackjack-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-6)}.blackjack-header{display:flex;align-items:center;justify-content:space-between}.blackjack-header h1{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0}.blackjack-balance{font-family:var(--font-mono);font-size:var(--text-lg);color:var(--accent-green);background:var(--bg-secondary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-primary)}.blackjack-table{background:linear-gradient(145deg,#0a3d1a,#0d5225,#0a3d1a);border-radius:var(--radius-lg);border:3px solid #1a6b33;padding:var(--space-8);min-height:420px;display:flex;flex-direction:column;justify-content:space-between;position:relative;box-shadow:inset 0 2px 20px #0006,0 4px 24px #00000080}.blackjack-table:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200px;height:200px;border:2px solid rgba(255,255,255,.06);border-radius:50%;pointer-events:none}.hand-area{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.hand-label{font-size:var(--text-sm);color:#ffffffb3;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.08em}.hand-value{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--font-bold);color:#fff;background:#0006;padding:2px 12px;border-radius:var(--radius-sm);min-width:40px;text-align:center}.hand-cards{display:flex;gap:-8px;justify-content:center;min-height:130px;align-items:center}.card-flip{width:80px;height:116px;margin-left:-12px;perspective:700px}.card-flip:first-child{margin-left:0}.card-flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;opacity:0;animation:cardDealFlip .9s cubic-bezier(.34,1.2,.64,1) forwards;animation-delay:inherit}.card-flip-front,.card-flip-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:8px}.card-flip .card-flip-front{position:absolute;inset:0;margin:0;transform:rotateY(0);box-shadow:none}.card-flip-back{transform:rotateY(180deg);background:linear-gradient(135deg,#1e40af,#3b82f6);border:2px solid #60a5fa;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d}.playing-card{width:80px;height:116px;border-radius:8px;background:#fff;border:1px solid #ccc;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;position:relative;box-shadow:0 2px 8px #0000004d}.card-flip .playing-card{margin-left:0}.playing-card:not(.card-flip-front){margin-left:-12px;transition:transform .2s ease,box-shadow .2s ease}.playing-card:not(.card-flip-front):first-child{margin-left:0}.card-flip:hover{transform:translateY(-4px)}@keyframes cardDealFlip{0%{opacity:0;transform:translate(-45px,-38px) rotateY(180deg) rotate(-10deg) scale(.85)}35%{opacity:1;transform:translate(0) rotateY(180deg) rotate(0) scale(1)}55%{transform:translate(0) rotateY(180deg) scale(1)}to{opacity:1;transform:translate(0) rotateY(0) scale(1)}}@keyframes cardDeal{0%{opacity:0;transform:translateY(-30px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.card-corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1}.card-corner-top{top:5px;left:6px}.card-corner-bottom{bottom:5px;right:6px;transform:rotate(180deg)}.card-corner .card-rank{font-size:.85rem;font-weight:700}.card-corner .card-suit-small{font-size:.7rem}.card-center-suit{font-size:2.2rem;line-height:1}.playing-card.red{color:#dc2626}.playing-card.black{color:#1a1a1a}.card-hidden{width:80px;height:116px;border-radius:8px;background:linear-gradient(135deg,#1e40af,#3b82f6);border:2px solid #60a5fa;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d;margin-left:-12px;animation:cardDeal .3s ease-out}.card-hidden:first-child{margin-left:0}.card-hidden-pattern{width:60px;height:96px;border-radius:4px;border:1.5px solid rgba(255,255,255,.3);background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(255,255,255,.08) 4px,rgba(255,255,255,.08) 8px)}.game-status{text-align:center;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:var(--text-lg);font-weight:var(--font-bold);animation:fadeIn .4s ease-out;position:absolute;top:var(--space-3);left:var(--space-3);z-index:5;white-space:nowrap}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.game-status.win{background:var(--accent-green-muted);color:var(--accent-green);border:1px solid var(--accent-green)}.game-status.lose{background:var(--accent-red-muted);color:var(--accent-red);border:1px solid var(--accent-red)}.game-status.push{background:var(--accent-yellow-muted);color:var(--accent-yellow);border:1px solid var(--accent-yellow)}.game-status.blackjack{background:linear-gradient(135deg,#eab30833,#10b98133);color:var(--accent-yellow);border:1px solid var(--accent-yellow);font-size:var(--text-xl)}.blackjack-controls{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.chip-rack{display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap}.casino-chip{border-radius:50%;border:3px dashed;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:var(--font-bold);box-shadow:0 2px 6px #0006,inset 0 1px 2px #fff3;transition:transform .12s,box-shadow .12s;user-select:none;-webkit-tap-highlight-color:transparent}.casino-chip:hover{transform:translateY(-3px) scale(1.08);box-shadow:0 6px 14px #00000080,inset 0 1px 2px #fff3}.casino-chip:active{transform:translateY(0) scale(.95);box-shadow:0 1px 3px #0006}.casino-chip-selected{outline:2px solid rgba(255,255,255,.7);outline-offset:2px}.chip-dashes{position:absolute;inset:4px;border-radius:50%;border:2px dashed rgba(255,255,255,.25);pointer-events:none}.chip-value{position:relative;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.4)}.betting-felt{display:flex;justify-content:center;padding:var(--space-2) 0}.bet-zones{display:flex;gap:var(--space-4);justify-content:center;align-items:center}.bet-zone{width:110px;height:110px;border-radius:50%;border:2px dashed rgba(255,255,255,.2);background:#0003;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:all .2s;color:#ffffff80;padding:var(--space-2);text-align:center}.bet-zone:hover{border-color:#fff6;background:#0000004d}.bet-zone-active{border-color:var(--accent-yellow);border-style:solid;background:#eab3081a;box-shadow:0 0 12px #eab30833}.bet-zone-filled{border-color:var(--accent-green);border-style:solid}.bet-zone-filled.bet-zone-active{border-color:var(--accent-yellow)}.bet-zone-label{font-size:.65rem;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:#fff9}.bet-zone-amount{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--font-bold);color:#fff}.bet-zone-hint{font-size:.6rem;color:#ffffff4d}.game-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.action-btn{padding:var(--space-2) var(--space-6);border-radius:var(--radius-md);border:none;font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all .15s;min-width:90px}.action-btn:disabled{opacity:.4;cursor:not-allowed}.action-btn.deal{background:var(--accent-green);color:#fff;min-width:120px}.action-btn.deal:hover:not(:disabled){background:var(--accent-green-hover)}.action-btn.hit{background:var(--accent-blue);color:#fff}.action-btn.hit:hover:not(:disabled){background:#2563eb}.action-btn.stand{background:var(--accent-red);color:#fff}.action-btn.stand:hover:not(:disabled){background:var(--accent-red-hover)}.action-btn.double{background:var(--accent-yellow);color:#000}.action-btn.double:hover:not(:disabled){background:#ca8a04}.action-btn.undo,.action-btn.clear{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-secondary);min-width:70px}.action-btn.undo:hover:not(:disabled),.action-btn.clear:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.blackjack-error{background:var(--accent-red-muted);color:var(--accent-red);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);text-align:center}.bet-info{display:flex;justify-content:center;gap:var(--space-6);font-size:var(--text-sm);color:var(--text-secondary)}.bet-info span{font-family:var(--font-mono)}.bet-info .amount{color:var(--text-primary);font-weight:var(--font-semibold)}.side-bet-results{position:absolute;top:var(--space-3);right:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);z-index:5;animation:fadeIn .4s ease-out}.side-bet-result{display:flex;align-items:center;gap:var(--space-2);padding:4px 10px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap}.side-bet-result.win{background:var(--accent-green-muted);color:var(--accent-green);border:1px solid var(--accent-green)}.side-bet-result.loss{background:#ffffff0f;color:#fff6;border:1px solid rgba(255,255,255,.1)}.sb-label{font-weight:var(--font-bold)}.sb-value{font-family:var(--font-mono)}.blackjack-log{width:260px;flex-shrink:0;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-4);align-self:stretch;display:flex;flex-direction:column;min-height:0}.log-entries{display:flex;flex-direction:column;gap:2px;overflow-y:auto;flex:1;min-height:0}.log-empty{font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:var(--space-4) 0}.blackjack-log h3{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin:0 0 var(--space-2) 0;text-transform:uppercase;letter-spacing:.05em}.log-entry{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-left:3px solid var(--border-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-secondary);flex-wrap:wrap}.log-legend{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2) var(--space-1);margin-left:3px;font-size:10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.log-legend .log-sidebet{color:var(--text-muted)}.log-entry.win,.log-entry.blackjack{border-left-color:var(--accent-green)}.log-entry.loss{border-left-color:var(--accent-red)}.log-entry.push{border-left-color:var(--accent-yellow)}.log-result{font-weight:var(--font-bold);min-width:36px;text-align:center}.log-result.win,.log-result.blackjack{color:var(--accent-green)}.log-result.loss{color:var(--accent-red)}.log-result.push{color:var(--accent-yellow)}.log-bet,.log-payout{color:var(--text-secondary)}.log-net{font-weight:var(--font-semibold);color:var(--text-secondary)}.log-legend .log-net{color:var(--text-muted);font-weight:inherit}.log-net.positive{color:var(--accent-green)}.log-net.negative{color:var(--accent-red)}.log-sidebet.positive{color:var(--accent-green)}.log-sidebet.negative{color:var(--accent-red)}.log-time{margin-left:auto;color:var(--text-muted)}.insurance-prompt{display:flex;flex-direction:column;gap:var(--space-3);align-items:center}.insurance-text{font-size:var(--text-sm);color:var(--text-primary);text-align:center}.insurance-cost{color:var(--text-muted);font-family:var(--font-mono)}.action-btn.insurance-yes{background:var(--accent-blue);color:#fff}.action-btn.insurance-yes:hover:not(:disabled){background:#2563eb}.action-btn.insurance-no{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-secondary)}.action-btn.insurance-no:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.insurance-banner{text-align:center;font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm)}.insurance-won{color:var(--accent-green);background:var(--accent-green-muted)}.insurance-lost{color:var(--accent-red);background:var(--accent-red-muted)}.bj-explainer{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden}.bj-explainer summary{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);cursor:pointer;user-select:none;list-style:none;display:flex;align-items:center;gap:var(--space-2)}.bj-explainer summary:before{content:"▶";font-size:.6rem;transition:transform .2s}.bj-explainer details[open] summary:before{transform:rotate(90deg)}.explainer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}.explainer-card{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-3)}.explainer-card h4{font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-1) 0}.explainer-card p{font-size:var(--text-xs);color:var(--text-muted);margin:0 0 var(--space-2) 0}.explainer-card table{width:100%;border-collapse:collapse;font-size:var(--text-xs)}.explainer-card td{padding:3px 0;color:var(--text-secondary)}.explainer-card td.payout{font-family:var(--font-mono);font-weight:var(--font-bold);color:var(--accent-green);text-align:center;width:50px}.explainer-card td.desc{color:var(--text-muted);text-align:right}@media (max-width: 768px){.blackjack-page{padding:var(--space-3);gap:var(--space-4)}.blackjack-body{flex-direction:column}.blackjack-log{width:100%;max-height:180px;position:static;order:1}.blackjack-main{gap:var(--space-4)}.blackjack-table{padding:var(--space-4);min-height:340px}.playing-card,.card-hidden,.card-flip{width:60px;height:88px}.card-center-suit{font-size:1.6rem}.card-corner .card-rank{font-size:.7rem}.card-corner .card-suit-small{font-size:.55rem}.game-actions{gap:var(--space-2)}.action-btn{min-width:70px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.game-status{font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.side-bet-results{top:auto;bottom:var(--space-3);right:var(--space-3)}.blackjack-header{flex-wrap:wrap;gap:var(--space-2)}.blackjack-header h1{font-size:var(--text-xl)}.blackjack-balance{font-size:var(--text-sm)}.casino-chip{width:44px!important;height:44px!important;font-size:.6rem!important}.chip-rack{gap:var(--space-1)}.bet-zone{width:85px;height:85px}.bet-zone-amount{font-size:var(--text-base)}.bet-zones{gap:var(--space-2)}}.baccarat-game{display:flex;flex-direction:column;gap:var(--space-4);flex:1}.baccarat-table{background:linear-gradient(145deg,#4a0e0e,#6b1a1a,#4a0e0e);border-color:#8b2f2f;box-shadow:inset 0 2px 20px #0006,0 4px 24px #00000080}.baccarat-table:before{border-color:#ffd70014}.baccarat-result{text-align:center;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:var(--text-lg);font-weight:var(--font-bold);animation:fadeIn .4s ease-out;margin-bottom:var(--space-3)}.baccarat-result.player-wins{background:var(--accent-blue-muted, rgba(59,130,246,.15));color:#60a5fa;border:1px solid #3b82f6}.baccarat-result.banker-wins{background:var(--accent-red-muted);color:var(--accent-red);border:1px solid var(--accent-red)}.baccarat-result.tie-wins{background:var(--accent-green-muted);color:var(--accent-green);border:1px solid var(--accent-green)}.baccarat-hands{display:flex;justify-content:space-around;align-items:flex-start;gap:var(--space-6);padding:var(--space-4) 0}.baccarat-bet-zones{display:flex;gap:var(--space-3);justify-content:center;align-items:center;flex-wrap:wrap}.baccarat-bet-zones .bet-zone{width:100px;height:100px}.baccarat-side-zones{display:flex;gap:var(--space-2);justify-content:center;margin-top:var(--space-2)}.baccarat-side-zones .bet-zone{width:90px;height:90px;font-size:.6rem}.baccarat-payouts{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;font-size:var(--text-xs);font-family:var(--font-mono)}.baccarat-payout-item{padding:3px 8px;border-radius:var(--radius-sm);display:flex;align-items:center;gap:var(--space-1)}.baccarat-payout-item.win{background:var(--accent-green-muted);color:var(--accent-green)}.baccarat-payout-item.loss{background:#ffffff0f;color:var(--text-muted)}.baccarat-payout-item.push{background:var(--accent-yellow-muted);color:var(--accent-yellow)}@media (max-width: 768px){.baccarat-hands{flex-direction:column;align-items:center;gap:var(--space-4)}.baccarat-bet-zones .bet-zone{width:80px;height:80px}.baccarat-side-zones .bet-zone{width:70px;height:70px}}.tcp-game{display:flex;flex-direction:column;gap:var(--space-4);flex:1}.tcp-table{background:linear-gradient(145deg,#0e1a3d,#162557,#0e1a3d);border-color:#2a4080;box-shadow:inset 0 2px 20px #0006,0 4px 24px #00000080}.tcp-table:before{border-color:#6495ed14}.tcp-hands{display:flex;justify-content:space-around;align-items:flex-start;gap:var(--space-6);padding:var(--space-4) 0}.tcp-result{text-align:center;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:var(--text-lg);font-weight:var(--font-bold);animation:fadeIn .4s ease-out;position:absolute;top:var(--space-3);left:var(--space-3);z-index:5;white-space:nowrap}.tcp-result.win{background:var(--accent-green-muted);color:var(--accent-green);border:1px solid var(--accent-green)}.tcp-result.loss{background:var(--accent-red-muted);color:var(--accent-red);border:1px solid var(--accent-red)}.tcp-result.push{background:var(--accent-yellow-muted);color:var(--accent-yellow);border:1px solid var(--accent-yellow)}.tcp-hand-name{font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--accent-yellow);text-align:center;margin-top:var(--space-1)}.tcp-bet-zones{display:flex;gap:var(--space-4);justify-content:center;align-items:center}.tcp-bet-zones .bet-zone{width:110px;height:110px}.tcp-side-result{position:absolute;top:var(--space-3);right:var(--space-3);z-index:5;animation:fadeIn .4s ease-out;display:flex;flex-direction:column;gap:var(--space-1)}.tcp-side-result-item{display:flex;align-items:center;gap:var(--space-2);padding:4px 10px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap}.tcp-side-result-item.win{background:var(--accent-green-muted);color:var(--accent-green);border:1px solid var(--accent-green)}.tcp-side-result-item.loss{background:#ffffff0f;color:#fff6;border:1px solid rgba(255,255,255,.1)}.tcp-deciding{text-align:center;font-size:var(--text-sm);color:#ffffffb3;padding:var(--space-2)}@media (max-width: 768px){.tcp-hands{flex-direction:column;align-items:center;gap:var(--space-4)}.tcp-bet-zones .bet-zone{width:90px;height:90px}}.uth-game{display:flex;flex-direction:column;gap:var(--space-4);flex:1}.uth-table{background:linear-gradient(145deg,#0a2a1c,#0f3d2a,#0a2a1c);border-color:#1f5e40;box-shadow:inset 0 2px 20px #0006,0 4px 24px #00000080;display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-6)}.uth-table:before{border-color:#50c88c14}.uth-dealer,.uth-community,.uth-player{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.uth-community{padding:var(--space-2) 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.uth-result{text-align:center;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:var(--text-lg);font-weight:var(--font-bold);animation:fadeIn .4s ease-out;position:absolute;top:var(--space-3);left:var(--space-3);z-index:5;white-space:nowrap}.uth-result.win{background:var(--accent-green-muted);color:var(--accent-green);border:1px solid var(--accent-green)}.uth-result.loss{background:var(--accent-red-muted);color:var(--accent-red);border:1px solid var(--accent-red)}.uth-result.push{background:var(--accent-yellow-muted);color:var(--accent-yellow);border:1px solid var(--accent-yellow)}.uth-hand-name{font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--accent-yellow);text-align:center;margin-top:var(--space-1)}.uth-side-result{position:absolute;top:var(--space-3);right:var(--space-3);z-index:5;animation:fadeIn .4s ease-out;display:flex;flex-direction:column;gap:var(--space-1)}.uth-side-result-item{display:flex;align-items:center;gap:var(--space-2);padding:4px 10px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap}.uth-side-result-item.win{background:var(--accent-green-muted);color:var(--accent-green);border:1px solid var(--accent-green)}.uth-bet-zones{display:flex;gap:var(--space-4);justify-content:center;align-items:center}.uth-bet-zones .bet-zone{width:130px;height:110px}.uth-stake-hint{text-align:center;font-size:var(--text-xs);color:#fff9;margin-top:var(--space-1)}@media (max-width: 768px){.uth-bet-zones .bet-zone{width:100px;height:90px}}
