body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body>iframe:first-of-type,iframe#webpack-dev-server-client-overlay,iframe[src*=webpack]{display:none!important;pointer-events:none!important;visibility:hidden!important}#webpack-dev-server-client-overlay-div{display:none!important}:root{--radius:0.5rem;--radius-sm:calc(var(--radius) - 4px);--radius-md:var(--radius);--radius-lg:calc(var(--radius) + 4px);--radius-xl:calc(var(--radius) + 8px);--radius-full:9999px;--background:#0f1117;--foreground:#e5e7eb;--card:#14151a;--card-foreground:#e5e7eb;--popover:#1c1d24;--popover-foreground:#e5e7eb;--primary:#1677ff;--primary-foreground:#fff;--primary-hover:#4096ff;--secondary:#252630;--secondary-foreground:#d1d4dc;--muted:#1c1d24;--muted-foreground:#6b7280;--accent:#2a2b36;--accent-foreground:#e5e7eb;--destructive:#ef5350;--destructive-foreground:#fff;--border:#ffffff14;--border-hover:#ffffff1f;--border-active:#1677ff80;--input:#ffffff1f;--input-focus:var(--primary);--ring:#1677ff66;--ring-width:3px;--chart-bull:#26a69a;--chart-bull-bright:#00e676;--chart-bear:#ef5350;--chart-bear-bright:#ff1744;--chart-volume:#2962ff;--chart-line:#ff9800;--chart-purple:#9c27b0;--sidebar:#14151a;--sidebar-foreground:#e5e7eb;--sidebar-primary:#1677ff;--sidebar-primary-foreground:#fff;--sidebar-accent:#252630;--sidebar-accent-foreground:#d1d4dc;--sidebar-border:#ffffff14;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #00000080;--shadow-xl:0 20px 25px -5px #0009;--shadow-2xl:0 25px 50px -12px #000000b3;--duration-fast:100ms;--duration-normal:150ms;--duration-slow:200ms;--duration-slower:300ms;--ease-default:cubic-bezier(0.4,0,0.2,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-spring:cubic-bezier(0.16,1,0.3,1);--z-dropdown:100;--z-sticky:150;--z-panel:200;--z-modal-backdrop:900;--z-modal:1000;--z-tooltip:1100;--z-toast:1200;--z-mobile-drawer:2000;--touch-target-min:44px;--header-height:40px;--sidebar-width:48px;--right-panel-width:320px}@media (max-width:768px){:root{--header-height:44px;--right-panel-width:85vw}}:root{--bg-primary:var(--background);--bg-secondary:var(--card);--bg-tertiary:var(--popover);--bg-hover:var(--accent);--bg-active:#2a2b36;--text-primary:var(--foreground);--text-secondary:#9ca3af;--text-tertiary:var(--muted-foreground);--text-muted:#4b5563;--text-disabled:#4b5563;--border-primary:var(--border);--border-secondary:var(--border-hover);--accent-blue:var(--primary);--accent-blue-hover:var(--primary-hover);--accent-green:var(--chart-bull);--accent-green-bright:var(--chart-bull-bright);--accent-red:var(--destructive);--accent-red-bright:var(--chart-bear-bright);--accent-orange:var(--chart-line);--accent-purple:var(--chart-purple);--transition-fast:var(--duration-normal) var(--ease-default);--transition-normal:var(--duration-slow) var(--ease-default);--transition-slow:var(--duration-slower) var(--ease-default)}.btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:inherit;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1;outline:none;text-decoration:none;transition:background-color var(--duration-normal) var(--ease-default),border-color var(--duration-normal) var(--ease-default),color var(--duration-normal) var(--ease-default),box-shadow var(--duration-normal) var(--ease-default),opacity var(--duration-normal) var(--ease-default),transform var(--duration-fast) var(--ease-default);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn:active:not(:disabled){transform:scale(.98)}.btn.disabled,.btn:disabled,.btn[disabled]{cursor:not-allowed;opacity:.5;pointer-events:none}.btn-sm{border-radius:var(--radius-sm);font-size:.75rem;height:2rem;padding:0 .75rem}.btn-md{height:2.5rem;padding:0 1rem}.btn-lg{font-size:.9375rem;height:2.75rem;padding:0 1.5rem}.btn-icon{height:2.5rem;padding:0;width:2.5rem}.btn-icon-sm{height:2rem;padding:0;width:2rem}.btn-icon-lg{height:2.75rem;padding:0;width:2.75rem}.btn-default,.btn-primary{background-color:var(--primary);color:var(--primary-foreground)}.btn-default:hover:not(:disabled),.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-secondary{background-color:var(--secondary);color:var(--secondary-foreground)}.btn-secondary:hover:not(:disabled){background-color:var(--accent)}.btn-outline{background-color:initial;border:1px solid var(--border-hover);color:var(--foreground)}.btn-outline:hover:not(:disabled){background-color:var(--accent);border-color:var(--accent)}.btn-ghost{background-color:initial;color:var(--foreground)}.btn-ghost:hover:not(:disabled){background-color:var(--accent)}.btn-destructive{background-color:var(--destructive);color:var(--destructive-foreground)}.btn-destructive:hover:not(:disabled){filter:brightness(1.1)}.btn-link{background-color:initial;color:var(--primary);height:auto;padding:0;text-decoration:underline;text-underline-offset:4px}.btn-link:hover:not(:disabled){text-decoration:none}.btn-success{background-color:var(--chart-bull);color:#fff}.btn-success:hover:not(:disabled){filter:brightness(1.1)}.btn-danger-outline{background-color:initial;border:1px solid var(--destructive);color:var(--destructive)}.btn-danger-outline:hover:not(:disabled){background-color:var(--destructive);color:var(--destructive-foreground)}.btn.loading{pointer-events:none;position:relative}.btn.loading>:not(.btn-spinner){opacity:.5}.btn-spinner{animation:spin .75s linear infinite;border:2px solid;border-radius:50%;border-right:2px solid #0000;height:1rem;width:1rem}.btn-sm .btn-spinner{border-width:1.5px;height:.75rem;width:.75rem}.btn-lg .btn-spinner{height:1.125rem;width:1.125rem}.btn-block{width:100%}.btn .btn-icon-left,.btn .btn-icon-right,.btn svg{flex-shrink:0;height:1rem;width:1rem}.btn-sm svg{height:.875rem;width:.875rem}.btn-lg svg{height:1.125rem;width:1.125rem}@media (max-width:768px){.btn-icon,.btn-md{height:2.75rem}.btn-icon{width:2.75rem}.btn-block-mobile{width:100%}}.input{background-color:var(--background);border:1px solid var(--input);border-radius:var(--radius-md);color:var(--foreground);display:flex;font-family:inherit;font-size:.875rem;height:2.5rem;padding:0 .75rem;transition:border-color var(--duration-normal) var(--ease-default),box-shadow var(--duration-normal) var(--ease-default),background-color var(--duration-normal) var(--ease-default);width:100%}.input::placeholder{color:var(--muted-foreground)}.input:focus{border-color:var(--primary);box-shadow:0 0 0 var(--ring-width) var(--ring);outline:none}.input:hover:not(:focus):not(:disabled){border-color:var(--border-hover)}.input.disabled,.input:disabled,.input[disabled]{background-color:var(--muted);cursor:not-allowed;opacity:.5}.input:read-only{background-color:var(--muted)}.input.input-error,.input[aria-invalid=true]{border-color:var(--destructive)}.input.input-error:focus,.input[aria-invalid=true]:focus{box-shadow:0 0 0 var(--ring-width) #ef53504d}.input.input-success{border-color:var(--chart-bull)}.input.input-success:focus{box-shadow:0 0 0 var(--ring-width) #26a69a4d}.input-sm{border-radius:var(--radius-sm);font-size:.75rem;height:2rem;padding:0 .625rem}.input-lg{font-size:1rem;height:2.75rem;padding:0 1rem}.input-group{position:relative;width:100%}.input-icon{align-items:center;color:var(--muted-foreground);display:flex;height:1rem;justify-content:center;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:1rem}.input-icon svg{height:100%;width:100%}.input-icon-left{left:.75rem}.input-group.has-icon-left .input{padding-left:2.5rem}.input-icon-right{right:.75rem}.input-group.has-icon-right .input{padding-right:2.5rem}.input-group.has-icon-left.has-icon-right .input{padding-left:2.5rem;padding-right:2.5rem}.input-action{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--muted-foreground);cursor:pointer;display:flex;height:1.75rem;justify-content:center;padding:0;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);transition:background-color var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default);width:1.75rem}.input-action:hover{background-color:var(--accent);color:var(--foreground)}.input-action:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.input-action svg{height:1rem;width:1rem}.input-group.has-action .input{padding-right:2.75rem}.input-with-button{display:flex;gap:.5rem}.input-with-button .input{flex:1 1;min-width:0}.input-addon-right{display:flex;gap:0}.input-addon-right .input{border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.input-addon-right .btn{border-bottom-left-radius:0;border-top-left-radius:0;flex-shrink:0}.input-search{padding-left:2.5rem;padding-right:2rem}.input-group-search .input-icon-left{left:.75rem}.input-clear{align-items:center;background:var(--muted);border:none;border-radius:50%;color:var(--muted-foreground);cursor:pointer;display:flex;height:1.25rem;justify-content:center;opacity:0;padding:0;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);transition:opacity var(--duration-fast) var(--ease-default);width:1.25rem}.input-group-search .input:focus~.input-clear,.input-group-search:hover .input-clear{opacity:1}.input-clear:hover{background:var(--accent);color:var(--foreground)}.input-clear svg{height:.75rem;width:.75rem}textarea.input{height:auto;min-height:5rem;padding:.625rem .75rem;resize:vertical}.input-label{color:var(--foreground);display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.input-label-required:after{color:var(--destructive);content:" *"}.input-error-text,.input-hint{display:block;font-size:.75rem;margin-top:.375rem}.input-hint{color:var(--muted-foreground)}.input-error-text{color:var(--destructive)}@media (max-width:768px){.input{font-size:1rem;height:2.75rem}.input-sm{font-size:.875rem;height:2.5rem}.input-lg{height:3rem}.input-icon{height:1.125rem;width:1.125rem}.input-group.has-icon-left .input{padding-left:2.75rem}.input-group.has-icon-right .input{padding-right:2.75rem}}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:.75rem;font-weight:600;gap:.25rem;justify-content:center;line-height:1.4;padding:.125rem .625rem;transition:background-color var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default);vertical-align:middle;white-space:nowrap}.badge .badge-icon,.badge svg{flex-shrink:0;height:.75rem;width:.75rem}.badge-default,.badge-primary{background-color:var(--primary);color:var(--primary-foreground)}.badge-secondary{background-color:var(--secondary);color:var(--secondary-foreground)}.badge-outline{background-color:initial;border:1px solid var(--border-hover);color:var(--foreground)}.badge-destructive{background-color:var(--destructive);color:var(--destructive-foreground)}.badge-muted{background-color:var(--muted);color:var(--muted-foreground)}.badge-bull,.badge-long,.badge-success{background-color:#26a69a26;border:1px solid #26a69a4d;color:var(--chart-bull)}.badge-bear,.badge-error,.badge-short{background-color:#ef535026;border:1px solid #ef53504d;color:var(--chart-bear)}.badge-pending,.badge-warning{background-color:#ff980026;border:1px solid #ff98004d;color:var(--chart-line)}.badge-info{background-color:#2962ff26;border:1px solid #2962ff4d;color:var(--chart-volume)}.badge-sm{font-size:.625rem;padding:.0625rem .5rem}.badge-lg{font-size:.8125rem;padding:.25rem .75rem}.badge-count{border-radius:var(--radius-full);font-size:.6875rem;font-weight:700;height:1.25rem;min-width:1.25rem;padding:0 .375rem}.badge-count-sm{font-size:.625rem;height:1rem;min-width:1rem;padding:0}.badge-dot{border-radius:var(--radius-full);height:.5rem;padding:0;width:.5rem}.badge-dot-success{background-color:var(--chart-bull)}.badge-dot-error{background-color:var(--chart-bear)}.badge-dot-warning{background-color:var(--chart-line)}.badge-dot-info{background-color:var(--chart-volume)}.badge-dot-pulse{position:relative}.badge-dot-pulse:before{animation:pulse-ring 1.5s var(--ease-out) infinite;background-color:inherit;border-radius:var(--radius-full);content:"";inset:0;position:absolute}@keyframes pulse-ring{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.5)}}.tooltip-wrapper{display:inline-flex;position:relative}.tooltip-content{background-color:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--popover-foreground);font-size:.75rem;line-height:1.4;max-width:18rem;opacity:0;padding:.375rem .75rem;pointer-events:none;position:absolute;transition:opacity var(--duration-normal) var(--ease-default),visibility var(--duration-normal) var(--ease-default),transform var(--duration-normal) var(--ease-spring);visibility:hidden;white-space:nowrap;z-index:var(--z-tooltip)}.tooltip-multiline{text-align:left;white-space:normal}.tooltip-content.show,.tooltip-wrapper:hover .tooltip-content{opacity:1;visibility:visible}.tooltip-content:not(.tooltip-bottom):not(.tooltip-left):not(.tooltip-right),.tooltip-top{bottom:calc(100% + .5rem);left:50%;transform:translateX(-50%) translateY(.25rem)}.tooltip-top.show,.tooltip-wrapper:hover .tooltip-content:not(.tooltip-bottom):not(.tooltip-left):not(.tooltip-right),.tooltip-wrapper:hover .tooltip-top{transform:translateX(-50%) translateY(0)}.tooltip-bottom{left:50%;top:calc(100% + .5rem);transform:translateX(-50%) translateY(-.25rem)}.tooltip-bottom.show,.tooltip-wrapper:hover .tooltip-bottom{transform:translateX(-50%) translateY(0)}.tooltip-left{right:calc(100% + .5rem);top:50%;transform:translateY(-50%) translateX(.25rem)}.tooltip-left.show,.tooltip-wrapper:hover .tooltip-left{transform:translateY(-50%) translateX(0)}.tooltip-right{left:calc(100% + .5rem);top:50%;transform:translateY(-50%) translateX(-.25rem)}.tooltip-right.show,.tooltip-wrapper:hover .tooltip-right{transform:translateY(-50%) translateX(0)}.tooltip-arrow{background-color:var(--popover);border:1px solid var(--border);height:.5rem;position:absolute;transform:rotate(45deg);width:.5rem}.tooltip-content:not(.tooltip-bottom):not(.tooltip-left):not(.tooltip-right) .tooltip-arrow,.tooltip-top .tooltip-arrow{border-left:none;border-top:none;bottom:-.25rem;left:50%;margin-left:-.25rem}.tooltip-bottom .tooltip-arrow{border-bottom:none;border-right:none;left:50%;margin-left:-.25rem;top:-.25rem}.tooltip-left .tooltip-arrow{border-bottom:none;border-left:none;margin-top:-.25rem;right:-.25rem;top:50%}.tooltip-right .tooltip-arrow{border-right:none;border-top:none;left:-.25rem;margin-top:-.25rem;top:50%}.tooltip-kbd{align-items:center;background-color:var(--muted);border-radius:var(--radius-sm);color:var(--muted-foreground);display:inline-flex;font-family:JetBrains Mono,monospace;font-size:.625rem;gap:.25rem;margin-left:.5rem;padding:.125rem .375rem}@media (hover:none),(max-width:768px){.tooltip-content{display:none!important}.tooltip-mobile-show .tooltip-content{animation:slide-up-fade var(--duration-slow) var(--ease-spring);bottom:1rem;display:block!important;left:50%;opacity:1;position:fixed;transform:translateX(-50%);visibility:visible}}.dialog-overlay{animation:fade-in var(--duration-normal) var(--ease-default);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000bf;inset:0;position:fixed;z-index:var(--z-modal-backdrop)}.dialog-overlay.closing{animation:fade-out var(--duration-fast) var(--ease-default) forwards}.dialog-content{animation:dialog-in var(--duration-slow) var(--ease-spring);background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);left:50%;max-height:calc(100vh - 4rem);max-width:32rem;overflow-y:auto;padding:1.5rem;position:fixed;top:50%;transform:translate(-50%,-50%);width:calc(100% - 2rem);z-index:var(--z-modal)}.dialog-content.closing{animation:dialog-out var(--duration-fast) var(--ease-default) forwards}.dialog-sm{max-width:24rem}.dialog-lg{max-width:42rem}.dialog-xl{max-width:56rem}.dialog-full{max-height:calc(100vh - 4rem);max-width:calc(100vw - 4rem)}.dialog-header{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1rem}.dialog-title{color:var(--foreground);font-size:1.125rem;font-weight:600;line-height:1.3;margin:0}.dialog-description{color:var(--muted-foreground);font-size:.875rem;margin:0}.dialog-body{margin-bottom:1.5rem}.dialog-body .form-group{margin-bottom:1rem}.dialog-body .form-group:last-child{margin-bottom:0}.dialog-footer{display:flex;gap:.5rem;justify-content:flex-end}.dialog-close{align-items:center;background-color:initial;border:none;border-radius:var(--radius-md);color:var(--muted-foreground);cursor:pointer;display:flex;height:2rem;justify-content:center;position:absolute;right:1rem;top:1rem;transition:background-color var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default);width:2rem}.dialog-close:hover{background-color:var(--accent);color:var(--foreground)}.dialog-close:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.dialog-close svg{height:1rem;width:1rem}.dialog-alert .dialog-header{text-align:center}.dialog-alert .dialog-footer{justify-content:center}.dialog-danger .dialog-title{color:var(--destructive)}@media (max-width:768px){.dialog-content{animation:sheet-slide-up var(--duration-slow) var(--ease-spring);border-radius:var(--radius-lg) var(--radius-lg) 0 0;bottom:0;left:0;max-height:90vh;max-width:100%;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom, 0));right:0;top:auto;transform:none;width:100%}.dialog-content.closing{animation:sheet-slide-down var(--duration-fast) var(--ease-default) forwards}.dialog-content:before{background-color:var(--muted);border-radius:var(--radius-full);content:"";height:.25rem;left:50%;position:absolute;top:.5rem;transform:translateX(-50%);width:2.5rem}.dialog-header{margin-top:.5rem}.dialog-footer{flex-direction:column-reverse}.dialog-footer .btn{width:100%}.dialog-lg,.dialog-sm,.dialog-xl{max-width:100%}}.tabs-list{align-items:center;background-color:var(--muted);border-radius:var(--radius-md);display:inline-flex;gap:.25rem;height:2.5rem;padding:.25rem}.tabs-list-full{width:100%}.tabs-trigger{align-items:center;background-color:initial;border:none;border-radius:calc(var(--radius-md) - 4px);color:var(--muted-foreground);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.375rem;justify-content:center;padding:.5rem .75rem;transition:background-color var(--duration-normal) var(--ease-default),color var(--duration-normal) var(--ease-default),box-shadow var(--duration-normal) var(--ease-default);white-space:nowrap}.tabs-trigger:hover:not(:disabled):not(.active){color:var(--foreground)}.tabs-trigger:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.tabs-trigger:disabled{opacity:.5;pointer-events:none}.tabs-trigger.active,.tabs-trigger[aria-selected=true],.tabs-trigger[data-state=active]{background-color:var(--background);box-shadow:var(--shadow-sm);color:var(--foreground)}.tabs-trigger .tabs-icon,.tabs-trigger svg{flex-shrink:0;height:1rem;width:1rem}.tabs-list-line{background-color:initial;border-bottom:1px solid var(--border);border-radius:0;height:auto;padding:0}.tabs-list-line .tabs-trigger{border-radius:0;padding:.625rem 1rem;position:relative}.tabs-list-line .tabs-trigger:after{background-color:initial;bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0;transition:background-color var(--duration-normal) var(--ease-default)}.tabs-list-line .tabs-trigger.active,.tabs-list-line .tabs-trigger[data-state=active]{background-color:initial;box-shadow:none;color:var(--primary)}.tabs-list-line .tabs-trigger.active:after,.tabs-list-line .tabs-trigger[data-state=active]:after{background-color:var(--primary)}.tabs-content{margin-top:.75rem;outline:none}.tabs-content:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.tabs-content-animated{animation:fade-in var(--duration-normal) var(--ease-default)}.tabs-list-compact{height:2rem}.tabs-list-compact .tabs-trigger{font-size:.75rem;padding:.25rem .625rem}.tabs-list-compact .tabs-trigger svg{height:.875rem;width:.875rem}@media (max-width:768px){.tabs-list{-webkit-overflow-scrolling:touch;overflow-x:auto;scrollbar-width:none;width:100%}.tabs-list::-webkit-scrollbar{display:none}.tabs-trigger{flex-shrink:0;font-size:.9375rem;padding:.625rem 1rem}.tabs-list-stretch{display:flex}.tabs-list-stretch .tabs-trigger{flex:1 1;text-align:center}}.skeleton{animation:skeleton-shimmer 2s ease-in-out infinite;background:linear-gradient(90deg,var(--muted) 0,#ffffff0d 50%,var(--muted) 100%);background-size:200% 100%;border-radius:var(--radius-md)}.skeleton-text{border-radius:var(--radius-sm);height:1rem}.skeleton-title{height:1.5rem;width:60%}.skeleton-title-sm{height:1.125rem;width:40%}.skeleton-paragraph{display:flex;flex-direction:column;gap:.5rem}.skeleton-paragraph .skeleton-text:last-child{width:80%}.skeleton-avatar{border-radius:var(--radius-full);flex-shrink:0;height:2.5rem;width:2.5rem}.skeleton-avatar-sm{height:2rem;width:2rem}.skeleton-avatar-lg{height:3rem;width:3rem}.skeleton-icon{border-radius:var(--radius-sm);height:1.25rem;width:1.25rem}.skeleton-button{border-radius:var(--radius-md);height:2.5rem;width:6rem}.skeleton-image{aspect-ratio:16/9;border-radius:var(--radius-md);width:100%}.skeleton-image-square{aspect-ratio:1}.skeleton-card{border-radius:var(--radius-lg);height:8rem}.skeleton-input{border-radius:var(--radius-md);height:2.5rem;width:100%}.skeleton-list-item{align-items:center;display:flex;gap:.75rem;padding:.75rem 0}.skeleton-list-item-content{display:flex;flex:1 1;flex-direction:column;gap:.375rem}.skeleton-table{width:100%}.skeleton-table-row{border-bottom:1px solid var(--border);display:flex;gap:1rem;padding:.75rem 0}.skeleton-table-cell{flex:1 1;height:1rem}.skeleton-table-cell-sm{flex:0.5 1}.skeleton-table-cell-lg{flex:2 1}.skeleton-chart{border-radius:var(--radius-lg);height:300px;overflow:hidden;position:relative}.skeleton-chart:before{background:var(--muted);content:"";inset:0;position:absolute}.skeleton-chart:after{background:linear-gradient(90deg,#0000 0,var(--accent) 20%,var(--accent) 25%,#0000 25%,#0000 30%,var(--accent) 30%,var(--accent) 40%,#0000 40%,#0000 45%,var(--accent) 45%,var(--accent) 55%,#0000 55%,#0000 60%,var(--accent) 60%,var(--accent) 68%,#0000 68%,#0000 75%,var(--accent) 75%,var(--accent) 80%,#0000 80%,#0000 85%,var(--accent) 85%,var(--accent) 90%,#0000 90%);bottom:20%;content:"";height:60%;left:10%;opacity:.3;position:absolute;right:10%}.skeleton-watchlist-item{align-items:center;display:flex;gap:.75rem;padding:.625rem .75rem}.skeleton-watchlist-symbol{height:1rem;width:4rem}.skeleton-watchlist-price{height:1rem;margin-left:auto;width:5rem}.skeleton-watchlist-change{border-radius:var(--radius-sm);height:1.5rem;width:3.5rem}.skeleton-pulse{animation:pulse 2s var(--ease-default) infinite;background:var(--muted)}@media (max-width:768px){.skeleton-chart{height:200px}}.spinner{animation:spin .75s linear infinite;border:2px solid;border-radius:var(--radius-full);border-right:2px solid #0000;display:inline-block}.spinner-xs{border-width:1.5px;height:.75rem;width:.75rem}.spinner-sm{border-width:2px;height:1rem;width:1rem}.spinner-md{border-width:2px;height:1.5rem;width:1.5rem}.spinner-lg{border-width:3px;height:2rem;width:2rem}.spinner-xl{border-width:4px;height:3rem;width:3rem}.spinner-primary{color:var(--primary)}.spinner-muted{color:var(--muted-foreground)}.spinner-white{color:#fff}.spinner-success{color:var(--chart-bull)}.spinner-error{color:var(--chart-bear)}.spinner-dots{align-items:center;display:inline-flex;gap:.25rem}.spinner-dots span,.spinner-dots:after,.spinner-dots:before{animation:spinner-dots-bounce 1.4s ease-in-out infinite both;background-color:currentColor;border-radius:var(--radius-full);content:"";height:.5rem;width:.5rem}.spinner-dots:before{animation-delay:-.32s}.spinner-dots span{animation-delay:-.16s}@keyframes spinner-dots-bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.spinner-dots-sm span,.spinner-dots-sm:after,.spinner-dots-sm:before{height:.375rem;width:.375rem}.spinner-pulse{animation:spinner-pulse 1.5s ease-in-out infinite;background-color:currentColor;border-radius:var(--radius-full);height:1.5rem;width:1.5rem}@keyframes spinner-pulse{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(1)}}.spinner-fullpage{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.spinner-fullpage .spinner{border-width:4px;color:var(--primary);height:3rem;width:3rem}.spinner-inline{align-items:center;display:inline-flex;gap:.5rem}.spinner-inline-text{color:var(--muted-foreground);font-size:.875rem}.btn .spinner{color:currentColor}.btn-sm .spinner{border-width:1.5px;height:.75rem;width:.75rem}.btn-lg .spinner{height:1.125rem;width:1.125rem}.context-menu{animation:scale-in var(--duration-fast) var(--ease-spring);background-color:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:var(--popover-foreground);max-width:20rem;min-width:8rem;overflow:hidden;padding:.25rem;position:fixed;z-index:var(--z-dropdown)}.context-menu-item{align-items:center;border-radius:calc(var(--radius-md) - 4px);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;outline:none;padding:.5rem .625rem;transition:background-color var(--duration-fast) var(--ease-default);-webkit-user-select:none;user-select:none}.context-menu-item:focus,.context-menu-item:hover{background-color:var(--accent)}.context-menu-item:active{background-color:var(--secondary)}.context-menu-item.disabled,.context-menu-item[data-disabled]{opacity:.5;pointer-events:none}.context-menu-item-danger{color:var(--destructive)}.context-menu-item-danger:focus,.context-menu-item-danger:hover{background-color:#ef535026}.context-menu-item-icon{color:var(--muted-foreground);flex-shrink:0;height:1rem;width:1rem}.context-menu-item:focus .context-menu-item-icon,.context-menu-item:hover .context-menu-item-icon{color:var(--foreground)}.context-menu-item-danger .context-menu-item-icon{color:var(--destructive)}.context-menu-shortcut{color:var(--muted-foreground);font-family:JetBrains Mono,monospace;font-size:.75rem;letter-spacing:.05em;margin-left:auto}.context-menu-separator{background-color:var(--border);height:1px;margin:.25rem -.25rem}.context-menu-sub-trigger{align-items:center;display:flex}.context-menu-sub-trigger:after{border-bottom:4px solid #0000;border-left:4px solid var(--muted-foreground);border-top:4px solid #0000;content:"";height:0;margin-left:auto;width:0}.context-menu-sub-content{left:100%;margin-left:.25rem;position:absolute;top:0}.context-menu-label{color:var(--muted-foreground);font-size:.75rem;font-weight:500;padding:.375rem .625rem}.context-menu-checkbox,.context-menu-radio{padding-left:1.75rem;position:relative}.context-menu-checkbox:before,.context-menu-radio:before{background-color:initial;border:1px solid var(--border);border-radius:var(--radius-sm);content:"";height:.875rem;left:.625rem;position:absolute;top:50%;transform:translateY(-50%);width:.875rem}.context-menu-radio:before{border-radius:var(--radius-full)}.context-menu-checkbox[data-checked]:before,.context-menu-radio[data-checked]:before{background-color:var(--primary);border-color:var(--primary)}.context-menu-checkbox[data-checked]:after{color:var(--primary-foreground);content:"✓";font-size:.625rem;left:.625rem;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:.875rem}.context-menu-radio[data-checked]:after{background-color:var(--primary-foreground);border-radius:var(--radius-full);content:"";height:.375rem;left:.875rem;position:absolute;top:50%;transform:translateY(-50%);width:.375rem}@media (max-width:768px){.context-menu{animation:sheet-slide-up var(--duration-slow) var(--ease-spring);border-radius:var(--radius-lg) var(--radius-lg) 0 0;bottom:0!important;left:0!important;max-height:70vh;max-width:100%;overflow-y:auto;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom, 0));position:fixed!important;right:0!important;top:auto!important}.context-menu:before{background-color:var(--muted);border-radius:var(--radius-full);content:"";display:block;height:.25rem;margin:0 auto .5rem;position:-webkit-sticky;position:sticky;top:0;width:2.5rem}.context-menu-item{border-radius:var(--radius-md);font-size:1rem;padding:.875rem 1rem}.context-menu-item-icon{height:1.25rem;width:1.25rem}.context-menu-shortcut{display:none}.context-menu-separator{margin:.5rem 0}.context-menu-cancel{background-color:var(--muted);font-weight:500;margin-top:.5rem}}.context-menu-overlay{display:none}@media (max-width:768px){.context-menu-overlay{animation:fade-in var(--duration-normal) var(--ease-default);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;display:block;inset:0;position:fixed;z-index:calc(var(--z-dropdown) - 1)}}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:2.5rem 1.5rem;text-align:center}.empty-state-compact{padding:1.5rem 1rem}.empty-state-full{min-height:20rem}.empty-state-icon{align-items:center;background-color:var(--muted);border-radius:var(--radius-full);color:var(--muted-foreground);display:flex;height:3rem;justify-content:center;margin-bottom:1rem;width:3rem}.empty-state-icon svg{height:1.5rem;width:1.5rem}.empty-state-icon-lg{height:4rem;width:4rem}.empty-state-icon-lg svg{height:2rem;width:2rem}.empty-state-icon-outlined{background-color:initial;border:2px dashed var(--border)}.empty-state-title{color:var(--foreground);font-size:1rem;font-weight:600;margin-bottom:.375rem}.empty-state-compact .empty-state-title{font-size:.875rem}.empty-state-description{color:var(--muted-foreground);font-size:.875rem;line-height:1.5;max-width:20rem}.empty-state-compact .empty-state-description{font-size:.75rem}.empty-state-action{margin-top:1.25rem}.empty-state-compact .empty-state-action{margin-top:1rem}.empty-state-outlined{background-color:initial;border:1px dashed var(--border);border-radius:var(--radius-lg)}.empty-state-filled{background-color:var(--muted);border-radius:var(--radius-lg)}.empty-state-search .empty-state-icon{background-color:#2962ff1a;color:var(--chart-volume)}.empty-state-error .empty-state-icon{background-color:#ef53501a;color:var(--chart-bear)}.empty-state-success .empty-state-icon{background-color:#26a69a1a;color:var(--chart-bull)}.empty-state-warning .empty-state-icon{background-color:#ff98001a;color:var(--chart-line)}.empty-state-watchlist{padding:3rem 1.5rem}.empty-state-watchlist .empty-state-description{max-width:16rem}.empty-state-alerts,.empty-state-orders{padding:2rem 1rem}.empty-state-inline{flex-direction:row;gap:.75rem;padding:.75rem 1rem;text-align:left}.empty-state-inline .empty-state-icon{height:2rem;margin-bottom:0;width:2rem}.empty-state-inline .empty-state-icon svg{height:1rem;width:1rem}.empty-state-inline .empty-state-content{flex:1 1}.empty-state-inline .empty-state-title{font-size:.875rem}.empty-state-inline .empty-state-description{font-size:.75rem;max-width:none}@media (max-width:768px){.empty-state{padding:2rem 1rem}.empty-state-title{font-size:.9375rem}.empty-state-description{font-size:.8125rem}}.switch{align-items:center;background-color:var(--input);border:none;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;height:1.5rem;padding:0;position:relative;transition:background-color var(--duration-normal) var(--ease-default);width:2.75rem}.switch:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.switch:disabled{opacity:.5;pointer-events:none}.switch.checked,.switch[aria-checked=true],.switch[data-state=checked]{background-color:var(--primary)}.switch-thumb{background-color:#fff;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);display:block;height:1.25rem;left:.125rem;position:absolute;transition:transform var(--duration-normal) var(--ease-spring);width:1.25rem}.switch.checked .switch-thumb,.switch[aria-checked=true] .switch-thumb,.switch[data-state=checked] .switch-thumb{transform:translateX(1.25rem)}.switch-sm{height:1.25rem;width:2.25rem}.switch-sm .switch-thumb{height:1rem;width:1rem}.switch-sm.checked .switch-thumb,.switch-sm[aria-checked=true] .switch-thumb,.switch-sm[data-state=checked] .switch-thumb{transform:translateX(1rem)}.switch-lg{height:1.875rem;width:3.5rem}.switch-lg .switch-thumb{height:1.625rem;width:1.625rem}.switch-lg.checked .switch-thumb,.switch-lg[aria-checked=true] .switch-thumb,.switch-lg[data-state=checked] .switch-thumb{transform:translateX(1.625rem)}.switch-success.checked,.switch-success[aria-checked=true],.switch-success[data-state=checked]{background-color:var(--chart-bull)}.switch-danger.checked,.switch-danger[aria-checked=true],.switch-danger[data-state=checked]{background-color:var(--destructive)}.switch-wrapper{align-items:center;display:inline-flex;gap:.5rem}.switch-label{color:var(--foreground);cursor:pointer;font-size:.875rem}.switch-label-muted{color:var(--muted-foreground)}.switch-wrapper-reverse{flex-direction:row-reverse}.switch-icon{position:relative}.switch-icon .switch-icon-off,.switch-icon .switch-icon-on{color:var(--muted-foreground);height:.75rem;position:absolute;top:50%;transform:translateY(-50%);transition:opacity var(--duration-normal) var(--ease-default);width:.75rem}.switch-icon .switch-icon-off{right:.375rem}.switch-icon .switch-icon-on{left:.375rem;opacity:0}.switch-icon.checked .switch-icon-on,.switch-icon[aria-checked=true] .switch-icon-on,.switch-icon[data-state=checked] .switch-icon-on{color:var(--primary-foreground);opacity:1}.switch-icon.checked .switch-icon-off,.switch-icon[aria-checked=true] .switch-icon-off,.switch-icon[data-state=checked] .switch-icon-off{opacity:0}@media (max-width:768px){.switch{height:1.75rem;width:3rem}.switch-thumb{height:1.5rem;width:1.5rem}.switch.checked .switch-thumb,.switch[aria-checked=true] .switch-thumb,.switch[data-state=checked] .switch-thumb{transform:translateX(1.25rem)}}.form-btn-group{background:var(--muted);border-radius:var(--radius-md);display:inline-flex;gap:.25rem;padding:.25rem}.form-btn-group-item{background:#0000;border:none;border-radius:calc(var(--radius-md) - 4px);color:var(--muted-foreground);cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;padding:.5rem .75rem;transition:all var(--duration-fast) var(--ease-default)}.form-btn-group-item:hover:not(.active){background:#ffffff14;color:var(--foreground)}.form-btn-group-item.active{background:var(--background);box-shadow:var(--shadow-sm);color:var(--foreground)}.form-btn-group-item.long{color:#26a69a}.form-btn-group-item.long.active{background:#26a69a26;color:#26a69a}.form-btn-group-item.short{color:#ef5350}.form-btn-group-item.short.active{background:#ef535026;color:#ef5350}.form-row{display:flex;gap:.75rem}.form-row>.form-group{flex:1 1}.input-with-unit{display:flex;gap:.25rem}.input-with-unit>.input-optimized{flex:1 1}.input-with-unit>select.input-optimized{min-width:5rem;width:auto}@media (max-width:768px){.form-btn-group{flex-wrap:wrap}.form-btn-group-item{min-height:2.75rem;padding:.625rem 1rem}.form-row{flex-direction:column;gap:1rem}.input-with-unit{flex-direction:column;gap:.5rem}.input-with-unit>select.input-optimized{width:100%}}.favorite-btn-unified{align-items:center;background:#0000;border:none;border-radius:4px;border-radius:var(--radius-sm,4px);color:#787b86;color:var(--muted-foreground,#787b86);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;opacity:0;padding:0;visibility:hidden;width:28px}.favorite-btn-unified,.favorite-btn-unified svg{transition:all .15s ease;transition:all var(--duration-fast,.15s) ease}.favorite-btn-unified svg{height:16px;width:16px}.favorite-btn-unified.always-visible{opacity:.6;visibility:visible}.favorite-btn-unified.active{background:#f0b90b1a;color:#f0b90b;color:var(--warning,#f0b90b);opacity:1;visibility:visible}.drawing-submenu-item-wrapper:hover .favorite-btn-unified,.drawing-submenu-item-wrapper:hover>.favorite-btn-unified,.dropdown-item-optimized:hover .favorite-btn-unified,.dropdown-item-optimized:hover>.favorite-btn-unified,.indicator-item:hover .favorite-btn-unified,.panel-item:hover .favorite-btn-unified,.symbol-list-item:hover .favorite-btn-unified{opacity:1;visibility:visible}.favorite-btn-unified:hover{background:#ffffff1a}.favorite-btn-unified:hover svg{stroke:#f0b90b;stroke:var(--warning,#f0b90b);color:#f0b90b;color:var(--warning,#f0b90b)}.favorite-btn-unified.active:hover{background:#f0b90b33;transform:scale(1.1)}.favorite-btn-unified:active{transform:scale(.95)}.favorite-btn-unified.size-sm{height:24px;width:24px}.favorite-btn-unified.size-sm svg{height:12px;width:12px}.favorite-btn-unified.size-lg{height:32px;width:32px}.favorite-btn-unified.size-lg svg{height:18px;width:18px}@media (max-width:768px){.favorite-btn-unified{height:36px;opacity:.6;visibility:visible;width:36px}.favorite-btn-unified svg{height:18px;width:18px}.favorite-btn-unified.active{opacity:1}}*{box-sizing:border-box;margin:0;padding:0}#root,.App,body,html{height:100%;overflow:hidden;width:100%}body{background-color:#131722;color:#d1d4dc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.apply-common-tooltip[href*=tradingview],.chart-controls-bar .logo-wrapper,.tv-attributed-logo,.tv-attributed-logo__link,a[href*="tradingview.com"],div[class*=bottomWidgetBar],div[class*=logo],iframe[id^=tradingview]+div a[href*=tradingview]{display:none!important;opacity:0!important;pointer-events:none!important;visibility:hidden!important}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes slide-down-fade{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes slide-left-fade{0%{opacity:0;transform:translateX(-.5rem)}to{opacity:1;transform:translateX(0)}}@keyframes slide-right-fade{0%{opacity:0;transform:translateX(.5rem)}to{opacity:1;transform:translateX(0)}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}.animate-fade-in{animation:fade-in var(--duration-normal) var(--ease-default)}.animate-scale-in{animation:scale-in var(--duration-normal) var(--ease-spring)}.animate-slide-down{animation:slide-down-fade var(--duration-slow) var(--ease-spring)}.animate-slide-up{animation:slide-up-fade var(--duration-slow) var(--ease-spring)}.animate-spin{animation:spin .75s linear infinite}.animate-pulse{animation:pulse 2s var(--ease-default) infinite}.animate-shake{animation:shake .5s var(--ease-default)}.auth-container{align-items:center;background:var(--background);color:var(--foreground);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem;position:relative}.auth-back-link{align-items:center;border-radius:var(--radius-md);color:var(--muted-foreground);display:flex;font-size:.875rem;font-weight:500;gap:.375rem;left:1.5rem;padding:.5rem .75rem;position:absolute;text-decoration:none;top:1.5rem;transition:color var(--duration-normal) var(--ease-default),background-color var(--duration-normal) var(--ease-default);z-index:10}.auth-back-link:hover{background:var(--accent);color:var(--primary)}.auth-back-link svg{height:1rem;width:1rem}.auth-card{animation:card-enter .35s var(--ease-spring);background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 0 0 1px #ffffff08,var(--shadow-xl);max-width:28rem;padding:2.5rem;position:relative;width:100%}@keyframes card-enter{0%{opacity:0;transform:translateY(1rem) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-title{color:var(--foreground);font-size:1.75rem;font-weight:600;margin-bottom:.5rem;text-align:center}.auth-subtitle{color:var(--muted-foreground);font-size:.875rem;margin-bottom:2rem;text-align:center}.auth-form-group{margin-bottom:1.25rem}.auth-label{display:block;font-weight:500;margin-bottom:.5rem}.auth-input,.auth-label{color:var(--foreground);font-size:.875rem}.auth-input{background:var(--card);border:1px solid var(--input);border-radius:var(--radius-md);box-sizing:border-box;display:flex;font-family:inherit;height:2.75rem;padding:.75rem 1rem;transition:border-color var(--duration-normal) var(--ease-default),box-shadow var(--duration-normal) var(--ease-default);width:100%}.auth-input:focus{border-color:var(--primary);box-shadow:0 0 0 var(--ring-width) var(--ring);outline:none}.auth-input::placeholder{color:var(--muted-foreground)}.auth-input:disabled{background:var(--muted);cursor:not-allowed;opacity:.5}.auth-submit-btn{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-md);color:var(--primary-foreground);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9375rem;font-weight:600;gap:.5rem;height:2.75rem;justify-content:center;margin-top:.5rem;transition:filter var(--duration-normal) var(--ease-default),transform var(--duration-fast) var(--ease-default);width:100%}.auth-submit-btn:hover:not(:disabled){filter:brightness(1.1)}.auth-submit-btn:active:not(:disabled){transform:scale(.98)}.auth-submit-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.auth-submit-btn:disabled{cursor:not-allowed;opacity:.6}.auth-submit-btn .spinner{animation:spin .75s linear infinite;border:2px solid #ffffff4d;border-radius:var(--radius-full);border-top-color:#fff;height:1rem;width:1rem}@keyframes spin{to{transform:rotate(1turn)}}.auth-footer{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem;text-align:center}.auth-link{color:var(--primary);font-size:.875rem;font-weight:500;text-decoration:none;transition:opacity var(--duration-normal)}.auth-link:hover{opacity:.8;text-decoration:underline}.auth-link-secondary{color:var(--muted-foreground);font-size:.8125rem;text-decoration:none;transition:color var(--duration-normal)}.auth-link-secondary:hover{color:var(--foreground)}.auth-msg{align-items:center;animation:msg-slide-in .3s var(--ease-spring);border-radius:var(--radius-md);display:flex;font-size:.875rem;gap:.625rem;margin-bottom:1.25rem;padding:.875rem 1rem}@keyframes msg-slide-in{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.auth-msg-error{background:#ef53501f;border:1px solid #ef535040;color:var(--destructive)}.auth-msg-success{background:#26a69a1f;border:1px solid #26a69a40;color:var(--chart-bull)}.auth-msg svg{flex-shrink:0;height:1.125rem;width:1.125rem}.auth-code-row{display:flex;gap:.625rem}.auth-code-row .auth-input{flex:1 1}.auth-code-btn{align-items:center;background:var(--secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--secondary-foreground);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;height:2.75rem;justify-content:center;padding:0 1rem;transition:background-color var(--duration-normal) var(--ease-default),border-color var(--duration-normal) var(--ease-default);white-space:nowrap}.auth-code-btn:hover:not(:disabled){background:var(--accent);border-color:var(--border-hover)}.auth-code-btn:disabled{cursor:not-allowed;opacity:.5}.step-indicator{justify-content:center;margin-bottom:2rem;padding:0 1rem}.step-indicator,.step-item{align-items:center;display:flex}.step-item{color:var(--muted-foreground);font-size:.8125rem;transition:color var(--duration-normal)}.step-item.active{color:var(--primary)}.step-item.completed{color:var(--chart-bull)}.step-number{align-items:center;background:var(--accent);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--muted-foreground);display:flex;font-size:.75rem;font-weight:600;height:1.75rem;justify-content:center;margin-right:.5rem;transition:all var(--duration-normal);width:1.75rem}.step-item.active .step-number{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 4px #1677ff33;color:var(--primary-foreground)}.step-item.completed .step-number{background:var(--chart-bull);border-color:var(--chart-bull);color:#fff}.step-separator{background:var(--border);border-radius:1px;height:2px;margin:0 .75rem;transition:background var(--duration-normal);width:3rem}.step-item.completed+.step-separator{background:var(--chart-bull)}.valid-ok{color:var(--chart-bull)}.valid-err,.valid-ok{align-items:center;display:flex;font-size:.75rem;gap:.25rem;margin-top:.375rem}.valid-err{color:var(--destructive)}.valid-err svg,.valid-ok svg{height:.875rem;width:.875rem}@media (max-width:768px){.auth-container{align-items:flex-start;padding:4rem 1rem 1rem}.auth-back-link{left:1rem;top:1rem}.auth-card{border-radius:var(--radius-md);padding:1.5rem}.auth-title{font-size:1.5rem}.auth-subtitle{margin-bottom:1.5rem}.auth-input{font-size:1rem;height:3rem}.auth-code-btn,.auth-submit-btn{height:3rem}.auth-code-row{flex-direction:column;gap:.75rem}.auth-code-row .auth-code-btn{width:100%}.step-indicator{margin-bottom:1.5rem}.step-separator{width:2rem}}.profile-page-wrapper{background:var(--background);display:block;min-height:100vh;overflow-y:auto}.profile-container{display:flex;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:64rem;padding:2.5rem 1.5rem}.profile-header{margin-bottom:1rem;text-align:center}.profile-avatar{align-items:center;background:linear-gradient(135deg,var(--primary) 0,#6366f1 100%);border-radius:var(--radius-full);box-shadow:0 0 0 4px var(--popover),0 0 0 6px #6366f14d;color:#fff;display:flex;font-size:1.75rem;font-weight:600;height:5rem;justify-content:center;margin:0 auto 1rem;transition:transform var(--duration-normal) var(--ease-default),box-shadow var(--duration-normal) var(--ease-default);width:5rem}.profile-avatar:hover{box-shadow:0 0 0 4px var(--popover),0 0 0 8px #6366f133;transform:scale(1.05)}.profile-username{color:var(--foreground);font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.profile-email{color:var(--muted-foreground);font-size:.875rem}.profile-section{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}.profile-section-title{align-items:center;color:var(--foreground);display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.profile-section-title svg{color:var(--muted-foreground);height:1.125rem;width:1.125rem}.profile-tabs{background:var(--muted);border-radius:var(--radius-md);display:inline-flex;gap:.25rem;margin-bottom:1.5rem;padding:.25rem}.profile-tab{align-items:center;background:#0000;border:none;border-radius:calc(var(--radius-md) - 4px);color:var(--muted-foreground);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;gap:.375rem;padding:.625rem 1rem;transition:all var(--duration-normal)}.profile-tab.active,.profile-tab:hover:not(.active){color:var(--foreground)}.profile-tab.active{background:var(--background);box-shadow:var(--shadow-sm)}.profile-tab svg{height:.875rem;width:.875rem}.profile-table{border-collapse:collapse;width:100%}.profile-table th{background:var(--muted);border-bottom:1px solid var(--border);color:var(--muted-foreground);font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.profile-table th:first-child{border-radius:var(--radius-md) 0 0 0}.profile-table th:last-child{border-radius:0 var(--radius-md) 0 0}.profile-table td{border-bottom:1px solid var(--border);color:var(--foreground);font-size:.875rem;padding:1rem;vertical-align:middle}.profile-table tbody tr{transition:background var(--duration-fast)}.profile-table tbody tr:hover{background:#ffffff05}.profile-table tbody tr:last-child td{border-bottom:none}.profile-table code{background:#0000004d;border:1px solid #1677ff1a;border-radius:var(--radius-sm);color:var(--primary);font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem;padding:.25rem .5rem}.profile-badge{align-items:center;background:#1677ff26;border:1px solid #1677ff33;border-radius:var(--radius-full);color:var(--primary);display:inline-flex;font-size:.6875rem;font-weight:600;letter-spacing:.02em;padding:.25rem .625rem;text-transform:uppercase}.profile-badge-success{background:#26a69a26;border-color:#26a69a33;color:var(--chart-bull)}.profile-badge-warning{background:#ff980026;border-color:#ff980033;color:var(--chart-line)}.profile-action-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.75rem;gap:.375rem;justify-content:center;padding:.375rem .75rem;transition:all var(--duration-fast)}.profile-action-btn:hover{background:var(--accent);border-color:var(--foreground);color:var(--foreground)}.profile-action-btn.danger:hover{background:#ef53501a;border-color:var(--destructive);color:var(--destructive)}.profile-action-btn svg{height:.875rem;width:.875rem}.profile-empty{flex-direction:column;padding:3rem 2rem;text-align:center}.profile-empty,.profile-empty-icon{align-items:center;display:flex;justify-content:center}.profile-empty-icon{background:var(--muted);border-radius:var(--radius-full);color:var(--muted-foreground);height:3rem;margin-bottom:1rem;width:3rem}.profile-empty-icon svg{height:1.5rem;width:1.5rem}.profile-empty-title{color:var(--foreground);font-size:1rem;font-weight:500;margin-bottom:.375rem}.profile-empty-text{color:var(--muted-foreground);font-size:.875rem;max-width:20rem}.profile-empty-action{margin-top:1.25rem}.profile-warning{align-items:flex-start;background:#ff98001a;border:1px solid #ff980033;border-radius:var(--radius-md);display:flex;gap:.75rem;margin-top:1rem;padding:1rem}.profile-warning-icon{color:var(--chart-line);flex-shrink:0;margin-top:.125rem}.profile-warning-icon svg{height:1rem;width:1rem}.profile-warning-text{color:var(--chart-line);font-size:.8125rem;line-height:1.5}@media (max-width:768px){.profile-container{gap:1rem;padding:1.5rem 1rem}.profile-section{border-radius:var(--radius-md);padding:1rem}.profile-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto;scrollbar-width:none;width:100%}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab{flex-shrink:0}.profile-table-wrapper{margin:0 -1rem;overflow-x:auto;padding:0 1rem}.profile-table{min-width:32rem}.profile-table td,.profile-table th{font-size:.8125rem;padding:.75rem}.profile-avatar{font-size:1.5rem;height:4rem;width:4rem}}.modal-overlay{align-items:center;animation:fade-in var(--duration-normal) var(--ease-default);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal-backdrop)}.modal-overlay.closing{animation:fade-out var(--duration-fast) var(--ease-default) forwards}.modal-content{animation:dialog-in var(--duration-slow) var(--ease-spring);background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-height:calc(100vh - 4rem);max-width:38rem;overflow-y:auto;position:relative;width:calc(100% - 2rem)}.modal-content.closing{animation:dialog-out var(--duration-fast) var(--ease-default) forwards}.modal-content.modal-small{max-width:28rem}.modal-content.modal-large{max-width:48rem}@keyframes dialog-in{0%{opacity:0;transform:scale(.95) translateY(.5rem)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes dialog-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(.5rem)}}.modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1rem 1.5rem}.modal-header h3,.modal-title{color:var(--foreground);font-size:1.125rem;font-weight:600;margin:0}.modal-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--muted-foreground);cursor:pointer;display:flex;height:2rem;justify-content:center;transition:all var(--duration-fast);width:2rem}.modal-close:hover{background:var(--accent);color:var(--foreground)}.modal-close svg{height:1rem;width:1rem}.modal-body{padding:1.5rem}.modal-body .auth-form-group{margin-bottom:1rem}.modal-body .auth-form-group:last-child{margin-bottom:0}.modal-footer{background:var(--muted);border-top:1px solid var(--border);display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.btn-primary{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-md);color:var(--primary-foreground);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:.375rem;height:2.5rem;justify-content:center;padding:0 1rem;transition:filter var(--duration-normal)}.btn-primary:hover:not(:disabled){filter:brightness(1.1)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--foreground);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:.375rem;height:2.5rem;justify-content:center;padding:0 1rem;transition:all var(--duration-normal)}.btn-secondary:hover:not(:disabled){background:var(--accent);border-color:var(--border-hover)}.btn-danger{align-items:center;background:#0000;border:1px solid var(--destructive);border-radius:var(--radius-md);color:var(--destructive);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:.375rem;height:2.5rem;justify-content:center;padding:0 1rem;transition:all var(--duration-normal)}.btn-danger:hover:not(:disabled){background:var(--destructive);color:var(--destructive-foreground)}.modal-status-box{align-items:center;border-radius:var(--radius-md);display:flex;font-size:.8125rem;gap:.5rem;margin-top:1rem;padding:.875rem 1rem;transition:all var(--duration-normal)}.modal-status-box svg{flex-shrink:0;height:1rem;width:1rem}.status-warning{background:#ff98001a;border:1px solid #ff980033;color:var(--chart-line)}.status-success{background:#26a69a1a;border:1px solid #26a69a33;color:var(--chart-bull)}.status-error{background:#ef53501a;border:1px solid #ef535033;color:var(--destructive)}.status-info{background:#2962ff1a;border:1px solid #2962ff33;color:var(--chart-volume)}@media (max-width:768px){.modal-content{animation:sheet-slide-up var(--duration-slow) var(--ease-spring);border-radius:var(--radius-lg) var(--radius-lg) 0 0;bottom:0;left:0;max-height:90vh;max-width:100%;position:fixed;right:0;top:auto}.modal-content.closing{animation:sheet-slide-down var(--duration-fast) var(--ease-default) forwards}.modal-content:before{background:var(--muted-foreground);border-radius:var(--radius-full);content:"";height:.25rem;left:50%;opacity:.3;position:absolute;top:.5rem;transform:translateX(-50%);width:2.5rem}.modal-header{padding:1.25rem 1rem 1rem}.modal-body,.modal-footer{padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom, 0))}.modal-footer{flex-direction:column-reverse}.modal-footer .btn-danger,.modal-footer .btn-primary,.modal-footer .btn-secondary{height:2.75rem;width:100%}}@keyframes sheet-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes sheet-slide-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}
/*# sourceMappingURL=main.b0e4e0fe.css.map*/