/* =========================
   ゲーミング PC カード – 最適化版
   ========================= */

/* ゲーミングPCカード用変数 - 詳細度を0に保つため :where() 使用 */
:where(.gaming-pc-card-container) {
  /* ---------- CSS変数（共通値）---------- */
  --color-text-primary: #212529;
  --color-text-secondary: #5f6368;
  --color-text-tertiary: #666;
  --color-text-inverted: #fff;

  /* z-index変数 - 統一された値 */
  --z-tooltip: 10;
  --z-slider-controls: 5;
  
  /* ブランドカラー */
  --color-brand-primary: #1a73e8;
  --color-brand-secondary: #ff7700;
  
  /* アクセントカラー */
  --color-accent-green: #34a853;
  --color-accent-red: #e53e3e;
  
  /* バッジカラー */
  --color-performance: #e8f0fe;
  --color-performance-text: #1a73e8;
  --color-capacity: #e6f4ea;
  --color-capacity-text: #34a853;
  
  /* ランクカラー */
  --color-rank-1: #f9d423;
  --color-rank-2: #bdc3c7;
  --color-rank-3: #e79e4f;
  --color-rank-other: #3498db;
  
  /* ボタンカラー */
  --color-buy-button: #22c55e;
  --color-buy-button-hover: #16a34a;
  --color-cart-button: #FF9800;
  --color-cart-button-hover: #D97706;
  
  /* 背景カラー */
  --color-bg-primary: #fff;
  --color-bg-secondary: #fafafa;
  --color-bg-tertiary: #f9f9f9;
  --color-bg-accent: #ffffea;
  
  /* ボーダーカラー */
  --color-border-light: #f0f0f0;
  --color-border-medium: #eee;
  --color-border-pros: #d7efdc;
  --color-border-cons: #facaca;
  
  /* シャドウ */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 2px 6px rgba(0, 0, 0, 0.05);
  --shadow-lg: 0 3px 6px rgba(0, 0, 0, 0.3);
  
  /* サイズ・スペース */
  --spacing-xs: 0.3rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 0.8rem;
  --spacing-lg: 1rem;
  
  /* フォント */
  --font-size-xs: 0.65rem;
  --font-size-sm: 0.75rem;
  --font-size-md: 0.85rem;
  --font-size-lg: 0.9rem;
  --font-size-xl: 1.2rem;
  
  /* ボーダーラディウス */
  --radius-sm: 2px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-full: 50%;
  
  /* トランジション */
  --transition-fast: 0.2s ease;
  --transition-medium: 0.3s ease;
}

/* ---------- ベース ---------- */
:where(.gaming-pc-card-container){font-family:sans-serif;color:var(--color-text-primary);margin:0 auto 1.5rem;max-width:100%}
:where(.gaming-pc-card){background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-lg);display:flex;flex-direction:column}

/* ---------- 見出し & ランク ---------- */
:where(.gaming-pc-card) .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) 0}
:where(.gaming-pc-card) .pc-model{font-size:var(--font-size-xl);font-weight:700;line-height:1.3;display:flex;align-items:center;flex-wrap:wrap;margin:0}
:where(.gaming-pc-card) .rank-label{display:inline-flex;align-items:center;justify-content:center;margin-right:0.6rem;padding:0.18rem var(--spacing-sm);border-radius:3px;font-size:var(--font-size-md);font-weight:700;letter-spacing:0.02em;box-shadow:var(--shadow-sm);color:var(--color-text-inverted)}
:where(.gaming-pc-card) .rank-1{background:var(--color-rank-1)}
:where(.gaming-pc-card) .rank-2{background:var(--color-rank-2)}
:where(.gaming-pc-card) .rank-3{background:var(--color-rank-3)}
:where(.gaming-pc-card) .rank-other{background:var(--color-rank-other)}

