/* --- KOINTOOL OPPORTUNITY FINDER CORE UI --- */
.rs-of-wrapper { 
    max-width: 850px; 
    margin: 25px auto; 
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; 
}

.rs-of-card { 
    background: #fff; 
    border: 1px solid #d1d5db; 
    border-radius: 8px; 
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); 
    overflow: hidden; 
}

/* --- HEADER --- */
.rs-of-header { 
    background: #f4fff6; 
    padding: 15px 25px; 
    border-bottom: 1px solid #e5e7eb; 
}
.rs-of-header h3 { 
    margin: 0; 
    font-size: 16px; 
    font-weight: 700; 
    color: #1f2937; 
    display: flex; align-items: center; gap: 8px; 
}
/* Icon color adjustment */
.rs-of-header .dashicons { color: #61ce70; }

/* --- CONTROLS (Input & Button) --- */
.rs-of-controls { 
    padding: 25px; 
    display: flex; 
    gap: 10px; 
    background: #fff; 
    border-bottom: 1px solid #f3f4f6;
}
#rs-of-input { 
    flex-grow: 1; 
    padding: 12px 15px; 
    border: 2px solid #e5e7eb; 
    border-radius: 6px; 
    font-size: 15px; 
    transition: border-color 0.2s;
}
#rs-of-input:focus { border-color: #61ce70; outline: none; }

/* KoinTool Brand Button */
.rs-of-btn { 
    background: #61ce70; 
    color: #fff; 
    border: none; 
    padding: 0 24px; 
    border-radius: 6px; 
    font-weight: 600; 
    cursor: pointer; 
    transition: background 0.2s;
}
.rs-of-btn:hover { background: #4caf50; }

/* --- RESULTS AREA (The "On-Screen" Report) --- */
.rs-of-status { padding: 20px; color: #6b7280; font-style: italic; background: #f9fafb; text-align: center; }

.rs-of-results { 
    padding: 40px; 
    line-height: 1.7; 
    color: #374151; 
    font-size: 15px; 
    background: #fff;
}
/* Typography for the Report */
.rs-of-results h3 { 
    font-size: 18px; 
    color: #111827; 
    margin: 30px 0 15px 0; 
    border-bottom: 2px solid #61ce70; 
    padding-bottom: 8px; 
}
.rs-of-results ul { margin: 15px 0 15px 20px; list-style-type: disc; }
.rs-of-results li { margin-bottom: 8px; }
.rs-of-results strong { color: #000; font-weight: 700; }

/* --- ACTION BAR (Agency Inputs) --- */
.rs-of-actions { 
    padding: 20px 25px; 
    background: #f9fafb; 
    border-top: 1px solid #e5e7eb; 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    gap: 15px; 
}
.rs-client-input { 
    padding: 10px; 
    border: 1px solid #d1d5db; 
    border-radius: 5px; 
    width: 220px; 
    font-size: 14px; 
}
.rs-of-btn.outline { 
    background: #fff; 
    border: 1px solid #61ce70; 
    color: #61ce70; 
    padding: 10px 20px;
}
.rs-of-btn.outline:hover { 
    background: #f4fff6; 
    border-color: #4caf50; 
}

/* Loading Spinner */
.loading-spin { animation: spin 2s infinite linear; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }