    :root {
      --bg: #f8f9fb;
      --card: #ffffff;
      --border: #e5e7eb;
      --text: #111827;
      --muted: #6b7280;
      --primary: #2563eb;
      --success: #16a34a;
      --warning: #f59e0b;
      --danger: #dc2626;
    }

    * {
      box-sizing: border-box;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    }

    body {
      margin: 0;
      background: linear-gradient(180deg, #f5f7fb 0%, #eef2ff 100%);
      color: var(--text);
    }


    header {
      height: 64px;
      background: rgba(255,255,255,0.9);
      backdrop-filter: blur(8px);
      border-bottom: 1px solid var(--border);
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0 24px;
      position: sticky;
      top: 0;
      z-index: 20;
    }
    
    header h1 {
      font-size: 18px;
      font-weight: 700;
      letter-spacing: -0.02em;
    }


    header h1 {
      font-size: 16px;
      margin: 0;
    }

    .badge {
      background: var(--primary);
      color: #fff;
      font-size: 12px;
      padding: 2px 6px;
      border-radius: 4px;
      margin-left: 6px;
    }

    header button {
      background: var(--primary);
      color: white;
      border: none;
      padding: 8px 16px;
      border-radius: 999px;
      font-weight: 600;
      cursor: pointer;
    }


    main {
      max-width: 900px;
      margin: 24px auto;
      padding: 0 16px;
    }

    .card {
      background: rgba(255,255,255,0.85);
      backdrop-filter: blur(6px);
      border: 1px solid rgba(255,255,255,0.6);
      border-radius: 14px;
      padding: 18px 20px;
      margin-bottom: 18px;
      box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    }


    h2 {
      font-size: 15px;
      margin: 0 0 12px;
    }

    label {
      font-size: 13px;
      color: var(--muted);
      display: block;
      margin-bottom: 4px;
    }

    input, select {
      width: 100%;
      padding: 8px;
      border-radius: 6px;
      border: 1px solid var(--border);
      margin-bottom: 12px;
    }

    .grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 12px;
    }

    /* ===== Pro Lock ===== */
    .pro-lock {
      position: relative;
      border-radius: 8px;
      overflow: hidden;
    }

    .pro-content {
      opacity: 0.4;
      pointer-events: none;
    }

    .pro-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(
        180deg,
        rgba(255,255,255,0.8),
        rgba(255,255,255,0.95)
      );
      backdrop-filter: blur(6px);
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      gap: 10px;
    }


    .pro-overlay button {
      background: linear-gradient(135deg,#2563eb,#4f46e5);
      color: #fff;
      border: none;
      border-radius: 999px;
      padding: 10px 20px;
      font-weight: 600;
    }


    /* ===== Results ===== */
    .price {
      font-size: 42px;
      font-weight: 800;
      color: var(--success);
      letter-spacing: -0.03em;
    }


    .metrics {
      display: grid;
      grid-template-columns: repeat(3,1fr);
      gap: 12px;
      margin-top: 12px;
    }
    
    .metrics div {
      background: #f8fafc;
      padding: 12px;
      border-radius: 10px;
      border: 1px solid var(--border);
      text-align: center;
    }


    table {
      border-collapse: separate;
      border-spacing: 0 8px;
    }
    
    tr {
      background: white;
      border-radius: 10px;
      box-shadow: 0 4px 12px rgba(0,0,0,0.04);
    }
    
    td:first-child {
      font-weight: 600;
    }

    .actions {
      display: flex;
      gap: 12px;
    }

    .actions button {
      padding: 10px 16px;
      border-radius: 6px;
      border: 1px solid var(--border);
      background: #f9fafb;
      cursor: pointer;
    }
	.lowest-break-even {
	  background: #ecfdf5;
	}

	.lowest-break-even td:last-child {
	  font-weight: 600;
	  color: var(--success);
	}

	.badge-min {
	  background: #16a34a;
	  color: #fff;
	  font-size: 11px;
	  padding: 2px 6px;
	  border-radius: 4px;
	  margin-left: 6px;
	}
	
	/* ===== Lowest Risk Card ===== */

    .risk-card {
      display: inline-block;
      background: linear-gradient(135deg, #ecfdf5, #f0fdf4);
      border: 1px solid #86efac;
      border-radius: 12px;
      padding: 8px 12px;
      margin-left: 10px;
      box-shadow: 0 4px 12px rgba(22,163,74,0.15);
      animation: glow 2s infinite ease-in-out;
    }
    
    .risk-tag {
      font-size: 10px;
      font-weight: 700;
      color: white;
      background: #16a34a;
      display: inline-block;
      padding: 2px 8px;
      border-radius: 999px;
      margin-bottom: 4px;
    }
    
    .risk-title {
      font-size: 13px;
      font-weight: 700;
      color: #065f46;
    }
    
    .risk-sub {
      font-size: 11px;
      color: #047857;
    }
    
    @keyframes glow {
      0% { box-shadow: 0 0 0 rgba(22,163,74,0.3); }
      50% { box-shadow: 0 0 18px rgba(22,163,74,0.4); }
      100% { box-shadow: 0 0 0 rgba(22,163,74,0.3); }
    }
    
    /* ===== Most Profitable Card ===== */

    .profit-card {
      display: inline-block;
      background: linear-gradient(135deg, #fff7ed, #fffbeb);
      border: 1px solid #facc15;
      border-radius: 12px;
      padding: 8px 12px;
      margin-left: 10px;
      box-shadow: 0 4px 14px rgba(202,138,4,0.35);
      animation: goldGlow 2s infinite ease-in-out;
    }
    
    .profit-tag {
      font-size: 10px;
      font-weight: 700;
      color: #92400e;
      background: #fde68a;
      display: inline-block;
      padding: 2px 8px;
      border-radius: 999px;
      margin-bottom: 4px;
    }
    
    .profit-title {
      font-size: 13px;
      font-weight: 700;
      color: #92400e;
    }
    
    .profit-sub {
      font-size: 11px;
      color: #b45309;
    }
    
    @keyframes goldGlow {
      0% { box-shadow: 0 0 0 rgba(202,138,4,0.3); }
      50% { box-shadow: 0 0 18px rgba(202,138,4,0.5); }
      100% { box-shadow: 0 0 0 rgba(202,138,4,0.3); }
    }
    
    /* ===== Make Scenario Comparison wider ===== */

    .wide-scenarios {
      width: 100%;
      max-width: 1200px;
      margin-left: auto;
      margin-right: auto;
    }
    
    .wide-scenarios table {
      width: 100%;
    }
    
    .wide-scenarios td,
    .wide-scenarios th {
      padding: 14px 16px;
    }
    
    .wide-scenarios th {
      white-space: nowrap;
    }
    
    .wide-scenarios td:first-child {
      min-width: 260px; /* platform + 推荐卡空间 */
    }

    /* ===== FIX Pro Overlay blocking Scenario Table ===== */

    .card {
      position: relative;
    }
    
    .pro-content {
      position: relative;
      z-index: 1;
    }
    
    .pro-overlay {
      position: absolute;
      inset: 0;
      z-index: 10;
      background: rgba(255,255,255,0.92);
      backdrop-filter: blur(4px);
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      pointer-events: auto;
    }
    
    /* When unlocked, fully remove overlay */
    .card:not(.pro-lock) .pro-overlay {
      display: none;
    }
    
    /* Let wide scenario not break stacking */
    .wide-scenarios {
      position: relative;
      z-index: 1;
    }

    /* Remove ghost overlay after unlock */
    .card:not(.pro-lock).wide-scenarios {
      background: white !important;
      box-shadow: none !important;
      filter: none !important;
    }
    
    .card:not(.pro-lock) .pro-content {
      opacity: 1 !important;
      filter: none !important;
    }