/* ---------- 情報アイコン ---------- */
:where(.gaming-pc-card) .info-icon{color:var(--color-text-secondary);margin-left:var(--spacing-xs);display:inline-flex;cursor:help;position:relative;align-items:center}
:where(.gaming-pc-card) .info-tooltip{position:absolute;bottom:150%;left:50%;transform:translateX(-50%);width:200px;padding:5px 8px;background:rgba(0,0,0,.8);color:var(--color-text-inverted);border-radius:4px;font-size:11px;text-align:center;pointer-events:none;white-space:normal;opacity:0;visibility:hidden;height:0;overflow:hidden;transition:var(--transition-fast);z-index:var(--z-tooltip)}
:where(.gaming-pc-card) .info-icon:hover .info-tooltip,:where(.gaming-pc-card) .info-icon:focus .info-tooltip{opacity:1;visibility:visible;height:auto;overflow:visible}
:where(.gaming-pc-card) .price-info-icon .info-tooltip{left:0;transform:none}
:where(.gaming-pc-card) .discount-info-icon .info-tooltip{width:220px;font-size:10px;bottom:130%;z-index:var(--z-tooltip)}
:where(.gaming-pc-card) .discount-info-icon:hover .info-tooltip,:where(.gaming-pc-card) .discount-info-icon:focus .info-tooltip{opacity:1;visibility:visible;height:auto;overflow:visible}

/* ---------- スコアブロック ---------- */
:where(.gaming-pc-card) .modern-layer{position:relative;padding:16px 0 10px}
:where(.gaming-pc-card) .ml-top-layer{position:absolute;top:0;left:0;background:var(--color-brand-secondary);padding:2px 15px;border-radius:3px 3px 0 0}
:where(.gaming-pc-card) .ml-title{color:var(--color-text-inverted);font-size:12px}
:where(.gaming-pc-card) .ml-content{background:var(--color-bg-accent);border-radius:0 3px 3px 3px;padding:12px}
:where(.gaming-pc-card) .ml-header{display:flex;align-items:center;margin-bottom:10px}
:where(.gaming-pc-card) .ml-star{color:var(--color-brand-secondary);margin-right:5px;font-size:24px}
:where(.gaming-pc-card) .ml-score{font-weight:600;color:var(--color-brand-secondary);font-size:24px}
:where(.gaming-pc-card) .ml-items{display:flex;flex-wrap:wrap;gap:6px 12px}
:where(.gaming-pc-card) .ml-item{display:flex;align-items:center;background:var(--color-bg-primary);padding:4px 8px;border-radius:3px;font-size:10px;box-shadow:var(--shadow-sm)}
:where(.gaming-pc-card) .ml-item-name{color:#555}
:where(.gaming-pc-card) .ml-item-star{color:var(--color-brand-secondary);font-size:10px;margin:0 3px 0 8px}
:where(.gaming-pc-card) .ml-item-score{font-weight:600;color:var(--color-brand-secondary);font-size:10px}

/* ---------- 画像 & ボタン行 ---------- */
:where(.gaming-pc-card) .pc-image-button-container{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);align-items:flex-start;justify-content:space-between}
:where(.gaming-pc-card) .pc-image-container{position:relative;border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg-primary);width:49%;aspect-ratio:1/1.2;display:flex;justify-content:center;align-items:center}
:where(.gaming-pc-card) .pc-image{max-width:90%;max-height:90%;object-fit:contain;width:auto;height:auto}
:where(.gaming-pc-card) .pc-highlight-tag{background:#f0f7ff;color:var(--color-brand-primary);border:1px solid #d0e3ff;border-radius:var(--radius-md);padding:0.4rem var(--spacing-md);font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-md);text-align:center}

/* ---------- スライダー ---------- */
:where(.gaming-pc-card) .pc-slider{position:relative;width:100%;height:100%;border-radius:var(--radius-md);overflow:hidden}
:where(.gaming-pc-card) .slider-images{width:100%;height:100%}
:where(.gaming-pc-card) .slider-image{opacity:0;position:absolute;width:100%;height:100%;text-align:center;pointer-events:none;transition:opacity 0.3s ease}
:where(.gaming-pc-card) .slider-image.active{opacity:1;pointer-events:auto}
:where(.gaming-pc-card) .arrow-btn{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:var(--radius-full);background:rgba(0,0,0,.5);border:2px solid rgba(255,255,255,.8);color:var(--color-text-inverted);display:flex;justify-content:center;align-items:center;cursor:pointer;z-index:var(--z-slider-controls);box-shadow:0 2px 4px rgba(0,0,0,.2);transition:all var(--transition-fast);padding:0}
:where(.gaming-pc-card) .arrow-btn:hover,:where(.gaming-pc-card) .arrow-btn:focus{background:rgba(0,0,0,.7);border-color:var(--color-text-inverted);box-shadow:var(--shadow-lg);transform:translateY(-50%) scale(1.05)}
:where(.gaming-pc-card) .prev-arrow{left:10px}
:where(.gaming-pc-card) .next-arrow{right:10px}
:where(.gaming-pc-card) .slider-dots{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:var(--z-slider-controls);padding:4px 10px;border-radius:12px;background:rgba(0,0,0,.3)}
:where(.gaming-pc-card) .dot{width:10px;height:10px;border-radius:var(--radius-full);background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.8);cursor:pointer;transition:all var(--transition-fast)}
:where(.gaming-pc-card) .dot.active{background:var(--color-text-inverted);transform:scale(1.2);box-shadow:0 0 5px rgba(255,255,255,.8)}
:where(.gaming-pc-card) .dot:hover,:where(.gaming-pc-card) .dot:focus{background:rgba(255,255,255,.7)}

