@media (min-width: 992px) { 
    body .container {
      padding-left: 0;
      padding-right: 0;
    }
  }
  html body .main-page-wrapper {
      background-color: black !important;
      background: #111 url(header_bg.png);
      background-size: auto;
      background-position: top center;
      background-repeat: repeat-x;
  }
  .ag-charts-toolbar__button{
background-color: #769B7D !important;
        color: white !important;
        border-radius: 0 !important;

  }
  .ag-charts-toolbar__button:hover{
background-color: white !important;
color: black !important;

  }
  /* Update body styles */
  body {
      font-family: 'Darker Grotesque', Arial, sans-serif;
      font-weight: 400;
      /* usually 400 for body text */
      font-style: normal;
      font-size: 16px;
      /* normal body text size */
      line-height: 1.4;
      letter-spacing: normal;
      background-color: #000;
      color: #fff;
      overflow: auto;
      /* or overflow-y: auto; */
      height: auto;
      margin: 0;
      padding: 0;
      box-sizing: border-box;
  }
  
  h1 {
      font-size: 52px;
      line-height: 58px;
      font-weight: 700;
  }
  
  * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
  }
  
  .main-container {
      display: flex;
      height: 100%;
      background: transparent;
      width: 100%;
      max-width: none;
  }
  
  
  /* Left Panel - Chart Section */
  .chart-panel {
      flex: 1;
      min-width: 600px;
      /* background: #000; */
      display: flex;
      flex-direction: column;
  }
  
  /* Header */
  .header {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      padding: 15px 0;
  }
  
  .header .title {
      width: 100%;
      padding: 0;
      box-sizing: border-box;
      max-width: none;
      position: relative;
  }
  
  .title {
      color: white !important;
      font-weight: 700;
      font-style: Bold;
      font-size: 52px;
      line-height: 58px;
      letter-spacing: 0%;
  
  }
  
  .portfolio-btn {
      background: #ffffff;
      color: #000000;
      border: 1px solid #444;
      padding: 8px 16px;
      font-size: 12px;
      font-weight: bold;
      cursor: pointer;
  }
  
  /* Chart Header */
  .chart-header {
      padding: 10px 0px;
      font-size: 28px;
      font-weight: bold;
      background: transparent;
      color: #DDCDAC;
  }
  
  /* Controls */
  .controls {
      display: flex;
      align-items: flex-start;
      padding: 22px 10px;
      background: black;
  
      gap: 15px;
  }
  
  .url-section {
      display: flex;
      align-items: center;
      gap: 10px;
  }
  
  .url-label {
      font-size: 12px;
      color: #999;
  }
  
  .url-input {
      background: black;
      border: 1px solid #FFFFFF80;
      color: #fff;
      padding: 6px 10px;
  
      width: 360px;
      height: 44px;
      font-size: 14px;
  
      letter-spacing: 0%;
  
  }
  
  .dropdown {
      background: #769B7D;
      border: 1px solid #444;
      color: #000;
      padding: 0;
      font-size: 15px;
      cursor: pointer;
      border-radius: 0;
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
      background-repeat: no-repeat;
      background-position: right 8px center;
      background-size: 12px;
      padding-right: 30px;
      min-width: 60px;
      max-width: 60px;
      font-weight: normal;
  }
  
  .dropdown:focus {
      outline: none;
      border-color: #333;
  }
  
  .dropdown option {
      background: #769B7D;
      color: #000;
      padding: 8px;
  }
  
  html body .bell-btn {
      background: #2a2a2a;
      border: 1px solid #444;
      color: #fff;
      padding: 10px 18px;
      font-size: 12px;
      cursor: pointer;
  }
  
  .artist-info {
      position: absolute;
      right: 10px;
      display: flex;
      align-items: center;
      gap: 10px;
      margin-left: auto;
  }
  
  .artist-details {
      text-align: right;
  }
  
  .artist-avatar {
      min-width: 35px;
      min-height: 35px;
      display: flex
  ;
      align-items: center;
      justify-content: center;
      font-size: 12px;
      font-weight: bold;
      order: 2;
      color: white;
      max-width: 50px;
      max-height: 46px;
      overflow: hidden;
  }
  
  html body .artist-details h4 {
      font-weight: 900;
      font-style: Black;
      font-size: 20px;
      color: #DDCDAC;
      line-height: 28px;
      letter-spacing: 0%;
      text-align: right;
      text-decoration: underline;
      text-decoration-style: solid;
      text-decoration-offset: 0%;
      text-decoration-thickness: 0%;
      margin-bottom: 0 !important;
  }
  
  .artist-details p {
      font-size: 16px;
      color: white;
      font-weight: 900;
      margin-bottom: 0 !important;
  }
  
  /* Price Info Bar */
  .price-bar {
      display: flex;
      padding: 0 10px 0 0;
      background: black;
      
      gap: 10px 25px;
  }
  
  .price-item {
      display: flex;
      flex-direction: row;
      gap: 2px;
  }
  
  .price-label {
      color: white;
      font-size: 18px;
      font-weight: 500;
  }
  .grid-item-price .price-label {
      color: white;
      font-size: 18px;
      font-weight: 900;
      border: 1px solid white;
  background-color: #363636;
  color: #DDCDAC;
  padding-left: 9px;
  }
  
  .price-value {
      color: #fff;
      font-weight: bold;
      font-size: 20px;
  }
  .grid-item-price .price-value {
      color: #fff;
      font-weight: 600;
      font-size: 18px;
      padding-left: 9px;
  }
  /* Chart Container */
  .chart-container {
      border: 1px solid white;
      flex: 1;
      position: relative;
      background: #000;
      padding: 0px;
      display: flex;
      flex-direction: column;
      padding-top: 0;
      height: 950px;
      max-height: 950px;
  }
  
  /* Simple height increase for chart area */
  .chart-area {
      height: 800px !important;
  }
  
  /* Layout Controls */
  .layout-controls {
      display: none;
      gap: 10px;
      margin-bottom: 15px;
      padding: 0 10px;
  }
  
  .layout-btn {
      background: black !important;
      color: white !important;
      border: 1px solid white !important;
      padding: 8px 12px !important;
      border-radius: 0 !important;
      cursor: pointer !important;
      font-size: 14px !important;
      transition: background 0.2s !important;
  }
  
  .layout-btn:hover {
      background: #444;
  }
  
  .layout-btn.active {
      border: 1px solid #769B7D !important;
      background: #769B7D !important;
      color: white !important;
  }
  
  /* Style for Prediction Only button when user doesn't have access (desktop) */
  .layout-btn[data-layout="prediction"].no-access {
      opacity: 0.7;
      background: #444 !important;
      color: #999 !important;
      border: 1px solid #666 !important;
  }
  
  .layout-btn[data-layout="prediction"].no-access:hover {
      opacity: 0.9;
      background: #555 !important;
      color: #ccc !important;
  }
  
  .chart-area {
      flex: 1;
      position: relative;
      overflow: hidden;
  }
  
  .candlestick-container {
      flex: 1;
      position: relative;
      width: 100%;
  }
  
  /* Candlestick Chart */
  .candlestick-chart {
      width: 100%;
      height: 100%;
      position: relative;
      display: flex;
      align-items: flex-end;
      justify-content: space-around;
      padding: 150px 60px 20px 10px;
      min-height: 400px;
  }
  
  .candlestick {
      position: relative;
      width: 24px;
      cursor: crosshair;
      margin: 0 4px;
      display: flex;
      flex-direction: column;
      align-items: center;
  }
  
  .candle-wick {
      width: 1px;
      background: #888;
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      z-index: 1;
  }
  
  .candle-body {
      width: 100%;
      position: relative;
      border: 1px solid;
      min-height: 40px;
      z-index: 2;
      border-radius: 0;
      box-sizing: border-box;
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }
  
  .candle-body.green {
      background: #769B7D;
      border-color: #5a7a5f;
      box-shadow: 0 1px 3px rgba(118, 155, 125, 0.3);
  }
  
  .candle-body.red {
      background: #B0745F;
      border-color: #8f5d4c;
      box-shadow: 0 1px 3px rgba(176, 116, 95, 0.3);
  }
  
  /* Chart Grid */
  .chart-grid {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      pointer-events: none;
  }
  
  .grid-line-h {
      position: absolute;
      width: 100%;
      height: 1px;
      background: #333;
      left: 0;
  }
  
  .grid-line-v {
      position: absolute;
      height: 100%;
      width: 1px;
      background: #333;
      top: 0;
  }
  
  /* Price Labels - Hidden by default */
  .price-labels {
      position: absolute;
      right: 10px;
      top: 0;
      bottom: 30px;
      width: 60px;
      display: none;
      flex-direction: column;
      justify-content: space-between;
      padding: 20px 5px;
  }
  
  /* Show price labels only for logged-in users */
  .user-logged-in .price-labels {
      display: flex !important;
  }
  
  /* Ensure price labels are hidden for non-logged-in users */
  .user-not-logged-in .price-labels {
      display: none !important;
  }
  
  .price-label-item {
      font-size: 14px;
      color: white;
      text-align: right;
      line-height: 28px;
  }
  
  /* Date Labels */
  .date-labels {
      position: absolute;
      bottom: 0;
      left: 20px;
      right: 80px;
      height: 30px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 0 10px;
  }
  
  .date-label-item {
      font-size: 14px;
      color: #999;
  }
  
  /* Chart indicator */
  .chart-indicator {
      position: absolute;
      top: 50%;
      left: var(--indicator-x, 50%);
      transform: translate(-50%, -50%);
      width: 40px;
      height: 40px;
      background: rgba(255, 255, 255, 0.1);
      border: 2px solid rgba(255, 255, 255, 0.3);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      font-size: 12px;
      z-index: 10;
      cursor: ew-resize;
      user-select: none;
  }
  
  .chart-indicator:hover {
      background: rgba(255, 255, 255, 0.2);
      border-color: rgba(255, 255, 255, 0.5);
  }
  
  /* Vertical dotted line */
  /* Chart Divider - Updated to match v25 styling */
  .chart-divider {
      width: 1px;
      background: transparent;
      cursor: col-resize;
      position: relative;
      flex-shrink: 0;
      border-left: 2px dotted #769C9C;
      z-index: 214;
      min-height: 100%;
  }
  
  .chart-divider:hover {
      border-left: 2px dotted rgba(255, 255, 255, 0.8);
  }
  
  .chart-divider::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 30px;
      height: 30px;
      background: rgba(0, 0, 0, 0.8);
      border: 2px dotted rgba(255, 255, 255, 0.8);
      border-radius: 50%;
      z-index: 10;
  }
  
  /* Full-height lines extending from divider - like reference image */
  .chart-divider-line::before {
      content: '';
      position: absolute;
      top: 0;
      left: -100.6vw;
      width: 100vw;
      height: 100%;
      border-right: 2px solid rgba(255, 255, 255, 0.4);
      z-index: 1;
      pointer-events: none;
  }
  
  .chart-divider-line::after {
      content: '';
      position: absolute;
      top: 0;
      right: -100.6vw;
      width: 100vw;
      height: 100%;
      border-left: 2px solid rgba(255, 255, 255, 0.4);
      z-index: 1;
      pointer-events: none;
  }
  
  /* Icon for divider - positioned above horizontal line */
  .chart-divider .divider-icon {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 16px;
      height: 16px;
      background-image: url("https://artytraders.com/wp-content/uploads/2025/09/Group-3681.svg");
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center;
      z-index: 15;
      filter: brightness(0) invert(1);
      pointer-events: none;
  }
  
  .chart-divider:hover::before {
      border: 2px dotted rgba(255, 255, 255, 1);
      background: rgba(0, 0, 0, 0.9);
  }
  
  /* Chart overlay */
  .chart-overlay {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: var(--indicator-x, 50%);
      background: #47443769;
      z-index: 2;
      pointer-events: none;
  }
  
  /* Prediction section overlay - full height coverage */
  .prediction-section-overlay {
      width: 100%;
      position: absolute;
      top: -150px;
      bottom: -50px;
      right: 0;
      left: var(--divider-position, 72%);
         background: #6060603b;
      z-index: 3;
      pointer-events: none;
      transition: left 0.1s ease;
  }
  
  /* Prediction Area Overlay - Functional and Draggable */
  .prediction-area-overlay {
      position: absolute;
      top: 28px; /* Below title */
      bottom: 131px; /* Leave more space for navigator and controls */
      left: 72%; /* Default position */
      width: 28%; /* Default width */
      background:rgb(210 211 210 / 12%);
          z-index: 1;
      pointer-events: none; /* Disable by default to allow chart interactions */
      cursor: ew-resize; /* Show resize cursor */
      transition: width 0.1s ease, left 0.1s ease;
      /* NO BORDER - dashed line is now in the drag handle */
  }
  
  .prediction-area-overlay:hover {
     background: rgb(165 165 165 / 18%);
      border-left-color: #769C9C;
  }
  
  /* Draggable handle for the overlay - WITH STATIC DASHED LINE */
  .prediction-area-overlay .drag-handle {
      position: absolute;
      left: -13px; /* Back to original position */
      top: 0;
      bottom: 0;
      width: 25px;
      cursor: ew-resize;
      pointer-events: auto; /* Enable dragging only on the handle */
      z-index: 10;
      border: 0;
      border-radius: 0;
      border-left: 2px solid;
      border-right: 2px solid;
      /* STATIC DASHED LINE INSIDE THE HANDLE */
      background: repeating-linear-gradient(
          to bottom,
          #769C9C 0px,
          #769C9C 8px,
          transparent 8px,
          transparent 16px
      );
      background-size: 2px 16px;
      background-position: center;
      background-repeat: repeat-y;
  }
  
  .prediction-area-overlay .drag-handle:hover {
      background:#14141469;
  }
  
  /* Circle background for the drag handle icon */
  .prediction-area-overlay .drag-handle::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 38px;
      height: 38px;
      background: black;
      border: 2px solid #ffffff;
      border-radius: 50%;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  }
  
  /* SVG icon on top of the circle */
  .prediction-area-overlay .drag-handle::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 18px;
      height: 18px;
      background-image: url('https://artytraders.com/wp-content/uploads/2025/09/Group-3681.svg');
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat;
  }
  
  /* Drag handle positioned on right side for prediction mode */
  .prediction-area-overlay .drag-handle.prediction-mode {
      left: auto;
      right: -15px;
  }
  /* Current date label positioned on the green overlay line */
  .prediction-area-overlay .current-date-label {
      position: absolute;
      left: -50px;
      top: 10px;
      background: rgba(76, 175, 80, 0.9);
      color: white;
      padding: 6px 12px;
      font-size: 12px;
      font-weight: bold;
      border-radius: 4px;
      white-space: nowrap;
      z-index: 15;
      pointer-events: none; /* Don't interfere with overlay dragging */
      border: 2px solid rgba(76, 175, 80, 1);
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  }
  
  /* Removed blue line drag handle - overlay is now directly draggable */
  
  /* Chart Timeframe Controls */
  .chart-timeframe-controls {
      display: flex;
      gap: 20px;
      padding: 20px;
      background: #0a0a0a;
      align-items: flex-start;
      border-top: 1px solid #333;
      overflow-x: auto;
      flex-wrap: wrap;
  }
  
  .timeframe-section {
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 10px;
  }
  
  .timeframe-label {
      font-size: 14px;
      color: #888;
      font-weight: 600;
      margin-bottom: 5px;
  }
  
  .timeframe-buttons-row {
          grid-template-columns: repeat(4, 1fr);
      display: grid;
      gap: 2px;
      flex-wrap: wrap;
      min-width: 0;
  }
  
  .timeframe-btn {
      padding: 10px 18px;
      background: #1a1a1a;
      color: #ffffff;
      border: 2px solid transparent;
      border-radius: 0;
      cursor: pointer;
      font-size: 13px;
      font-weight: 500;
      transition: all 0.2s ease;
      min-width: 90px;
      text-transform: uppercase;
      flex-shrink: 0;
  }
  
  .timeframe-btn:hover {
      background: #252525;
      border-color: #3a3a3a;
  }
  
  .timeframe-btn.active {
      background: #1a1a1a;
      color: #ffffff;
      border: 2px solid #4A9FD8;
      font-weight: 600;
      box-shadow: 0 0 8px rgba(74, 159, 216, 0.4);
  }
  
  .trade-section {
      display: flex;
      align-items: flex-end;
      padding-top: 0px;
  }
  
  /* Chart bottom section */
  .chart-bottom {
      background: #0a0a0a;
      border-top: 1px solid #333;
  }
  
  /* Trade Section */
  .trade-section {
      display: flex;
      align-items: normal;
      gap: 30px;
      flex-wrap: wrap;
  }
  
  .amount-auto-section {
      display: flex;
      flex-direction: column;
      gap: 12px;
  }
  
  .amount-control {
      display: flex;
      align-items: center;
      gap: 8px;
  }
  
  .amount-label {
      font-size: 14px;
      color: #fff;
      font-weight: 500;
  }
  
  .amount-input {
      background: #2a2a2a;
      border: 1px solid #555;
      color: #fff;
      padding: 8px 12px;
      font-size: 14px;
      width: 260px;
      text-align: center;
  }
  
  .auto-closing {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 14px;
      color: #fff;
      font-weight: 500;
  }
  
  .dash {
      color: #fff;
      font-weight: bold;
  }
  
  .checkmark {
      color: #4CAF50;
  }
  
  .trade-buttons {
      display: flex;
      gap: 10px;
  }
  
  html body .buy-btn,
  .sell-btn {
      padding: 34px 20px;
      border: none;
      font-weight: 900;
      font-size: 20px;
      cursor: pointer;
      min-width: 120px;
      min-height: 85px;
      max-height: 85px;
      text-transform: uppercase;
      flex-shrink: 0;
  }
  
  html body .buy-btn {
      background: #769B7D;
      color: white;
  }
  
  html body .sell-btn {
      background: #B0745F;
      color: white;
  }
  
  /* Timeframes */
  .timeframes {
      padding: 15px 20px;
      background: #000000;
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 15px;
  }
  
  .timeframes-left {
      display: flex;
      flex:1;
      gap: 10px;
  }
  
  .timeframe-section {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      flex: 1;
  }
  
  .timeframe-section h4 {
      font-weight: 600;
      font-size: 18px;
      color: #769B7D;
      margin-top: 8px;
      text-align: left;
  }
  
  .timeframe-buttons {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1px;
      margin-bottom: 5px;
      width: 100%;
  }
  
  html body .timeframe-btn {
      background: #2a2a2a;
      border: 1px solid #444;
      color: #999;
      padding: 7px 10px;
      font-size: 15px;
      cursor: pointer;
      min-width: 75px;
      text-align: center;
  }
  
  .timeframe-btn.active {
      background: #769B7D;
      color: #000;
      border-color: #769B7D;
  }
  
  .timeframe-btn:hover {
      background: #3a3a3a;
      color: #fff;
  }
  
  
  .timeframe-section:nth-child(2) .timeframe-btn.active {
      background: #DDCDAC;
      color: #000;
      border-color: #DDCDAC;
  }
  
  /* Right Panel - Wishlist */
  .wishlist-panel {
      flex: 0 0 400px;
      margin-left: 32px;
      /* background: #000000; */
      display: flex;
      flex-direction: column;
      min-width: 300px;
  }
  
  .wishlist-header {
      padding: 10px 0px;
      font-size: 28px;
      font-weight: bold;
      background: transparent;
      color: #DDCDAC;
  }
  
  .wishlist-table {
  
      flex: 1;
      overflow-y: auto;
      overflow-x: hidden;
      padding: 18px;
      border: 1px solid white;
      height: 950px;
      max-height: 950px;
      scrollbar-width: thin;
      scrollbar-color: #769B7D #0a0a0a;
      background: black;
  }
  
  .wishlist-table::-webkit-scrollbar {
      width: 8px;
  }
  
  .wishlist-table::-webkit-scrollbar-track {
      background: #0a0a0a;
  }
  
  .wishlist-table::-webkit-scrollbar-thumb {
      background: #769B7D;
      border-radius: 4px;
  }
  
  .wishlist-table::-webkit-scrollbar-thumb:hover {
      background: #8BAA8B;
  }
  
  .table-header {
      display: grid;
      grid-template-columns: 80px 1fr 1fr;
      padding-left: 13px;
      font-size: 16px;
      color: white;
      text-transform: uppercase;
      letter-spacing: 0.5px;
  
  }
  
  .table-row {
      display: grid;
      grid-template-columns: 80px 1fr 1fr;
      width: 100%;
      min-height: 50px;
      padding: 8px 15px;
      gap: 8px;
      font-size: 13px;
      transition: background 0.2s;
      cursor: pointer;
      align-items: center;
  }
  
  /* Fix the wishlist table alternating rows - use nth-child instead of nth-of-type */
  /* Fix the wishlist table alternating rows - use nth-child instead of nth-of-type */
  /* Fix the wishlist table alternating rows - use nth-child and offset by 1 to account for header */
  .table-row:nth-of-type(even) {
      background-color: transparent;
  }
  
  .table-row:nth-of-type(odd) {
      background-color: transparent;
  }
  
  .table-row:nth-child(2n+3) {
      background-color: #242424B2;
  }
  
  
  
  .table-row:hover {
      background: #1a1a1a;
  }
  
  .table-row.selected {
      background: #769B7D !important;
  }
  
  .artwork-thumb {
      width: 40px;
      height: 40px;
      border-radius: 4px;
      background: linear-gradient(135deg, #ff6b6b, #4ecdc4);
      overflow: hidden;
  }
  
  .artwork-name {
      font-weight: 500;
      margin-bottom: 0;
      font-size: 13px;
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis;
      display: block;
      color: #DDCDAC;
  }
  
  .favorite-tag {
      background: #2d5a2d;
      color: #4CAF50;
      padding: 1px 4px;
      border-radius: 2px;
      font-size: 9px;
      font-weight: bold;
      display: inline-block;
      margin-top: 2px;
  }
  
  .artist-name {
      color: #ffffff;
      font-size: 12px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
  }
  
  /* Bottom Nav */
  .bottom-nav {
  
      background: #1a1a1a;
      border-top: 1px solid #333;
      display: block;
      justify-content: center;
      gap: 20px;
      padding: 12px;
  }
  
  .table-separator {
      margin-top: 16px;
      border-bottom: 1px solid #EEEEEE;
      width: 100%;
      height: 1px;
      display: block;
  }
  
  .table-separator2 {
      margin-top: 10px;
      margin-bottom: 10px;
      border-bottom: 1px solid #EEEEEE;
      width: 100%;
      height: 1px;
      display: block;
  }
  
  
  /*portfolio*/
  .portfolio-container {
      border: 1px solid white;
      padding: 17px;
      max-width: 1320px;
      width: 100%;
      margin: 0 auto;
  }
  
  /* Standard container layout for specific IDs */
  @media (min-width: 769px) {
      /* Use standard container width instead of full viewport width */
      #app {
          width: 100%;
          padding: 0;
          box-sizing: border-box;
          max-width: none;
          position: relative;
      }
      
      #portfolio-app {
          width: 100%;
          padding: 0;
          box-sizing: border-box;
          max-width: none;
          position: relative;
      }
      
      .main-container {
          max-width: none !important;
          width: 100% !important;
          padding: 0 !important;
          box-sizing: border-box !important;
      }
      
      .portfolio-main-wrapper {
          width: 100%;
          padding: 0;
          box-sizing: border-box;
          max-width: none;
          position: relative;
      }
      
      /* Ensure chart panel and wishlist panel work with full width */
      .chart-panel {
          flex: 1 !important;
          max-width: none !important;
      }
      
      .wishlist-panel {
          flex: 0 0 400px !important;
          max-width: 400px !important;
          min-width: 400px !important;
      }
  }
  
  .portfolio-header {
      margin-bottom: 20px;
  }
  
  .portfolio-title {
  
      font-weight: 700;
      font-style: Bold;
      font-size: 52px;
      color: white;
      line-height: 58px;
      letter-spacing: 0%;
  
  }
  
  .portfolio-subtitle {
      color: #DDCDAC;
      font-weight: 900;
      font-style: Black;
      font-size: 28px;
      leading-trim: NONE;
      line-height: 28px;
      letter-spacing: 0%;
  
  }
  
  .portfolio-tabs-container {
      width: 100%;
  }
  
  .portfolio-tabs {
      display: flex;
      width: 100%;
      gap: 2px;
  }
  
  .portfolio-tab {
      flex: 1;
      text-align: center;
      padding: 10px 0;
      cursor: pointer;
      font-size: 21px;
      font-weight: bold;
      color: #ffffff;
      border-bottom: 2px solid transparent;
      text-decoration: underline;
      font-weight: 600;
  }
  
  .portfolio-tab.tab-active {
      font-weight: 900;
      background: linear-gradient(90deg, #769C9C 0%, #DDCDAC 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      border-bottom: 5px solid;
      border-image: linear-gradient(90deg, #769C9C 0%, #DDCDAC 100%) 1;
  }
  
  .portfolio-tab.tab-passive {
      color: #888888 !important;
      cursor: not-allowed;
      opacity: 0.6;
      font-weight: 400;
      text-decoration: none;
      pointer-events: none;
  }
  
  .portfolio-tab.tab-passive:hover {
      color: #888888 !important;
      background: none !important;
  }
  
  .portfolio-content {
      background-color: #111111;
  
      overflow: hidden;
  }
  
  .portfolio-table {
      width: 100%;
      border-collapse: collapse;
  }
  
  .portfolio-table-header {
      background-color: black;
      border-bottom: 1px solid #ffffff;
  }
  
  .portfolio-table-header th {
      padding: 12px 16px;
      text-align: left;
      font-size: 16px;
      font-weight: 500;
      color: #ffffff;
      text-transform: uppercase;
      letter-spacing: 0.5px;
  }
  
  .portfolio-table-row {
  
      transition: background-color 0.2s ease;
  }
  
  .portfolio-table-row:hover {
      background-color: #1a1a1a;
  }
  
  .portfolio-table-cell {
      padding: 12px 16px;
      vertical-align: middle;
      font-size: 13px;
  }
  
  .artwork-thumbnail {
      width: 32px;
      height: 32px;
      border-radius: 0px;
      object-fit: cover;
  }
  
  .artwork-name {
      font-size: 16px;
      color: #ffffff;
      font-weight: 500;
  }
  
  .artist-name {
      font-size: 16px;
      color: #ffffff;
  }
  
  .price-current {
      font-size: 16px;
      color: #ffffff;
      font-weight: 500;
  }
  
  .price-change {
      font-size: 16px;
      font-weight: 500;
      font-size: 12px;
  }
  
  .price-change.positive {
      font-size: 16px;
      color: #769B7D;
  }
  
  .price-change.negative {
      font-size: 16px;
      color: #B0745F;
  }
  
  .total-value {
      font-size: 16px;
      color: #ffffff;
      font-weight: 500;
  }
  
  .reg-date {
      font-size: 16px;
      color: #888888;
  }
  
  .action-buttons {
      font-size: 16px;
      display: flex;
      gap: 8px;
      align-items: center;
  }
  
  .action-button {
      font-size: 16px !important;
      display: flex;
      align-items: center;
      gap: 4px;
      padding: 4px 8px;
      border: none;
      background: none;
      color: #769B7D;
      font-size: 11px;
      cursor: pointer;
      text-decoration: underline;
      transition: color 0.2s ease;
  }
  
  .action-button:hover {
      color: #00cc66;
  }
  
  .action-bullet {
      width: 4px;
      height: 4px;
      background-color: #769C9C;
      border-radius: 50%;
      animation: pulse 2s infinite;
      position: relative;
  }
  
  .action-bullet::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100%;
      height: 100%;
      border-radius: 50%;
      background-color: #769C9C;
      animation: pulseRing 2s infinite;
  }
  
  @keyframes pulse {
      0% {
          opacity: 1;
          transform: scale(1);
      }
      50% {
          opacity: 0.7;
          transform: scale(1.2);
      }
      100% {
          opacity: 1;
          transform: scale(1);
      }
  }
  
  @keyframes pulseRing {
      0% {
          opacity: 0.8;
          transform: translate(-50%, -50%) scale(1);
      }
      50% {
          opacity: 0.3;
          transform: translate(-50%, -50%) scale(2);
      }
      100% {
          opacity: 0;
          transform: translate(-50%, -50%) scale(2.5);
      }
  }
  
  .prediction-cell {
      color: #888888;
  }
  
  .action-button[id*="sell-fragment"] {
      color: #B49664;
  }
  
  .action-button[id*="sell-fragment"]:hover {
      color: #9A7E52;
  }
  
  .action-bullet-passive {
      background-color: #888888 !important;
      animation: none !important;
      opacity: 0.6;
  }
  
  .action-bullet-passive::before {
      display: none !important;
  }
  
  .action-button-passive {
      color: #888888 !important;
      cursor: not-allowed !important;
      pointer-events: none !important;
      text-decoration: none !important;
      opacity: 0.6;
  }
  
  .action-button-passive:hover {
      color: #888888 !important;
  }
  
  .portfolio-table-row:nth-child(even) {
      background-color: #242424B2;
  }
  
  #portfolio-table-body {
      border-bottom: 1px solid white;
  }
  
    .portfolio-main-wrapper {
      width: 100%;
              max-width: 1340px;
              margin: 0 auto;
          }
  
  
          .portfolio-header-container {
              display: flex;
              justify-content: space-between;
              align-items: center;
              padding: 0;
              border-radius: 12px;
              box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
              margin-bottom: 20px;
          }
  
          .portfolio-text-content {
              flex: 1;
          }
  
          .portfolio-main-title {
      font-family: 'Darker Grotesque', Arial, sans-serif;
  font-weight: 700;
  font-style: Bold;
  font-size: 52px;
  color: white;
  line-height: 58px;
  letter-spacing: 0%;
  
          }
  
          .portfolio-sub-title {
          font-family: 'Darker Grotesque', Arial, sans-serif;
  font-weight: 900;
  font-style: Black;
  font-size: 28px;
  color: #DDCDAC;
  line-height: 28px;
  letter-spacing: 0%;
  
          }
  
        html body  .portfolio-add-button {
              background: transparent !important;
              color: white;
              border: 1px solid white;
              padding: 12px 24px;
              border-radius: 0;
              font-size: 20px;
              font-weight: 900;
              cursor: pointer;
              transition: all 0.3s ease;
              white-space: nowrap;
              margin-top: 18px;
          }
  
         html body .portfolio-add-button:hover {
         
              background: white !important;
              color: black !important;
              border: 1px solid black !important;
          }
  
          .portfolio-add-button:active {
              transform: translateY(0);
          }
  
          /* Responsive design */
          @media (max-width: 768px) {
  
  .chart-container{
      height: 100% !important;
      max-height: 100% !important;
  }
  
              html body .timeframe-btn{
  
                  min-width: 90px;
  
              }
              .portfolio-header-container {
                  flex-direction: column;
                  align-items: flex-start;
                  gap: 16px;
              }
  
              .portfolio-add-button {
                  align-self: flex-end;
              }
              
              /* Portfolio Tabs Mobile - Stack vertically */
              .portfolio-tabs {
                  flex-direction: column;
                  gap: 8px;
              }
              
              .portfolio-tab {
                  flex: none;
                  width: 100%;
                  padding: 15px 0;
                  font-size: 20px;
                  text-align: left;
                  border-bottom: 2px solid transparent;
              }
              
              .portfolio-tab.tab-active {
                  border-bottom: 3px solid;
                  border-image: linear-gradient(90deg, #769C9C 0%, #DDCDAC 100%) 1;
              }
          }
  
  
  /* Unified Chart Container */
  .unified-chart-container {
      display: flex;
      width: 100%;
      height: 100%;
      position: relative;
      background: #0a0a0a;
      border: 1px solid #333;
      overflow: hidden;
  }
  
  /* Movable Vertical Dashed Divider Line */
  .chart-divider-line {
      position: absolute;
      top: 0;
      width: 4px;
      height: 100%;
      background: transparent;
      border-left: 2px dashed #769C9C;
      z-index: 100;
      cursor: col-resize;
      pointer-events: all;
      transition: border-color 0.3s ease;
  }
  
  .chart-divider-line:hover {
      border-left: 2px dashed rgba(255, 255, 255, 0.9);
  }
  
  .chart-divider-line .divider-handle {
       position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 50px;
      height: 50px;
      background: rgba(0, 0, 0, 0.8);
      border: 2px solid rgba(255, 255, 255, 0.6);
      border-radius: 50%;
      cursor: col-resize;
      display: flex
  ;
      align-items: center;
      justify-content: center;
  }
  
  .divider-handle-icon {
    width: 100%;
      height: 26px;
      filter: brightness(0) invert(1);
      opacity: 0.8;
  }
  
  /* Ensure chart uses full width */
  .unified-chart-container .chart-section {
      width: 100% !important;
      flex: 1;
  }
  
          .unified-chart-container .chart-wrapper {
              width: 100%;
              height: 100%;
              position: relative;
              overflow: visible;
              padding: 60px 50px 20px 20px; /* Maximum top padding to prevent overflow */
          }
  
  .unified-chart-container .candlestick-chart {
      width: 100%;
      height: 100%;
      position: relative;
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      padding: 60px 50px 20px 20px; /* Maximum top padding to prevent overflow */
      min-height: 460px;
      overflow: visible;
  }
  
          /* Unified Candlestick Positioning */
          .unified-candles-container .candlestick {
              position: absolute;
              width: 18px;
              cursor: crosshair;
              bottom: 0;
              z-index: 2;
          }
  
          .unified-candles-container .candlestick.historical-candle {
              /* Historical candles positioned on the left side */
          }
  
          .unified-candles-container .candlestick.prediction-candle {
              /* Prediction candles positioned on the right side */
              opacity: 0.9;
              filter: brightness(1.1);
          }
  
  /* Dynamic scaling based on divider position */
  .unified-chart-container .candlestick-chart {
      position: relative;
  }
  
          /* Unified candlesticks container */
          .unified-candles-container {
              position: absolute;
              left: 0;
              top: 0;
              width: 100%;
              height: 100%;
              padding: 60px 50px 20px 20px;
              z-index: 1;
          }
  
  .candlestick.prediction-candle .candle-body {
      opacity: 0.9;
      filter: brightness(1.1);
  }
  
  .candlestick.prediction-candle .candle-wick {
      opacity: 0.8;
  }
  
  /* Dual Chart Container (kept for compatibility) */
  .dual-chart-container {
      display: flex;
      width: 100%;
      height: 100%;
      position: relative;
      background: #0a0a0a;
      border: 1px solid #333;
      overflow: hidden;
  }
  
  .chart-section {
      height: 100%;
      position: relative;
      transition: width 0.1s ease;
  }
  
  .chart-wrapper {
      width: 100%;
      height: 100%;
      position: relative;
  }
  
  .historical-chart {
      background: #0a0a0a;
      width: 65%;
  }
  
  .prediction-chart {
      background: #0a0a0a;
      width: 35%;
  }
  
  .chart-title {
      position: absolute;
      top: 10px;
      left: 15px;
      font-size: 12px;
      font-weight: 500;
      z-index: 10;
      color: #ccc;
  }
  
  .chart-divider {
  width: 2px;
      background: rgb(255 255 255);
      cursor: col-resize;
      position: relative;
      flex-shrink: 0;
      border: 2px solid #cdcdcd;
      z-index: 214;
      min-height: 100%;
  }
  
  .chart-divider:hover {
      border-left: 2px dotted rgba(255, 255, 255, 0.8);
  }
  
  .chart-divider::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 25px;
      height: 25px;
      background: rgba(0, 0, 0, 0.8);
      border: 2px dotted rgba(255, 255, 255, 0.8);
      border-radius: 50%;
      z-index: 10;
  }
  
  .chart-divider::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 16px;
      height: 16px;
      background-image: url("https://artytraders.com/wp-content/uploads/2025/09/Group-3681.svg");
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center;
      z-index: 11;
      filter: brightness(0) invert(1);
  }
  
  .chart-divider:hover::before {
      border: 2px dotted rgba(255, 255, 255, 1);
      background: rgba(0, 0, 0, 0.9);
  }
  
  /* Prediction Divider (subtle indicator for unified chart) */
  .prediction-divider {
      position: absolute;
      top: 0;
      left: 72%;
      width: 2px;
      height: 100%;
      background: linear-gradient(to bottom, transparent, #DDCDAC, transparent);
      opacity: 0.6;
      z-index: 10;
      pointer-events: none;
  }
  
  .prediction-divider::before {
      content: '';
      position: absolute;
      top: 20px;
      left: -3px;
      width: 8px;
      height: 8px;
      background: #DDCDAC;
      border-radius: 50%;
      opacity: 0.8;
  }
  
  /* Prediction candle styling */
  .prediction-candle .candle-body {
      opacity: 0.9;
      filter: brightness(1.1);
  }
  
  .prediction-candle .candle-wick {
      opacity: 0.8;
  }
  
  /* Loading Spinner Styles */
  .loading-spinner {
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.7);
      z-index: 1000;
  }
  
  .spinner {
      width: 40px;
      height: 40px;
      border: 4px solid #333;
      border-top: 4px solid #769B7D;
      border-radius: 50%;
      animation: spin 1s linear infinite;
  }
  
  .spinner-small {
      width: 20px;
      height: 20px;
      border: 2px solid #333;
      border-top: 2px solid #769B7D;
      border-radius: 50%;
      animation: spin 1s linear infinite;
  }
  
  @keyframes spin {
      0% { transform: rotate(0deg); }
      100% { transform: rotate(360deg); }
  }
  
  /* Price section loading overlay */
  .price-loading-overlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgb(0, 0, 0);
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 100;
  }
  
  /* Chart loading overlay */
  .chart-loading-overlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(10, 10, 10, 0.8);
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      z-index: 100;
      color: #769B7D;
  }
  
  .chart-loading-overlay .loading-text {
      margin-top: 15px;
      font-size: 14px;
      color: #ccc;
  }
  
  /* Wishlist loading overlay */
  .wishlist-loading-overlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.8);
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      z-index: 100;
      color: #DDCDAC;
  }
  
  .wishlist-loading-overlay .loading-text {
      margin-top: 15px;
      font-size: 14px;
      color: #ccc;
  }
  
  /* Portfolio loading overlay */
  .portfolio-loading-overlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(17, 17, 17, 0.9);
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      z-index: 100;
      color: #DDCDAC;
  }
  
  .portfolio-loading-overlay .loading-text {
      margin-top: 15px;
      font-size: 14px;
      color: #ccc;
  }
  
  /* Hide content while loading */
  .loading-hidden {
      opacity: 0.3;
      pointer-events: none;
  }
  
  /* Prediction Chart Access Overlay */
  .prediction-overlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.85);
      backdrop-filter: blur(3px);
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 200;
      border-radius: 4px;
      filter: none !important;
  }
  
  .prediction-overlay-content {
      text-align: center;
      color: #fff;
      padding: 20px;
      max-width: 300px;
      position: relative;
  }
  
  .prediction-overlay-icon {
      font-size: 48px;
      margin-bottom: 15px;
      opacity: 0.8;
  }
  
  .prediction-overlay-content h3 {
      font-size: 18px;
      font-weight: 600;
      margin-bottom: 10px;
      color: #DDCDAC;
  }
  
  .prediction-overlay-content p {
      font-size: 14px;
      line-height: 1.4;
      margin-bottom: 20px;
      color: #ccc;
  }
  
  html body .prediction-signup-btn {
      background: black !important;
      color: white;
      border: 1px solid white;
      padding: 12px 24px;
      border-radius: 0px;
      font-size: 14px;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.3s ease;
      text-transform: uppercase;
      letter-spacing: 0.5px;
  }
  
  .prediction-signup-btn:hover {
      background: white !important;
      transform: translateY(-1px) !important;
      box-shadow: 0 4px 12px rgba(221, 205, 172, 0.3) !important;
      border: 1px solid white !important;
      color: black !important;
  }
  
  /* Restricted access styling */
  .prediction-chart.restricted-access {
      position: relative;
  }
  
  .prediction-chart.restricted-access .chart-wrapper {
      filter: blur(2px);
      opacity: 0.3;
      pointer-events: none;
  }
  
  .prediction-chart.restricted-access .prediction-overlay {
      pointer-events: auto;
      filter: none !important;
      backdrop-filter: none !important;
  }
  
  /* Blur the chart content behind the prediction overlay when user doesn't have access */
  .prediction-area-overlay.no-access::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.4);
      backdrop-filter: blur(5px);
      z-index: -1;
      pointer-events: none;
  }
  
  /* Test class to force blur - remove this later */
  .prediction-area-overlay.test-blur::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.4);
      backdrop-filter: blur(5px);
      z-index: -1;
      pointer-events: none;
  }
  
  /* ========================================
     MOBILE RESPONSIVE STYLES
     ======================================== */
  
  /* Mobile Breakpoints */
  @media (max-width: 768px) {
  
  .timeframe-section{
  
  align-items: normal !important;
  
  }
      .chart-timeframe-controls {
      display: block !important;
      padding: 0 !important;}
      /* Main Layout */
      .main-container {
          flex-direction: column;
          height: auto;
          min-height: 100vh;
      }
      
      /* Fix timeframe controls on smaller screens */
      .chart-timeframe-controls {
          flex-direction: column;
          gap: 15px;
          padding: 15px;
          overflow-x: visible;
      }
      
      .timeframe-section {
          width: 100%;
          min-width: 0;
      }
      
      .timeframe-buttons-row {
          grid-template-columns: repeat(4, 1fr);
          gap: 2px;
      }
      
      .timeframe-btn {
          padding: 8px 12px;
          font-size: 12px;
          min-width: 45px;
      }
      
      /* Fix wishlist panel on smaller screens */
      .wishlist-panel {
          flex: none !important;
          width: 100% !important;
          max-width: 100% !important;
          min-width: 0 !important;
          margin-left: 0 !important;
          margin-top: 20px !important;
      }
      
      /* App Container Mobile */
      #app {
          padding: 2px;
          overflow-x: hidden;
          width: 100vw;
          max-width: 100%;
          box-sizing: border-box;
      }
      
      /* Container fixes for mobile */
      * {
          box-sizing: border-box;
      }
      
      body {
          overflow-x: hidden;
          width: 100%;
          margin: 0;
          padding: 0;
      }
      
      /* Timeframe Buttons Mobile */
      .timeframe-buttons {
          display: flex;
          flex-wrap: wrap;
          gap: 3px;
          margin: 8px 0;
          padding: 0 5px;
          justify-content: center;
      }
      
      .timeframe-btn {
          flex: 1;
          min-width: 45px;
          max-width: 60px;
          padding: 6px 4px;
          font-size: 11px;
          border-radius: 3px;
          white-space: nowrap;
          margin: 1px;
      }
      
      /* Historical and Prediction Timeframes Mobile */
      .historical-timeframes,
      .prediction-timeframes {
          margin: 8px 0;
      }
      
      .historical-timeframes .timeframe-buttons,
      .prediction-timeframes .timeframe-buttons {
          justify-content: space-around;
          max-width: 100%;
          overflow-x: auto;
          padding: 5px 2px;
      }
      
      /* Chart Titles Mobile */
      .chart-title {
          font-size: 14px;
          margin-bottom: 8px;
          text-align: center;
          padding: 0 10px;
      }
      
      .chart-panel {
          width: 100%;
              min-width: 100%;
          min-height: auto;
      }
      
      .wishlist-panel {
          width: 100% !important;
          max-width: 100% !important;
          min-height: 300px;
      }
      
      /* Header */
      .header {
          padding: 10px 0;
      }
      
      .header .title {
          padding: 0 15px;
      }
      
      .title {
          font-size: 28px;
          line-height: 32px;
      }
      
      /* Chart Header */
      .chart-header {
          font-size: 20px;
          padding: 10px 15px;
      }
      
      /* Chart Container */
      .chart-container {
          padding: 10px;
          display: flex;
          flex-direction: column;
      }
      
      /* Controls */
      .controls {
          width: 100%;
          padding: 15px;
      }
      
      .price-bar {
          flex-direction: column;
          gap: 10px;
      }
      
      .price-item {
          flex-direction: column;
          align-items: flex-start;
          gap: 5px;
      }
      
      .price-label {
          font-size: 14px;
      }
      
      .price-value {
          font-size: 16px;
      }
      
      /* Artist Info */
      .artist-info {
          flex-direction: row;
          text-align: center;
          gap: 15px;
          padding: 0px;
          margin-top: 20px;
      }
      .prediction-area-overlay {
      position: absolute;
      top: 67px;
      bottom: 31px;
  }
  
      .artist-details h4 {
          font-size: 18px;
          margin-bottom: 5px;
      }
      .artist-details{text-align: left;}
      .artist-details p {
            font-size: 19px !important;
          padding-bottom: 10px;
      }
      
      .artist-avatar {
          width: 60px;
          height: 60px;
          margin: 0;
      }
      
      
           /* Layout Controls */
       .layout-controls {
           flex-wrap: wrap;
           gap: 8px;
           padding: 10px;
           justify-content: left;
       }
       
       .layout-btn {
           padding: 8px 12px;
           font-size: 12px;
           min-width: 80px;
       }
       
           /* Hide Split View button on mobile */
      .layout-btn[data-layout="split"] {
          display: none !important;
      }
      
      /* Show Prediction Only button on mobile even for users without access */
      .layout-btn[data-layout="prediction"] {
          display: inline-block !important;
      }
      
      /* Style for Prediction Only button when user doesn't have access */
      .layout-btn[data-layout="prediction"].no-access {
          opacity: 0.7;
          background: #444 !important;
          color: #999 !important;
          border: 1px solid #666 !important;
      }
      
      .layout-btn[data-layout="prediction"].no-access:hover {
          opacity: 0.9;
          background: #555 !important;
          color: #ccc !important;
      }
       
                 /* Mobile chart layout - SINGLE CHART VIEW */
      .chart-section.historical-chart {
          width: 100% !important;
          display: block !important;
      }
      
      .chart-section.prediction-chart {
          width: 0% !important;
          display: none !important;
      }
      
      /* When prediction is active, hide historical */
      .dual-chart-container.prediction-active .chart-section.historical-chart {
          width: 0% !important;
          display: none !important;
      }
      
      .dual-chart-container.prediction-active .chart-section.prediction-chart {
          width: 100% !important;
          display: block !important;
      }
      
      /* Ensure chart divider is always hidden on mobile */
      .chart-divider {
          display: none !important;
          width: 0 !important;
      }
      
     
       .dual-chart-container {
           flex-direction: column !important;
           height: 100%;
           min-height: 250px;
           display: flex !important;
       }
       
       .chart-section {
           width: 100% !important;
           min-height: 200px;
           flex: 1;
       }
       
       .chart-divider {
           display: none !important;
       }
       
       .chart-divider::before {
           width: 20px;
           height: 20px;
       }
       
       .chart-divider::after {
           font-size: 10px;
       }
      
      .chart-title {
          font-size: 16px;
          padding: 10px;
      }
      
      /* Chart Grid */
      .chart-grid {
          opacity: 0.3;
      }
      
      /* Candlestick Chart */
      .candlestick-container {
          height: 315px !important;
      }
      
      .candlestick {
          min-width: 3px;
      }
      
      /* Price and Date Labels */
      .price-labels {
          font-size: 10px;
          padding: 5px;
      }
      
      .date-labels {
          font-size: 10px;
          padding: 5px;
      }
      
      /* Chart Bottom */
      .chart-bottom {
          padding: 0px !important;
      }
      
      .timeframes {
          flex-direction: column;
          gap: 20px;
      }
      
      .timeframes-left {
          flex-direction: column;
          gap: 15px;
      }
      
      .timeframe-section h4 {
          font-size: 14px;
          margin-bottom: 8px;
      }
      
      .timeframe-buttons {
          flex-wrap: wrap;
          gap: 5px;
          justify-content: center;
      }
      
      .timeframe-btn {
          padding: 6px 10px;
          font-size: 11px;
          min-width: 40px;
      }
      
      /* Trade Section */
      .trade-section {
          text-align: center;
          flex-direction: column;
          gap: 15px;
      }
      
      .trade-buttons {
          justify-content: center;
          flex-wrap: wrap;
          gap: 10px;
      }
      
      .buy-btn, .sell-btn {
          padding: 15px 20px !important;
          font-size: 16px !important;
          min-width: 100px !important;
          min-height: 50px !important;
          flex: 1;
          max-width: 150px;
      }
      
      /* Wishlist Panel */
      .wishlist-header {
          padding: 15px;
          font-size: 16px;
      }
      
      .wishlist-table {
          padding: 10px;
      }
      
      .table-header {
          display: none;
      }
      
      .table-row {
          flex-direction: column;
          gap: 10px;
          padding: 15px;
          border-bottom: 1px solid #333;
          margin-bottom: 10px;
      }
      
      .table-row > div {
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 5px 0;
      }
      
      .table-row > div::before {
          content: attr(data-label);
          font-weight: 600;
          color: #888;
          margin-right: 10px;
          font-size: 12px;
      }
      
      .artwork-thumb {
          width: 60px;
          height: 60px;
          margin: 0 auto;
      }
      
      .artwork-name {
          font-size: 14px;
      }
      
      .artist-name {
          font-size: 12px;
      }
      
      /* Loading Overlays */
      .chart-loading-overlay,
      .wishlist-loading-overlay,
      .price-loading-overlay {
          padding: 20px;
      }
      
      .loading-text {
          font-size: 12px;
      }
      
      /* Prediction Overlay */
      .prediction-overlay-content {
          padding: 15px;
          max-width: 280px;
      }
      
      .prediction-overlay-icon {
          font-size: 36px;
      }
      
      .prediction-overlay-content h3 {
          font-size: 16px;
      }
      
      .prediction-overlay-content p {
          font-size: 12px;
      }
      
      .prediction-signup-btn {
          padding: 10px 20px;
          font-size: 12px;
      }
  
      .timeframes{align-items: self-start;padding-left: 0 !important;display: block !important;width: 100% !important;}
      .trade-section{display: block;}
     .buy-btn{    padding: 15px 20px !important;
      cursor: pointer;
      min-width: 100% !important;
      min-height: 35px !important;
   }
      
      /* Portfolio Tabs Mobile - Stack vertically */
      .portfolio-tabs-container {
          padding: 0 15px;
      }
      
      .portfolio-tabs {
          flex-direction: column;
          gap: 8px;
      }
      
      .portfolio-tab {
          flex: none;
          width: 100%;
          padding: 15px 0;
          font-size: 20px;
          text-align: left;
          border-bottom: 2px solid transparent;
      }
      
      .portfolio-tab.tab-active {
          border-bottom: 3px solid;
          border-image: linear-gradient(90deg, #769C9C 0%, #DDCDAC 100%) 1;
      }
  }
  
  /* Extra Small Devices */
  @media (max-width: 480px) {
      .title {
          font-size: 24px;
          line-height: 28px;
      }
      
      .chart-header {
          font-size: 18px;
      }
      
      .price-label {
          font-size: 12px;
      }
      
      .price-value {
          font-size: 14px;
      }
      
      .artist-details h4 {
          font-size: 16px;
      }
      
      .artist-details p {
          font-size: 12px;
      }
      
      .layout-btn {
          padding: 6px 10px;
          font-size: 11px;
          min-width: 70px;
      }
      
      .chart-title {
          font-size: 14px;
      }
      
      .candlestick-container {
          height: 120px;
      }
      
      .timeframe-btn {
          padding: 5px 8px;
          font-size: 10px;
          min-width: 35px;
      }
      
      .buy-btn {
          padding: 8px 16px;
          font-size: 12px;
      }
      
      .wishlist-header {
          font-size: 14px;
      }
      
      .artwork-name {
          font-size: 13px;
      }
      
      .artist-name {
          font-size: 11px;
      }
      
      .prediction-overlay-content {
          padding: 12px;
          max-width: 260px;
      }
      
      .prediction-overlay-icon {
          font-size: 32px;
      }
      
      .prediction-overlay-content h3 {
          font-size: 14px;
      }
      
      .prediction-overlay-content p {
          font-size: 11px;
      }
      
      .prediction-signup-btn {
          padding: 8px 16px;
          font-size: 11px;
      }
      
      /* Portfolio Tabs Extra Small Mobile */
      .portfolio-tab {
          font-size: 18px;
          padding: 12px 0;
      }
  }
  
  /* Landscape Orientation */
  @media (max-width: 768px) and (orientation: landscape) {
      .main-container {
          flex-direction: row;
      }
      
      .chart-panel {
          width: 60%;
      }
      
      .wishlist-panel {
          width: 40%;
      }
      
      /* Keep single chart view even in landscape */
      .dual-chart-container {
          flex-direction: column !important;
      }
      
      .chart-section {
          width: 100% !important;
      }
      
      .chart-divider {
          display: none !important;
      }
      
      .timeframes {
          flex-direction: row;
      }
      
      .timeframes-left {
          flex-direction: row;
      }
  }
  
  /* Touch Device Optimizations */
  @media (hover: none) and (pointer: coarse) {
      .layout-btn,
      .timeframe-btn,
      .buy-btn,
      .prediction-signup-btn {
          min-height: 44px;
          min-width: 44px;
      }
      
      .candlestick {
          min-width: 4px;
      }
      
      .table-row {
          padding: 8px 15px;
      }
      
      .portfolio-grid-item {
          padding: 20px;
      }
  }
  
  /* Enhanced Mobile Chart Fixes */
  @media (max-width: 768px) {
      /* Chart Container Mobile Optimizations */
      .chart-container {
       
  
          border: none;
          margin: 10px 5px;
          border-radius: 0px;
          overflow: hidden;
          display: flex;
          flex-direction: column;
          padding: 5px;
      }
      
      .chart-area {
          height: 500px !important;
          padding: 5px;
      }
      
      .candlestick-chart {
          padding: 15px 5px 10px 5px;
          min-height: 450px;
      }
      
      .unified-chart-container .candlestick-chart {
          padding: 15px 5px 10px 5px;
          min-height: 450px;
      }
      
      /* Chart Area Mobile Fixes */
      .chart-area {
          width: 100% !important;
          height: 300px;
          min-height: 420px;
         
          padding: 5px;
      }
      
                         /* Dual Chart Container Mobile */
      .dual-chart-container {
          height: 100%;
          min-height: 250px;
          flex-direction: column !important;
          display: flex !important;
          position: relative;
      }
        
            /* Chart Section Mobile */
      .chart-section {
          min-height: 200px;
          padding: 5px;
          width: 100% !important;
          flex: 1;
          position: relative;
      }
      
      /* Candlestick Chart Mobile */
      .candlestick-chart {
          padding: 10px 20px 30px 10px;
          min-height: 200px;
      }
      
      .candlestick {
          width: 12px;
          min-width: 8px;
          margin: 0 1px;
      }
      
      /* Chart Grid Mobile */
      .chart-grid {
          opacity: 0.2;
      }
      
      /* Price and Date Labels Mobile */
      .price-labels {
          right: 5px;
          width: 50px;
          padding: 10px 2px;
      }
      
      .price-label-item {
          font-size: 10px;
      }
      
      .date-labels {
          left: 10px;
          right: 60px;
          height: 25px;
          padding: 0 5px;
      }
      
      .date-label-item {
          font-size: 10px;
      }
      
      /* Chart Title Mobile */
      .chart-title {
          font-size: 14px;
          top: 5px;
          left: 10px;
      }
      
                     /* Chart Divider Mobile */
        .chart-divider {
            display: none !important;
        }
       
       .chart-divider::before {
           width: 20px;
           height: 20px;
       }
       
       .chart-divider::after {
           font-size: 10px;
       }
  }
  
  /* Enhanced Mobile Wishlist/Recommended Section */
  @media (max-width: 768px) {
      /* Wishlist Panel Mobile */
      .wishlist-panel {
          margin-left: 0 !important;
          margin-top: 20px !important;
          width: 100% !important;
          max-width: 100% !important;
          min-width: 0 !important;
          flex: none !important;
          min-height: 250px;
          max-height: 400px;
      }
      
      /* Wishlist Header Mobile */
      .wishlist-header {
          font-size: 24px;
          padding: 15px;
          text-align: left;
      }
      
      /* Wishlist Table Mobile */
      .wishlist-table {
          height: auto;
          max-height: 300px;
          padding: 10px;
          border: 1px solid #333;
          border-radius: 0px;
          margin: 0 10px;
      }
      
      /* Table Header Mobile - Show after artworks */
      .table-header {
          display: grid;
          grid-template-columns: 80px 1fr 1fr;
          padding: 10px 0;
          font-size: 14px;
          color: white;
          text-transform: uppercase;
          letter-spacing: 0.5px;
          border-bottom: 1px solid #333;
          margin-bottom: 15px;
          font-weight: 600;
      }
      
      /* Table Row Mobile - Keep table structure */
      .table-row {
          display: grid;
          grid-template-columns: 80px 1fr 1fr;
          padding: 12px 0;
          height: auto;
          min-height: 60px;
          width: 100%;
          align-items: center;
          border-bottom: 1px solid #333;
          margin-bottom: 8px;
      }
      
      .table-row:last-child {
          border-bottom: none;
          margin-bottom: 0;
      }
      
      /* Table Row Content Mobile - Remove data-label approach */
      .table-row > div {
          display: flex;
          align-items: center;
          padding: 0 5px;
          width: 100%;
      }
      
      /* Remove the ::before pseudo-elements */
      .table-row > div::before {
          content: none;
      }
      
      /* Artwork Thumb Mobile */
      .artwork-thumb {
          width: 50px;
          height: 50px;
          border-radius: 6px;
          margin: 0 auto;
      }
      
      /* Artwork Name Mobile */
      .artwork-name {
          font-size: 14px;
          font-weight: 500;
          margin-bottom: 0;
          text-align: left;
      }
      
      /* Artist Name Mobile */
      .artist-name {
          font-size: 12px;
          color: #ccc;
          text-align: left;
      }
      
      /* Table Separators Mobile */
      .table-separator,
      .table-separator2 {
          display: none;
      }
  }
  
  /* Extra Small Mobile Devices */
  @media (max-width: 480px) {
      /* Chart Container Extra Small */
      .chart-container {
          margin: 5px;
          min-height: 350px;
      }
      
  
     
  
      
      /* Price and Date Labels Extra Small */
      .price-labels {
          right: 3px;
          width: 40px;
          padding: 8px 1px;
      }
      
      .price-label-item {
          font-size: 9px;
      }
      
      .date-labels {
          left: 8px;
          right: 50px;
          height: 20px;
          padding: 0 3px;
      }
      
      .date-label-item {
          font-size: 9px;
      }
      
      /* Chart Title Extra Small */
      .chart-title {
          font-size: 12px;
          top: 3px;
          left: 8px;
      }
      
      /* Wishlist Panel Extra Small */
      .wishlist-panel {
          width: 100% !important;
          max-width: 100% !important;
          min-width: 0 !important;
          flex: none !important;
          min-height: 200px;
          max-height: 300px;
      }
      
      .wishlist-header {
          font-size: 22px;
          padding: 12px;
          text-align: left;
      }
      
      .wishlist-table {
          max-height: 250px;
          padding: 8px;
          margin: 0 5px;
      }
      
      /* Table Header Extra Small */
      .table-header {
          font-size: 12px;
          padding: 8px 0;
          margin-bottom: 12px;
      }
      
      /* Table Row Extra Small */
      .table-row {
          padding: 8px 0;
          min-height: 50px;
      }
      
      .table-row > div {
          padding: 0 3px;
      }
      
      /* Remove the ::before pseudo-elements */
      .table-row > div::before {
          content: none;
      }
      
      .artwork-thumb {
          width: 40px;
          height: 40px;
      }
      
      .artwork-name {
          font-size: 13px;
      }
      
      .artist-name {
          font-size: 11px;
      }
  }
  
  /* Extra Small Mobile Devices (iPhone SE, small screens) */
  @media (max-width: 375px) {
      #app {
          padding: 0;
          width: 100vw;
          max-width: 100vw;
          overflow-x: hidden;
          margin: 0;
      }
      
      .main-container {
          width: 100%;
          max-width: 100vw;
          overflow-x: hidden;
          padding: 0;
          margin: 0;
          gap: 0;
      }
      
      .chart-panel {
          width: 100%;
          max-width: 100%;
          padding: 1px;
          margin: 0;
          overflow-x: hidden;
      }
      
    
      .chart-container {
   
          margin: 2px 1px;
          padding: 1px;
          overflow-x: hidden;
          box-sizing: border-box;
          border-radius: 4px;
      }
      
   
      
  
      .timeframe-buttons {
          gap: 1px;
          margin: 3px 0;
          padding: 0 1px;
          overflow-x: auto;
          justify-content: space-between;
          flex-wrap: wrap;
      }
      
      .timeframe-btn {
          min-width: 30px;
          max-width: 42px;
          padding: 3px 1px;
          font-size: 9px;
          margin: 0.5px;
          border-radius: 2px;
      }
      
      .chart-title {
          font-size: 11px;
          margin-bottom: 3px;
          padding: 0 3px;
      }
      
      .price-labels {
          right: 1px;
          width: 30px;
          padding: 3px 1px;
          font-size: 8px;
      }
      
      .date-labels {
          left: 3px;
          right: 32px;
          font-size: 8px;
          padding: 0 1px;
      }
      
      .wishlist-panel {
          width: 100% !important;
          max-width: 100% !important;
          padding: 3px;
          margin: 0;
          overflow-x: hidden;
      }
      
      /* Buy/Sell buttons mobile */
      .buy-btn, .sell-btn {
          padding: 8px 12px;
          font-size: 12px;
          min-width: 60px;
      }
      
      /* Price info mobile */
      .price-info {
          padding: 5px;
          font-size: 11px;
      }
      
      /* Candlestick sizing for small screens */
      .candlestick {
          width: 12px;
          margin: 0 1px;
      }
      
      .candle-wick {
          width: 1px;
      }
  }
  
  /* Small Mobile Devices (iPhone 390px and similar) */
  @media (max-width: 480px) {
      #app {
          padding: 1px;
          width: 100vw;
          max-width: 100vw;
          overflow-x: hidden;
      }
      
      .main-container {
          width: 100%;
          max-width: 100vw;
          overflow-x: hidden;
          padding: 0;
          margin: 0;
      }
      
      .chart-panel {
          width: 100%;
          max-width: 100%;
          padding: 2px;
          margin: 0;
          overflow-x: hidden;
      }
      
      .chart-container {
      
      
          margin: 5px 2px;
          padding: 2px;
          overflow-x: hidden;
          box-sizing: border-box;
      }
      
  
      
      .candlestick-chart {
          padding: 15px 2px 10px 2px;
          min-height: 350px !important;
          height: 350px !important;
          width: 100%;
          overflow-x: hidden;
      }
      
      .unified-chart-container .candlestick-chart {
          padding: 15px 2px 10px 2px;
          min-height: 350px !important;
          height: 350px !important;
          width: 100%;
      }
      
      /* Timeframe buttons for small screens */
      .timeframe-buttons {
          gap: 2px;
          margin: 5px 0;
          padding: 0 2px;
          overflow-x: auto;
          white-space: nowrap;
      }
      
      .timeframe-btn {
          min-width: 35px;
          max-width: 50px;
          padding: 4px 2px;
          font-size: 10px;
          margin: 1px;
          flex-shrink: 0;
      }
      
      /* Chart titles for small screens */
      .chart-title {
          font-size: 12px;
          margin-bottom: 5px;
          padding: 0 5px;
      }
      
      /* Price labels for small screens */
      .price-labels {
          right: 2px;
          width: 35px;
          padding: 5px 1px;
          font-size: 9px;
      }
      
      /* Date labels for small screens */
      .date-labels {
          left: 5px;
          right: 40px;
          font-size: 9px;
          padding: 0 2px;
      }
      
      /* Wishlist panel for small screens */
      .wishlist-panel {
          width: 100%;
          max-width: 100%;
          padding: 5px;
          margin: 0;
          overflow-x: hidden;
      }
  }
  
  /* Desktop Screens (1600px - 1800px) - Fix wishlist table width */
  @media (min-width: 1600px) and (max-width: 1800px) {
      .wishlist-panel {
          flex: 0 0 350px !important;
          max-width: 350px !important;
          min-width: 350px !important;
      }
      
      .wishlist-table {
          padding: 15px;
      }
      
      .table-header {
          grid-template-columns: 70px 1fr 1fr;
          padding-left: 10px;
          font-size: 14px;
      }
      
      .table-row {
          grid-template-columns: 70px 1fr 1fr;
          padding: 6px 10px;
          font-size: 12px;
      }
      
      .artwork-thumb {
          width: 35px;
          height: 35px;
      }
      
      .artwork-name {
          font-size: 12px;
      }
      
      .artist-name {
          font-size: 11px;
      }
  }
  
  /* Large Desktop Screens (1900px+) */
  @media (min-width: 1900px) {
      .timeframe-btn {
          min-width: 80px !important;
      }
  }
  
  /* Fix chart cutoff on smaller desktop screens (below 1900px) */
  @media (min-width: 769px) and (max-width: 1899px) {
      /* Only prevent horizontal overflow, don't mess with heights */
      .chart-container {
          overflow-x: hidden !important;
          box-sizing: border-box !important;
      }
      
      .chart-area {
          overflow-x: hidden !important;
          box-sizing: border-box !important;
      }
      
      /* Fix AG Charts container to fit properly - but allow navigator interaction */
      .ag-charts-container {
          overflow-x: hidden !important;
          box-sizing: border-box !important;
      }
      
      /* Adjust main container to prevent overflow */
      .main-container {
          overflow-x: hidden !important;
          box-sizing: border-box !important;
      }
      
      /* Fix chart panel width */
      .chart-panel {
          overflow-x: hidden !important;
          box-sizing: border-box !important;
      }
      
      /* Keep wishlist panel responsive size */
      .wishlist-panel {
          flex: 0 0 400px !important;
          max-width: 400px !important;
          min-width: 300px !important;
      }
  }
  
  /* Small Desktop Screens (1300px - 1400px) */
  @media (min-width: 1300px) and (max-width: 1400px) {
      .timeframe-btn {
          min-width: 60px !important;
      }
  }
  
  /* Medium Desktop Screens (1401px - 1599px) */
  @media (min-width: 1401px) and (max-width: 1599px) {
      .timeframe-btn {
          min-width: 90px !important;
      }
      
      .wishlist-panel {
          flex: 0 0 320px !important;
          max-width: 320px !important;
          min-width: 320px !important;
      }
      
      .wishlist-table {
          padding: 12px;
      }
      
      .table-header {
          grid-template-columns: 60px 1fr 1fr;
          padding-left: 8px;
          font-size: 13px;
      }
      
      .table-row {
          grid-template-columns: 60px 1fr 1fr;
          padding: 5px 8px;
          font-size: 11px;
      }
      
      .artwork-thumb {
          width: 30px;
          height: 30px;
      }
      
      .artwork-name {
          font-size: 11px;
      }
      
      .artist-name {
          font-size: 10px;
      }
  }
  
  /* Tablet and Medium Screen Fixes */
  @media (min-width: 769px) and (max-width: 1024px) {
      /* Fix timeframe controls on tablets */
      .chart-timeframe-controls {
          flex-wrap: wrap;
          gap: 15px;
          padding: 15px;
      }
      
      .timeframe-section {
          flex: 1;
          min-width: 200px;
      }
      
      .timeframe-buttons-row {
          grid-template-columns: repeat(2, 1fr);
          gap: 6px;
      }
      
      .timeframe-btn {
          padding: 8px 12px;
          font-size: 12px;
          min-width: 50px;
      }
      
      /* Fix wishlist panel on tablets */
      .wishlist-panel {
          flex: 0 0 350px;
          min-width: 300px;
      }
  }
  
  /* Medium Mobile Devices (iPhone 12, Samsung Galaxy, etc.) */
  @media (min-width: 481px) and (max-width: 768px) {
      #app {
          padding: 3px;
          width: 100vw;
          max-width: 100%;
          overflow-x: hidden;
      }
      
      .main-container {
          width: 100%;
          padding: 0;
          margin: 0;
          overflow-x: hidden;
      }
      
      .chart-container {
 

     
          margin: 5px 3px;
          padding: 3px;
          overflow-x: hidden;
          box-sizing: border-box;
      }
      
   
      
  
      
      .timeframe-buttons {
          gap: 2px;
          margin: 8px 0;
          padding: 0 3px;
          flex-wrap: wrap;
          justify-content: center;
      }
      
      .timeframe-btn {
          min-width: 40px;
          max-width: 55px;
          padding: 5px 3px;
          font-size: 11px;
          margin: 1px;
      }
      
      .chart-title {
          font-size: 13px;
          margin-bottom: 6px;
          text-align: center;
      }
      
      /* Candlestick sizing for medium screens */
      .candlestick {
          width: 14px;
          margin: 0 1.5px;
      }
  }
  
  /* Global Mobile Fixes */
  @media (max-width: 768px) {
      /* Prevent horizontal scrolling */
      html, body {
          overflow-x: hidden;
          width: 100%;
          margin: 0;
          padding: 0;
          box-sizing: border-box;
      }
      
      /* Ensure all containers fit viewport */
      .main-container,
      .chart-panel,
      .wishlist-panel,
      .chart-container,
      .candlestick-chart {
          max-width: 100vw;
          box-sizing: border-box;
      }
      
  
      
      
      /* Mobile-friendly interactions */
      .timeframe-btn,
      .buy-btn,
      .sell-btn {
          touch-action: manipulation;
          user-select: none;
          -webkit-tap-highlight-color: transparent;
      }
      
      /* Divider mobile adjustments */
      .chart-divider-line {
          width: 2px;
          touch-action: pan-x;
      }
      
      .divider-handle {
          width: 24px;
          height: 24px;
          touch-action: pan-x;
      }
  }
  
  /* Landscape Mobile Optimizations */
  @media (max-width: 768px) and (orientation: landscape) {
      .chart-container {
          height: 350px;
          min-height: 300px;
      }
      
     
      .wishlist-panel {
          max-height: 350px;
      }
      
      .wishlist-table {
          max-height: 280px;
      }
      
      /* Maintain table structure in landscape */
      .table-header {
          display: grid;
          grid-template-columns: 80px 1fr 1fr;
      }
      
      .table-row {
          display: grid;
          grid-template-columns: 80px 1fr 1fr;
      }
  }
  
  /* High DPI Displays */
  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
      .chart-grid {
          border-width: 0.5px;
      }
      
      .candlestick {
          border-width: 0.5px;
      }
  }
  
  /* Price Reference Lines */
  .price-reference-lines {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      pointer-events: none;
      z-index: 10;
      overflow: visible;
  }
  
  .price-reference-line {
      position: absolute;
      left: 0;
      width: calc(100% - 50px);
      height: 1px;
      z-index: 10;
      overflow: visible;
  }
  
  .current-price-line {
       border-top: 2px dashed #769B7D;
       background: linear-gradient(90deg, #769B7D 0%, transparent 100%);
       position: relative;
  }
  
  /* Green circle on current price line - positioned exactly where red circle shows */
  .current-price-line::after {
      content: '';
      position: absolute;
      left: calc(var(--divider-position, 72%) + 2.8%);
      top: 50%;
      transform: translate(-50%, -50%);
      width: 12px;
      height: 12px;
      background: #769B7D;
      border: 2px solid #769B7D;
      border-radius: 50%;
      z-index: 25;
      box-shadow: 0 0 4px rgba(118, 155, 125, 0.5);
      transition: none;
  }
  
  .predicted-price-line {
      border-top: 2px dashed #DDCDAC;
      background: linear-gradient(90deg, #DDCDAC 0%, transparent 100%);
      position: relative;
  }
  
  /* Beige circle on predicted price line */
  .predicted-price-line::after {
      content: '';
      position: absolute;
      right: 30px;
      top: 50%;
      transform: translateY(-50%);
      width: 12px;
      height: 12px;
      background: #DDCDAC;
      border: 2px solid white;
      border-radius: 50%;
      z-index: 20;
      box-shadow: 0 0 4px rgba(221, 205, 172, 0.5);
  }
  
  /* Full-height vertical dotted line at predicted price position */
  .predicted-price-line::before {
      content: '';
      position: absolute;
      right: 36px;
      top: -1000px;
      width: 2px;
      height: 2000px;
      border-left: 2px dashed #DDCDAC;
      z-index: 15;
      pointer-events: none;
      opacity: 0.6;
  }
  
  .price-line-label {
      position: absolute;
      right: -45px;
      top: -12px;
      background: rgba(0, 0, 0, 0.95);
      color: white;
      padding: 3px 6px;
      border-radius: 0px;
      font-size: 14px;
      font-weight: 800;
      white-space: nowrap;
      min-width: 40px;
      text-align: center;
      border: 1px solid rgba(255, 255, 255, 0.3);
      z-index: 25;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
      display: block !important;
      visibility: visible !important;
      opacity: 1 !important;
      line-height: 28px;;
  }
  
  .current-price-label {
       background: #769B7D;
        color: white;
       border-color: #769B7D;
  }
  
  .predicted-price-label {
      background: rgba(221, 205, 172, 0.95);
      color: #333;
      border-color: rgba(221, 205, 172, 0.5);
  }
  
  /* Historical and Prediction Date Labels */
  .historical-date-labels,
  .prediction-date-labels {
      position: absolute;
      bottom: 5px;
      height: 20px;
      pointer-events: none;
      z-index: 5;
  }
  
  .historical-date-labels {
      left: 20px;
      width: calc(72% - 20px);
  }
  
  .prediction-date-labels {
      right: 50px;
      width: calc(28% - 50px);
  }
  
  .date-label-item.historical-date,
  .date-label-item.prediction-date {
      position: absolute;
      bottom: 0;
      font-size: 14px;
      color: white;
      text-align: center;
      white-space: nowrap;
  }
  
  .date-label-item.historical-date {
      color: #769B7D;
  }
  
  .date-label-item.prediction-date {
      color: #DDCDAC;
  }
  
  /* Prediction Blur Overlay for Non-Premium Users */
  .prediction-blur-overlay {
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      z-index: 50;
      pointer-events: none;
      transition: left 0.1s ease, width 0.1s ease;
  }
  
  .prediction-blur-overlay .premium-feature-overlay {
      position: relative;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.4);
      /* backdrop-filter: blur(20px); */
      -webkit-backdrop-filter: blur(20px);
      display: flex;
      align-items: center;
      justify-content: center;
      pointer-events: all;
  }
  
  .prediction-blur-overlay .premium-overlay-content {
      text-align: center;
      color: white;
      padding: 20px;
       background: transparent;
      max-width: 280px;
  }
  
  .prediction-blur-overlay .premium-overlay-icon {
      margin-bottom: 15px;
  }
  
  .prediction-blur-overlay .premium-overlay-content h3 {
      margin: 0 0 10px 0;
      font-size: 18px;
      font-weight: 600;
      color: #DDCDAC;
  }
  
  .prediction-blur-overlay .premium-overlay-content p {
      margin: 0 0 20px 0;
      font-size: 12px;
      line-height: 1.4;
      color: #ccc;
  }
  
  .prediction-blur-overlay .premium-signup-btn {
      background: black !important;
      color: white !important;
      border: 1px solid white !important;
      padding: 10px 20px !important;
      border-radius: 0px !important;
      font-size: 14px !important;
      font-weight: 600 !important;
      cursor: pointer !important;
      transition: all 0.3s ease !important;
      text-transform: uppercase !important;
  
  }
  
  .prediction-blur-overlay .premium-signup-btn:hover {
      background: linear-gradient(90deg, #DDCDAC 0%, #769C9C 100%);
      transform: translateY(-2px);
  }
  
  /* Blur the prediction elements for non-premium users */
  .candlestick.prediction-candle:not(.premium-access) {
      filter: blur(15px);
      opacity: 0.2;
  }
  
  .prediction-date-labels:not(.premium-access) {
      filter: blur(10px);
      opacity: 0.3;
  }
  
  /* CRITICAL: Ensure navigator handles are always interactive - override all other rules */
  .ag-charts-navigator,
  [class*="navigator"],
  [class*="handle"],
  .ag-charts-container .ag-charts-navigator,
  .ag-charts-container [class*="navigator"],
  .ag-charts-container [class*="handle"] {
      pointer-events: auto !important;
      overflow: visible !important;
      z-index: 1000 !important;
      user-select: none !important;
      touch-action: pan-x !important;
  }
  
  /* Specific navigator handle styling - force interaction */
  .ag-charts-navigator rect[class*="handle"],
  [class*="navigator"] rect[class*="handle"],
  [class*="handle"] rect,
  .ag-charts-container rect[class*="handle"],
  .ag-charts-container [class*="navigator"] rect,
  .ag-charts-container [class*="handle"] rect {
      pointer-events: auto !important;
      cursor: ew-resize !important;
      overflow: visible !important;
      user-select: none !important;
      touch-action: pan-x !important;
  }
  
  /* Ensure navigator container allows interaction */
  .ag-charts-container .ag-charts-navigator-container,
  .ag-charts-container [class*="navigator-container"],
  .ag-charts-navigator-container,
  [class*="navigator-container"] {
      overflow: visible !important;
      pointer-events: auto !important;
      z-index: 1000 !important;
  }
  
  /* Override any overlay that might block navigator */
  .ag-charts-container .ag-charts-navigator,
  .ag-charts-container [class*="navigator"] {
      position: relative !important;
      z-index: 1001 !important;
      pointer-events: auto !important;
  }
  
  /* Force navigator mask and handles to be interactive */
  .ag-charts-container [class*="navigator-mask"],
  .ag-charts-container [class*="navigator-handle"],
  .ag-charts-container [class*="handle-mask"] {
      pointer-events: auto !important;
      cursor: ew-resize !important;
      z-index: 1002 !important;
  }
  
  /* AG Charts specific navigator overrides - force interaction */
  #ag-chart .ag-charts-navigator,
  #ag-chart [class*="navigator"],
  #ag-chart [class*="handle"],
  #ag-chart svg [class*="navigator"],
  #ag-chart svg [class*="handle"] {
      pointer-events: auto !important;
      cursor: ew-resize !important;
      z-index: 1000 !important;
      overflow: visible !important;
  }
  
  /* Force all SVG elements in navigator to be interactive */
  #ag-chart svg rect[class*="handle"],
  #ag-chart svg [class*="navigator"] rect,
  #ag-chart svg [class*="handle"] rect,
  #ag-chart svg [class*="navigator-mask"],
  #ag-chart svg [class*="navigator-handle"] {
      pointer-events: auto !important;
      cursor: ew-resize !important;
      z-index: 1001 !important;
  }
  
  /* Override any parent container that might block navigator */
  .ag-charts-container,
  #ag-chart,
  .chart-container,
  .chart-area {
      position: relative !important;
  }
  
  .ag-charts-container .ag-charts-navigator,
  #ag-chart .ag-charts-navigator {
      position: relative !important;
      z-index: 1000 !important;
      pointer-events: auto !important;
      overflow: visible !important;
  }
  
  /* EMERGENCY FIX: Force all possible navigator elements to be interactive */
  *[class*="navigator"] *,
  *[class*="handle"] *,
  svg *[class*="navigator"],
  svg *[class*="handle"] {
      pointer-events: auto !important;
      cursor: ew-resize !important;
  }
  
  /* Hide navigator bar completely */
  .ag-charts-navigator,
  [class*="navigator"],
  .ag-charts-container .ag-charts-navigator,
  #ag-chart .ag-charts-navigator,
  .ag-charts-container [class*="navigator"],
  #ag-chart [class*="navigator"] {
      display: none !important;
      visibility: hidden !important;
      opacity: 0 !important;
      height: 0 !important;
      overflow: hidden !important;
  }
  
  /* Hide navigator in all screen sizes */
  @media (min-width: 769px) {
      .ag-charts-container,
      #ag-chart {
          overflow: visible !important;
      }
      
      .ag-charts-container .ag-charts-navigator,
      #ag-chart .ag-charts-navigator {
          display: none !important;
          visibility: hidden !important;
          opacity: 0 !important;
          height: 0 !important;
      }
  }
  
  /* Force hide toolbar and volume on mobile */
  @media (max-width: 767px) {
      .ag-charts-container [class*="toolbar"],
      #ag-chart [class*="toolbar"],
      .ag-charts-container [class*="volume"],
      #ag-chart [class*="volume"],
      .ag-charts-container [class*="column"],
      #ag-chart [class*="column"],
      .ag-charts-container svg [class*="volume"],
      #ag-chart svg [class*="volume"],
      .ag-charts-container svg [class*="column"],
      #ag-chart svg [class*="column"],
      .ag-charts-container rect[class*="volume"],
      #ag-chart rect[class*="volume"] {
          display: none !important;
          visibility: hidden !important;
          opacity: 0 !important;
          height: 0 !important;
          width: 0 !important;
      }
  }
  
