/* Remove default table styling */
.iccu-rate-table tr,
.iccu-rate-table td,
.iccu-rate-table th {
    border: none;
}

.iccu-rate-table-wrap,
.iccu-rate-value-wrap {
    max-width: 720px;
    margin: 0 auto;
}

.iccu-rate-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

/* Group header row */
.iccu-rate-table-group-header td {
    font-weight: 700;
    font-size: 1.05em;
    background: #f5f5f5;
    padding: 10px 8px 8px;
    border-bottom: 2px solid #ddd;
}

/* Single value block */
.iccu-rate-value-title {
    margin: 0 0 4px;
    font-size: 0.9em;
}

.iccu-rate-value {
    font-size: 1.25em;
    font-weight: 600;
}

/* Test mode output */
.iccu-rate-test-output {
    max-width: 720px;
    margin: 0 auto;
    padding: 16px;
    background: #f7f7f7;
    border: 1px dashed #999;
    border-radius: 4px;
    font-family: monospace;
    font-size: 13px;
}

.iccu-rate-test-label {
    margin: 0 0 12px;
    font-weight: 700;
    font-size: 14px;
    color: #d63638;
}

.iccu-rate-test-table {
    width: 100%;
    border-collapse: collapse;
}

.iccu-rate-test-table th,
.iccu-rate-test-table td {
    text-align: left;
    padding: 4px 8px;
    border-bottom: 1px solid #ddd;
    vertical-align: top;
}

.iccu-rate-test-table th {
    font-weight: 600;
    width: 35%;
}

.iccu-rate-test-table pre {
    margin: 0;
    white-space: pre-wrap;
    word-break: break-word;
}

.iccu-rate-test-region {
    margin: 12px 0 0;
    color: #555;
}