/* ---------- 右コンテンツ ---------- */
:where(.gaming-pc-card) .right-content-container{width:49%;display:flex;flex-direction:column;gap:var(--spacing-md)}

/* ---------- ボタン ---------- */
:where(.gaming-pc-card) .button-container{width:100%;cursor:pointer;}
:where(.gaming-pc-card) .buy-button{background:var(--color-buy-button);color:var(--color-text-inverted);border:none;padding:0.7rem var(--spacing-sm);border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-lg);text-align:center;text-decoration:none;width:100%;display:block}
:where(.gaming-pc-card) .buy-button:hover{background:var(--color-buy-button-hover);color:var(--color-text-inverted);text-decoration:none;}
:where(.gaming-pc-card) .cart-button{background:var(--color-cart-button);color:var(--color-text-inverted);border:none;padding:0.7rem var(--spacing-sm);border-radius:var(--radius-md);font-weight:600;font-size:var(--font-size-lg);text-align:center;text-decoration:none;width:100%;display:block}
:where(.gaming-pc-card) .cart-button:hover{background:var(--color-cart-button-hover);color:var(--color-text-inverted);text-decoration:none}

/* ---------- 価格表示 ---------- */
:where(.gaming-pc-card) .pc-price-container{display:flex;align-items:baseline;width:100%;justify-content:flex-end}
:where(.gaming-pc-card) .price-label{color:var(--color-text-secondary);font-size:var(--font-size-md);margin-right:var(--spacing-xs)}
:where(.gaming-pc-card) .price-value{font-size:1.3rem;font-weight:700;color:var(--color-text-primary)}
:where(.gaming-pc-card) .price-highlight{color:var(--color-accent-red)}
:where(.gaming-pc-card) .price-unit{font-size:var(--font-size-lg);font-weight:600;margin-left:0.1rem}
:where(.gaming-pc-card) .price-tax{color:#80868b;font-size:0.7rem;margin-left:var(--spacing-xs)}

/* ---------- スペックテーブル ---------- */
:where(.gaming-pc-card) .pc-specs-container{margin-bottom:var(--spacing-md);width:100%}
:where(.gaming-pc-card) .pc-specs-table{width:100%;background:var(--color-bg-secondary);border-radius:var(--radius-md);border-collapse:collapse;overflow:hidden}
:where(.gaming-pc-card) .spec-row{border-bottom:1px solid var(--color-border-light)}
:where(.gaming-pc-card) .spec-row:last-child{border-bottom:none}
:where(.gaming-pc-card) .spec-label{padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-md);width:30%;text-align:left;vertical-align:middle}
:where(.gaming-pc-card) .capacity-badge{display:inline-block;font-size:0.6rem;background:var(--color-capacity);color:var(--color-capacity-text);padding:0.1rem var(--spacing-xs);border-radius:var(--radius-sm);font-weight:600;vertical-align:middle;margin-right:var(--spacing-xs)}
:where(.gaming-pc-card) .performance-badge{display:inline-block;font-size:0.6rem;background:var(--color-performance);color:var(--color-performance-text);padding:0.1rem var(--spacing-xs);border-radius:var(--radius-sm);font-weight:600;vertical-align:middle;margin-right:var(--spacing-xs)}
:where(.gaming-pc-card) .spec-value{padding:var(--spacing-sm) var(--spacing-md);font-weight:600;color:var(--color-text-primary);font-size:var(--font-size-md);text-align:right;vertical-align:middle}
:where(.gaming-pc-card) .highlight-spec{color:var(--color-accent-green)}

