.rf-tool{max-width:1080px;margin:0 auto}.rf-badge{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:var(--radius, 8px);font-size:.875rem;color:#3730a3;margin-bottom:20px}.rf-badge-icon{font-size:1.1rem;flex-shrink:0}.rf-badge strong{color:#1e1b4b}.rf-main{display:grid;grid-template-columns:1fr 460px;gap:24px;align-items:start}.rf-viz-section{display:flex;flex-direction:column;gap:16px}.rf-cart-block{display:flex;flex-direction:column;gap:6px;align-items:center}#rf-cart{width:100%;max-width:320px;height:auto;border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 8px);display:block}.rf-cart-info{display:flex;gap:16px;font-size:.8rem;color:var(--text-secondary, #6b7280)}.rf-cart-info strong{color:var(--text, #1f2937)}.rf-section-title{font-size:.9rem;font-weight:600;color:var(--text, #1f2937);margin-bottom:4px}.rf-section-desc{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-bottom:8px}.rf-section-desc strong{color:var(--text, #1f2937)}.rf-prob-section{padding:12px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius, 8px);border:1px solid var(--border, #e5e7eb)}.rf-prob-bars{display:flex;flex-direction:column;gap:8px}.rf-prob-bar{display:flex;align-items:center;gap:8px}.rf-prob-label{font-size:.78rem;font-weight:600;color:var(--text, #1f2937);min-width:80px}.rf-prob-track{flex:1;height:22px;background:#e5e7eb;border-radius:11px;overflow:hidden;position:relative}.rf-prob-fill{height:100%;transition:width .2s ease;border-radius:11px}.rf-prob-left{background:linear-gradient(90deg,#ef4444,#f87171)}.rf-prob-right{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.rf-prob-value{font-size:.78rem;font-weight:700;font-family:monospace;min-width:36px;text-align:right;color:var(--text, #1f2937)}.rf-heatmap-section{padding:12px;background:var(--bg-secondary, #f9fafb);border-radius:var(--radius, 8px);border:1px solid var(--border, #e5e7eb)}#rf-heatmap{width:100%;max-width:320px;height:auto;border-radius:var(--radius, 6px);display:block}.rf-panel{display:flex;flex-direction:column;gap:12px}.rf-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.rf-status{font-size:.9rem;font-weight:600;padding:4px 12px;border-radius:999px}.rf-status.running{background:#d1fae5;color:#065f46}.rf-status.training{background:#fef3c7;color:#92400e}.rf-status.paused{background:#f3f4f6;color:#6b7280}.rf-status.loading{background:#fef3c7;color:#92400e}.rf-phase-info{font-size:.78rem;color:#6b7280}.rf-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.rf-stat-card{padding:8px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 8px);text-align:center}.rf-stat-label{font-size:.65rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.rf-stat-value{font-size:1.2rem;font-weight:700;color:var(--primary, #4f46e5);margin-top:2px}.rf-controls{display:flex;gap:8px;flex-wrap:wrap}.rf-play-btn{font-weight:600;padding:10px 24px}.rf-play-btn.active{background:#ef4444;border-color:#ef4444}.rf-play-btn:disabled{opacity:.6;cursor:not-allowed}.rf-slider-row{display:flex;flex-direction:column;gap:4px}.rf-slider-label{font-size:.85rem;color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px}.rf-slider-label span{font-weight:600;color:var(--text, #1f2937)}.rf-slider{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:#e5e7eb;border-radius:3px;outline:none;margin-top:4px}.rf-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--primary, #4f46e5);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 3px #0003}.rf-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--primary, #4f46e5);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 3px #0003}.rf-advanced{border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 8px);padding:0}.rf-advanced summary{padding:10px 14px;font-size:.9rem;font-weight:600;cursor:pointer;user-select:none;color:var(--text, #1f2937)}.rf-advanced[open] summary{border-bottom:1px solid var(--border, #e5e7eb)}.rf-hp{padding:12px 14px;display:flex;flex-direction:column;gap:12px}.rf-checkbox-row{display:flex;align-items:center}.rf-checkbox-label{font-size:.85rem;color:var(--text, #1f2937);display:flex;align-items:center;gap:6px;cursor:pointer}.rf-checkbox-label input{width:16px;height:16px;cursor:pointer}.rf-chart-section{border-top:1px solid var(--border, #e5e7eb);padding-top:12px}.rf-chart-title{font-size:.9rem;font-weight:600;color:var(--text, #1f2937);margin-bottom:4px}.rf-chart-desc{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-bottom:6px}.rf-chart-section canvas{width:100%;max-width:100%;height:auto;border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 8px);display:block}.rf-explainer{margin-top:48px}.rf-explainer h2{font-size:1.6rem;margin-bottom:20px;text-align:center}.rf-explainer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.rf-explainer-card{padding:20px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius-lg, 12px)}.rf-explainer-card h3{font-size:1rem;font-weight:700;color:var(--primary, #4f46e5);margin-bottom:8px}.rf-explainer-card p{font-size:.9rem;line-height:1.6;color:var(--text-secondary, #6b7280);margin:0}.rf-explainer-card strong{color:var(--text, #1f2937)}.rf-explainer-card code{font-family:Courier New,monospace;font-size:.75rem;background:#eef2ff;color:#3730a3;padding:2px 5px;border-radius:4px;word-break:break-all}.faq-section{max-width:800px;margin:48px auto 0}.faq-section h2{font-size:1.75rem;margin-bottom:28px}.faq-item{margin-bottom:16px;padding:16px 20px;background:var(--bg-secondary, #f8f9fa);border-radius:var(--radius, 8px);border-left:3px solid var(--primary, #4f46e5)}.faq-item h3{font-size:1.05rem;font-weight:600;margin-bottom:8px;color:var(--text, #1f2937)}.faq-item p{color:var(--text-secondary, #6b7280);line-height:1.7;margin:0;font-size:.95rem}.faq-item strong{color:var(--text, #1f2937)}.faq-item code{font-family:Courier New,monospace;font-size:.8rem;background:#eef2ff;color:#3730a3;padding:2px 5px;border-radius:4px}@media (max-width: 1000px){.rf-main{grid-template-columns:1fr}}@media (max-width: 640px){.rf-explainer-grid{grid-template-columns:1fr}.rf-stats-grid{grid-template-columns:repeat(2,1fr)}.rf-controls{flex-direction:column}.rf-controls button{width:100%}}