/* Volume bars styling - make them shorter */
#ag-chart svg rect,
.ag-charts-container svg rect {
    height: 15px !important;
    max-height: 15px !important;
}

/* Target volume bars specifically */
#ag-chart svg g[class*="volume"] rect,
.ag-charts-container svg g[class*="volume"] rect {
    height: 10px !important;
    max-height: 10px !important;
}

/* Mobile Chart View Buttons */
.mobile-chart-controls {
    display: none;
    justify-content: center;
    gap: 10px;
    margin-bottom: 15px;
    padding: 15px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background: rgba(0, 0, 0, 0.8);
}

.mobile-chart-btn {
    flex: 1;
    max-width: 150px;
    padding: 12px 20px;
    background: #2a2a2a;
    border: 2px solid #666;
    border-radius: 8px;
    color: #ccc;
    font-family: Darker Grotesque, Arial, Helvetica, sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.mobile-chart-btn.active {
    background: #769B7D !important;
    color: #fff !important;
    border-color: #769B7D;
}

.mobile-chart-btn:hover {
    background: #3a3a3a;
    color: #fff;
}

/* Hide mobile timeframe controls on desktop */
.mobile-timeframe-controls {
    display: none;
}

    /* Hide drag overlay on mobile */
    @media (max-width: 768px) {
        .mobile-chart-controls {
            display: flex !important;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            z-index: 10;
            background: rgba(0, 0, 0, 0.9);
            padding: 15px;
            margin-bottom: 0;
        }
        
        .prediction-area-overlay {
            display: none !important;
        }
        
        .drag-handle {
            display: none !important;
        }
        
        /* Hide timeframe sections on mobile when not active */
        .mobile-hidden {
            display: none !important;
        }
        
        /* Show only active timeframe section */
        .timeframe-section {
            width: 100%;
        }
        
        /* Hide timeframe labels on mobile */
        .timeframe-section .timeframe-label {
            display: none !important;
        }
        
        /* Hide layout controls on mobile */
        .layout-controls {
            display: none !important;
        }
        
        /* Hide desktop timeframe controls on mobile but keep mobile controls visible */
        .chart-timeframe-controls .timeframe-section {
            display: none !important;
        }
        
        .chart-timeframe-controls .mobile-timeframe-controls {
            display: block;
        }
        
        /* FORCE mobile timeframe controls to show on mobile - BUT ONLY ONE AT A TIME */
        .mobile-timeframe-controls {
            position: relative !important;
            z-index: 999 !important;
            background: #000 !important;
            padding: 10px !important;
            margin: 0px 0 !important;
        }
        .artist-info {
    position: static;}
        /* Historical controls - show by default but allow JavaScript override */
        #mobile-historical-controls {
            display: block;
            visibility: visible;
            opacity: 1;
        }
        
        /* Prediction controls - hide by default but allow JavaScript override */
        #mobile-prediction-controls {
            display: none;
            visibility: hidden;
            opacity: 0;
        }
        
        /* FORCE mobile timeframe sections to show */
        .mobile-timeframe-section {
            display: block !important;
            visibility: visible !important;
            opacity: 1 !important;
            position: relative !important;
            z-index: 999 !important;
        }
        
        /* FORCE mobile timeframe buttons to be visible */
        .mobile-timeframe-controls .timeframe-buttons-row {
            display: grid !important;
       
            gap: 1px !important;
            padding: 1px !important;
            visibility: visible !important;
            opacity: 1 !important;
        }
        
        .mobile-timeframe-controls .timeframe-btn {
            display: inline-block !important;
            visibility: visible !important;
            opacity: 1 !important;
            background: #2a2a2a !important;
            color: #999 !important;
            border: 1px solid #444 !important;
            padding: 7px 10px !important;
            margin: 5px !important;
            border-radius: 0 !important;
            font-size: 15px !important;
            font-weight: 500 !important;
            min-width: 75px !important;
            text-align: center !important;
            cursor: pointer !important;
            transition: all 0.2s ease !important;
        }
        
        .mobile-timeframe-controls .timeframe-btn:hover {
            background: #3a3a3a !important;
            color: #fff !important;
        }
        
        .mobile-timeframe-controls .timeframe-btn.active {
            background: #769B7D !important;
            color: #000 !important;
            border-color: #769B7D !important;
        }
        
        /* More specific rule for mobile prediction buttons */
        #mobile-prediction-controls .timeframe-btn.active {
            background: #769B7D !important;
            color: #000 !important;
            border-color: #769B7D !important;
        }
        
        /* More specific rule for mobile historical buttons */
        #mobile-historical-controls .timeframe-btn.active {
            background: #769B7D !important;
            color: #000 !important;
            border-color: #769B7D !important;
        }
        
        /* Ultra-specific rules to override Vue styling */
        .mobile-timeframe-controls .timeframe-btn.active[data-type="prediction"] {
            background: #769B7D !important;
            color: #000 !important;
            border-color: #769B7D !important;
        }
        
        .mobile-timeframe-controls .timeframe-btn.active[data-type="historical"] {
            background: #769B7D !important;
            color: #000 !important;
            border-color: #769B7D !important;
        }
        
        /* Force visibility classes */
        .force-visible {
            display: block !important;
            visibility: visible !important;
            opacity: 1 !important;
            position: relative !important;
            left: auto !important;
        }
        
        .force-hidden {
            display: none !important;
            visibility: hidden !important;
            opacity: 0 !important;
            position: absolute !important;
            left: -9999px !important;
        }
        
        /* Adjust chart area to account for mobile controls */
        .chart-area {
            padding-top: 80px;
        }
        
        /* Center timeframe buttons on mobile */
        .chart-timeframe-controls {
            justify-content: center;
        }
        
        .timeframe-buttons-row {
            justify-content: center;
            flex-wrap: wrap;
        }
    }

  /* Mobile-specific chart adjustments */
  @media (max-width: 600px) {
      #ag-chart {
          height: 50vh !important;  /* shorter on small screens */
      }
  
      .ag-charts-container {
          padding: 0px !important;
          margin: 0 !important;
      }
  }
  
  /* Premium Feature Overlay Styles */
  .prediction-access-overlay {
    position: absolute;
    top: 42%;
    right: 18px;
    transform: translateY(-50%);
    width: auto;
    min-width: 410px;
    max-width: 410px;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 8px;
    padding: 30px;
    text-align: center;
    z-index: 1000;
    pointer-events: auto;
    display: block;
  }
  
  .prediction-overlay-content {
      text-align: center;
      color: #fff;
      display: block;
      background: transparent;
      border-radius: 0;
      padding: 0;
  }
  
  .prediction-overlay-icon {
      font-size: 64px;
      margin-bottom: 0px;
      opacity: 0.9;
  }
  
  .prediction-overlay-content h3 {
      font-size: 24px;
      font-weight: 700;
      margin-bottom: 15px;
      color: #DDCDAC;
  }
  
  .prediction-overlay-content p {
      font-size: 16px;
      line-height: 1.6;
      margin-bottom: 25px;
      color: #ccc;
  }
  
  .prediction-signup-btn {
      background: linear-gradient(135deg, #DDCDAC, #769C9C);
      color: #000;
      border: none;
      padding: 14px 32px;
      border-radius: 8px;
      font-size: 16px;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.3s ease;
      text-transform: uppercase;
      letter-spacing: 1px;
  }
  
  .prediction-signup-btn:hover {
      background: linear-gradient(135deg, #769C9C, #DDCDAC);
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(221, 205, 172, 0.4);
  }
  
  .prediction-signup-btn:active {
      transform: translateY(0);
  }
  
  /* Premium Overlay Loading States */
  .premium-loading-state {
      text-align: center;
      color: #fff;
      opacity: 1;
      transition: all 0.3s ease;
      animation: fade-in 0.3s ease;
      display: block; /* Show by default */
  }
  
  /* Hide loading state when loaded state is ready */
  .premium-loading-state.hidden {
      display: none;
  }
  
  .premium-loading-state h3 {
      font-size: 24px;
      font-weight: 700;
      margin-bottom: 20px;
      color: #DDCDAC;
  }
  
  .premium-loading-spinner {
      margin: 20px 0;
      display: flex;
      justify-content: center;
      align-items: center;
  }
  
  .premium-loading-spinner .spinner {
      width: 40px;
      height: 40px;
      border: 3px solid rgba(221, 205, 172, 0.3);
      border-top: 3px solid #DDCDAC;
      border-radius: 50%;
      animation: premium-spin 1s linear infinite;
  }
  
  @keyframes premium-spin {
      0% { transform: rotate(0deg); }
      100% { transform: rotate(360deg); }
  }
  
  .premium-loading-state .loading-text {
      font-size: 16px;
      color: #ccc;
      margin-top: 15px;
  }
  
  /* Premium Loaded State */
  .premium-loaded-state {
      text-align: center;
      color: #fff;
      opacity: 1;
      transition: all 0.3s ease;
      animation: premium-fade-in 0.5s ease;
      display: none; /* Hidden by default */
  }
  
  /* Show loaded state when ready */
  .premium-loaded-state.ready {
      display: block !important;
      opacity: 1 !important;
  }
  
  @keyframes premium-fade-in {
      0% { opacity: 0; transform: translateY(10px); }
      100% { opacity: 1; transform: translateY(0); }
  }
  
  .prediction-ready-indicator {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 20px;
      padding: 10px 20px;
      background: rgba(221, 205, 172, 0.1);
      border: 1px solid rgba(221, 205, 172, 0.3);
      border-radius: 8px;
      backdrop-filter: blur(10px);
  }
  
  .prediction-ready-indicator .ready-icon {
      font-size: 18px;
      margin-right: 10px;
      color: #4CAF50;
  }
  
  .prediction-ready-indicator .ready-text {
      font-size: 14px;
      font-weight: 600;
      color: #DDCDAC;
      text-transform: uppercase;
      letter-spacing: 1px;
  }

  /* Desktop premium overlay - ensure proper display */
  @media (min-width: 769px) {
      .prediction-access-overlay {
          right: 18px !important;
          left: auto !important;
          min-width: 400px !important;
          max-width: 400px !important;
          padding: 30px !important;
          border-radius: 0px !important;
          background: unset !important;
          backdrop-filter: blur(10px) !important;
          -webkit-backdrop-filter: blur(10px) !important;
          height: 442px;
      }
      
      .prediction-access-overlay .prediction-overlay-content {
          display: block !important;
          background: transparent !important;
          border-radius: 0 !important;
          padding: 0 !important;
          justify-self: auto !important;
      }
      
      /* Ensure loaded state is visible on desktop */
      .premium-loaded-state.ready {
          display: block !important;
          opacity: 1 !important;
      }
      
      /* Ensure loading state is hidden when loaded state is ready */
      .premium-loading-state.hidden {
          display: none !important;
      }
  }

  /* Mobile adjustments for premium overlay */
  @media (max-width: 768px) {
      /* Hide overlay on mobile when in historical view */
      .ag-charts-container[data-chart-view="historical"] .prediction-access-overlay {
          display: none !important;
      }
      
      /* Show overlay on mobile when in prediction view */
      .ag-charts-container[data-chart-view="prediction"] .prediction-access-overlay {
          display: block !important;
      }
      
      /* Fallback: Hide overlay by default on mobile (unless prediction view) */
      .ag-charts-container:not([data-chart-view="prediction"]) .prediction-access-overlay {
          display: none !important;
      }
      
      .prediction-access-overlay {
                right: 0;
        left: 10px;
        transform: translateY(-50%);
        backdrop-filter: blur(15px);
        -webkit-backdrop-filter: blur(15px);
        background: rgba(0, 0, 0, 0.7);
        min-width: auto;
        max-width: none;
        padding: 20px 15px;
        border-radius: 0;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
      }
      
      /* Enhanced blur effect for mobile premium overlay content */
      .prediction-access-overlay .prediction-overlay-content {
         display: flex;
         justify-self: center;
         border-radius: 0px;
         padding: 15px;
      }
      
      /* Ensure loaded state is visible on mobile */
      .premium-loaded-state.ready {
          display: block !important;
          opacity: 1 !important;
      }
      
      /* Ensure loading state is hidden when loaded state is ready */
      .premium-loading-state.hidden {
          display: none !important;
      }
      
      .prediction-overlay-icon {
          font-size: 48px;
          margin-bottom: 15px;
      }
      
      .prediction-overlay-content h3 {
          font-size: 20px;
          margin-bottom: 12px;
      }
      
      .prediction-overlay-content p {
          font-size: 14px;
          margin-bottom: 20px;
      }
      
      .prediction-signup-btn {
          padding: 12px 24px;
          font-size: 14px;
      }
  }
  
  