/* ---------- 価格推移ブロック ---------- */
:where(.gaming-pc-card) .price-timeline-container{margin-bottom:var(--spacing-lg);background:var(--color-bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);border:1px solid var(--color-border-light)}
:where(.gaming-pc-card) .timeline-header{margin-bottom:0.6rem}
:where(.gaming-pc-card) .timeline-title{font-size:var(--font-size-lg);font-weight:600;color:#333;margin:0}
:where(.gaming-pc-card) .timeline-summary{display:flex;justify-content:space-between;font-size:12px;color:var(--color-text-tertiary);margin-bottom:var(--spacing-md);padding:0;background:transparent}
:where(.gaming-pc-card) .summary-item{text-align:center;padding:0.5rem;border-radius:var(--radius-md);background:var(--color-bg-secondary);flex:1;margin:0 5px;position:relative;overflow:visible;z-index:1;display:flex;flex-direction:column;height:62px;justify-content:space-between;border-bottom-width:2px;border-bottom-style:solid;border-bottom-color:transparent}
:where(.gaming-pc-card) .summary-item.current{border-bottom-color:var(--color-brand-primary)}
:where(.gaming-pc-card) .summary-item.high{border-bottom-color:var(--color-accent-red)}
:where(.gaming-pc-card) .summary-item.low{border-bottom-color:var(--color-accent-green)}
:where(.gaming-pc-card) .summary-item.discount{border-bottom-color:#805ad5}
:where(.gaming-pc-card) .summary-item:first-child{margin-left:0}
:where(.gaming-pc-card) .summary-item:last-child{margin-right:0}
:where(.gaming-pc-card) .summary-label{font-size:var(--font-size-xs);margin-bottom:0.3rem;font-weight:500;color:var(--color-text-tertiary);display:flex;justify-content:center;align-items:center;min-height:20px}
:where(.gaming-pc-card) .summary-value,:where(.gaming-pc-card) .discount-value{font-weight:700;font-size:var(--font-size-md);display:flex;justify-content:center;align-items:center;flex-grow:1}
:where(.gaming-pc-card) .high-price-number{color:var(--color-accent-red)}
:where(.gaming-pc-card) .low-price-number{color:var(--color-accent-green)}
:where(.gaming-pc-card) .discount-info-icon{margin-left:var(--spacing-xs);display:inline-flex;align-items:center;font-size:1em}
:where(.gaming-pc-card) .discount-info-icon svg{width:10px;height:10px}
:where(.gaming-pc-card) .timeline-chart-container{position:relative;height:220px;margin-top:1rem;padding-top:10px;overflow:visible;z-index:1}
:where(.gaming-pc-card) .y-axis-labels{position:absolute;left:0;top:0;bottom:30px;width:60px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding-right:10px;color:#666;font-size:var(--font-size-xs)}
:where(.gaming-pc-card) .chart-area{position:absolute;left:60px;right:0;top:0;bottom:30px;overflow:visible}
:where(.gaming-pc-card) .horizontal-lines{position:absolute;left:0;right:0;top:0;bottom:0;z-index:1}
:where(.gaming-pc-card) .h-line{position:absolute;left:0;right:0;height:1px;background-color:#e2e8f0}
:where(.gaming-pc-card) .h-line:nth-child(1){top:0%}
:where(.gaming-pc-card) .h-line:nth-child(2){top:25%}
:where(.gaming-pc-card) .h-line:nth-child(3){top:50%}
:where(.gaming-pc-card) .h-line:nth-child(4){top:75%}
:where(.gaming-pc-card) .h-line:nth-child(5){bottom:0}
:where(.gaming-pc-card) .graph-container{position:relative;width:100%;height:100%;z-index:2}
:where(.gaming-pc-card) .area-fill{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}
:where(.gaming-pc-card) .price-line{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3}
:where(.gaming-pc-card) .price-line svg{width:100%;height:100%;overflow:visible}
:where(.gaming-pc-card) .line-path{fill:none;stroke:#9F7AEA;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
:where(.gaming-pc-card) .data-point{position:absolute;width:12px;height:12px;background-color:white;border:2px solid #9F7AEA;border-radius:50%;transform:translate(-50%,-50%);cursor:pointer;z-index:4;transition:all 0.2s}
:where(.gaming-pc-card) .data-point:hover{transform:translate(-50%,-50%) scale(1.2);box-shadow:0 0 0 4px rgba(159,122,234,0.2)}
:where(.gaming-pc-card) .x-axis-labels{position:absolute;left:60px;right:0;bottom:0;height:30px;display:flex;justify-content:space-between;align-items:center;padding:0 15px 0 15px}
:where(.gaming-pc-card) .x-label{font-size:var(--font-size-xs);color:#666;transform:translateX(-50%)}
:where(.gaming-pc-card) .price-tooltip::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border-width:5px;border-style:solid;border-color:rgba(0,0,0,0.8) transparent transparent transparent}
:where(.gaming-pc-card) .price-tooltip{position:absolute;background:rgba(0,0,0,.8);color:white;padding:8px 12px;border-radius:4px;font-size:var(--font-size-xs);pointer-events:none;z-index:var(--z-tooltip);opacity:0;visibility:hidden;height:0;overflow:hidden;transition:var(--transition-fast);white-space:nowrap;bottom:12px;left:50%;transform:translateX(-50%)}
:where(.gaming-pc-card) .data-point:hover .price-tooltip{opacity:1;visibility:visible;height:auto;overflow:visible}

/* ---------- Pros / Cons ---------- */
:where(.gaming-pc-card) .pros-cons-container{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}
:where(.gaming-pc-card) .pros-box,:where(.gaming-pc-card) .cons-box{width:50%;border-radius:var(--radius-md);overflow:hidden}
:where(.gaming-pc-card) .pros-box{border:1px solid var(--color-border-pros)}
:where(.gaming-pc-card) .cons-box{border:1px solid var(--color-border-cons)}
:where(.gaming-pc-card) .box-header{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md)}
:where(.gaming-pc-card) .pros-box .box-header{background:#e6f4ea;border-bottom:1px solid var(--color-border-pros)}
:where(.gaming-pc-card) .cons-box .box-header{background:#ffebeb;border-bottom:1px solid var(--color-border-cons)}
:where(.gaming-pc-card) .box-title{margin:0;font-size:var(--font-size-lg);font-weight:600;margin-left:0.4rem}
:where(.gaming-pc-card) .pros-box .box-title{color:#2e7d32}
:where(.gaming-pc-card) .cons-box .box-title{color:#d32f2f}
:where(.gaming-pc-card) .feature-list{list-style:none;padding:var(--spacing-md);margin:0;background-color:var(--color-bg-primary)}
:where(.gaming-pc-card) .feature-list li{position:relative;padding-left:var(--spacing-lg);margin-bottom:var(--spacing-sm);font-size:var(--font-size-md);line-height:1.4}
:where(.gaming-pc-card) .feature-list li:last-child{margin-bottom:0}
:where(.gaming-pc-card) .feature-list li::before{content:"•";position:absolute;left:0}
:where(.gaming-pc-card) .pros-box .feature-list li::before{color:#2e7d32}
:where(.gaming-pc-card) .cons-box .feature-list li::before{color:#d32f2f}

/* ---------- 紹介文 ---------- */
:where(.gaming-pc-card) .pc-description{margin:var(--spacing-lg) 0;font-size:15px;line-height:1.6;color:#333}
:where(.gaming-pc-card) .pc-description p{margin-bottom:12px;padding-bottom:8px}
:where(.gaming-pc-card) .pc-description p:last-child{margin-bottom:0;padding-bottom:0}

/* ---------- ゲームジャンル情報 ---------- */
:where(.gaming-pc-card) .usage-meter{margin-bottom:1.2rem;width:100%;padding:var(--spacing-md);border:1px solid #e8eaed;border-radius:var(--radius-md);background-color:#fbfbfc}
:where(.gaming-pc-card) .usage-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin-bottom:0.6rem}
:where(.gaming-pc-card) .usage-categories{display:flex;flex-direction:column;gap:var(--spacing-sm)}
:where(.gaming-pc-card) .category{display:flex;align-items:center}
:where(.gaming-pc-card) .category-name{font-size:var(--font-size-sm);color:var(--color-text-secondary);width:25%}
:where(.gaming-pc-card) .meter-container{flex:1;height:8px;background:#e8eaed;border-radius:10px;overflow:hidden}
:where(.gaming-pc-card) .meter-fill{height:100%;background-color:var(--color-brand-primary);border-radius:10px}

/* ---------- 追加スペック（トグル） ---------- */
:where(.gaming-pc-card) .additional-specs{margin-top:var(--spacing-lg);margin-bottom:1.2rem;border-top:1px solid var(--color-border-medium);padding-top:var(--spacing-lg);position:relative}
:where(.gaming-pc-card) .additional-specs-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}
:where(.gaming-pc-card) .additional-specs-table tr{border-bottom:1px solid var(--color-border-light)}
:where(.gaming-pc-card) .additional-specs-table tr:last-child{border-bottom:none}
:where(.gaming-pc-card) .additional-specs-table td{padding:var(--spacing-sm)}
:where(.gaming-pc-card) .hidden-row{display:none}
:where(.gaming-pc-card) .hidden-element{display:none}
:where(.gaming-pc-card) .toggle-specs{color:#666;background:none;border:none;font-size:var(--font-size-md);font-weight:500;padding:0.4rem var(--spacing-lg);margin:var(--spacing-md) auto 0;display:block;cursor:pointer;position:relative}
:where(.gaming-pc-card) .toggle-specs::after{content:'';display:block;width:100%;height:1px;background:#ccc;position:absolute;left:0;bottom:-3px;transform:scaleX(.3);transition:transform var(--transition-fast)}
:where(.gaming-pc-card) .toggle-specs:hover::after,:where(.gaming-pc-card) .toggle-specs:focus::after,:where(.gaming-pc-card) .toggle-specs.active::after{transform:scaleX(.5)}

/* ---------- 出典表示 ---------- */
:where(.gaming-pc-card) .image-source{position:absolute;bottom:35px;right:8px;font-size:var(--font-size-xs);z-index:var(--z-tooltip)}
:where(.gaming-pc-card) .source-link{color:#a0a0a0;text-decoration:none}
:where(.gaming-pc-card) .source-link:hover{text-decoration:underline}

/* ---------- レスポンシブ対応 - 統合版 ---------- */
@media(max-width:768px){
  :where(.gaming-pc-card) .pc-image-container{width:100%;aspect-ratio:1/1;max-width:280px;margin:0 auto}
  :where(.gaming-pc-card) .pc-image-button-container{flex-direction:column}
  :where(.gaming-pc-card) .right-content-container{width:100%;margin-top:var(--spacing-lg)}
  :where(.gaming-pc-card) .pros-cons-container{flex-direction:column}
  :where(.gaming-pc-card) .pros-box,:where(.gaming-pc-card) .cons-box{width:100%;margin-bottom:var(--spacing-sm)}
  
  /* 価格推移グラフのレスポンシブ */
  :where(.gaming-pc-card) .timeline-chart-container{height:200px}
  :where(.gaming-pc-card) .timeline-summary{flex-wrap:wrap}
  :where(.gaming-pc-card) .summary-item{width:48%;margin-bottom:5px;flex:0 0 calc(50% - 5px)}
  :where(.gaming-pc-card) .summary-item:nth-child(2n){margin-right:0}
  :where(.gaming-pc-card) .summary-item:nth-child(2n-1){margin-left:0}
  :where(.gaming-pc-card) .y-axis-labels{width:50px;font-size:9px}
  :where(.gaming-pc-card) .chart-area{left:50px}
  :where(.gaming-pc-card) .x-axis-labels{left:50px;padding:0 10px 0 10px}
  :where(.gaming-pc-card) .info-tooltip{width:180px;font-size:10px}
  :where(.gaming-pc-card) .usage-meter{padding:0.6rem}
  :where(.gaming-pc-card) .meter-container{height:6px}
  :where(.gaming-pc-card) .ml-items{gap:4px 8px}
  :where(.gaming-pc-card) .ml-item{padding:3px 6px}
  :where(.gaming-pc-card) .arrow-btn{width:32px;height:32px}
  :where(.gaming-pc-card) .arrow-btn svg{width:20px;height:20px}
  :where(.gaming-pc-card) .slider-dots{bottom:12px;padding:3px 8px}
  :where(.gaming-pc-card) .dot{width:8px;height:8px}
  :where(.gaming-pc-card) .image-source{bottom:32px}
  :where(.gaming-pc-card) .summary-item{height:55px}
  :where(.gaming-pc-card) .summary-label{min-height:18px}
}

@media(max-width:480px){
  :where(.gaming-pc-card) .discount-info-icon svg{width:8px;height:8px}
  :where(.gaming-pc-card) .discount-info-icon .info-tooltip{width:180px;font-size:8px}
  :where(.gaming-pc-card) .card-header{flex-direction:column}
  :where(.gaming-pc-card) .buy-button,:where(.gaming-pc-card) .cart-button{width:90%;padding:0.6rem var(--spacing-lg);margin:0 auto}
  :where(.gaming-pc-card) .spec-label,:where(.gaming-pc-card) .spec-value{padding:0.4rem 0.6rem}
  :where(.gaming-pc-card) .additional-specs-table td{padding:0.3rem 0.2rem;font-size:0.75rem}
  :where(.gaming-pc-card) .rank-label{margin-bottom:var(--spacing-xs)}
  :where(.gaming-pc-card) .pc-model{flex-direction:column;align-items:flex-start}
  :where(.gaming-pc-card) .timeline-chart-container{height:180px}
  :where(.gaming-pc-card) .y-axis-labels{width:45px;font-size:8px}
  :where(.gaming-pc-card) .chart-area{left:45px}
  :where(.gaming-pc-card) .x-axis-labels{left:45px;font-size:8px}
  :where(.gaming-pc-card) .data-point{width:10px;height:10px}
  
  :where(.gaming-pc-card) .info-tooltip{width:150px;font-size:9px}
  :where(.gaming-pc-card) .ml-header{flex-wrap:wrap}
  :where(.gaming-pc-card) .ml-items{gap:3px 6px}
  :where(.gaming-pc-card) .ml-item,:where(.gaming-pc-card) .ml-item-name,:where(.gaming-pc-card) .ml-item-star,:where(.gaming-pc-card) .ml-item-score{font-size:9px;padding:3px 5px}
  :where(.gaming-pc-card) .arrow-btn{width:28px;height:28px}
  :where(.gaming-pc-card) .arrow-btn svg{width:16px;height:16px}
  :where(.gaming-pc-card) .slider-dots{bottom:10px;padding:2px 6px}
  :where(.gaming-pc-card) .dot{width:6px;height:6px}
  :where(.gaming-pc-card) .image-source{bottom:28px;font-size:8px}
  :where(.gaming-pc-card) .summary-item{height:50px}
  :where(.gaming-pc-card) .summary-label{min-height:16px}
}

:where(.gaming-pc-card) .mobile-only-buttons{display:none;margin-top:25px}@media(max-width:768px){:where(.gaming-pc-card) .mobile-only-buttons{display:flex;flex-direction:column;gap:var(--spacing-md)}}

/* ツールチップ表示制御用クラス */
:where(.gaming-pc-card) .tooltip-hidden { visibility: hidden !important; }
:where(.gaming-pc-card) .tooltip-visible { visibility: visible !important; }

/* 価格情報エリア */
:where(.gaming-pc-card) .hidden-price {
  margin: 16px 0;
  padding: 10px 8px;
  border-top: 1px dashed #eee;
  border-bottom: 1px dashed #eee;
  color: #999;
  font-size: 0.8rem;
  text-align: center;
  font-weight: normal;
  line-height: 1.5;
  background: #fcfcfc;
}

/* テーブルの下部マージン調整 */
:where(.gaming-pc-card) .pc-specs-table,
:where(.gaming-pc-card) .additional-specs-table {
  margin-bottom: 16px;
}

@media (max-width: 600px) {
  :where(.gaming-pc-card) .hidden-price {
    flex-direction: column;
    text-align: left;
    gap: 4px;
  }
}