/* Fourier optics tool: only tool-specific additions; layout comes from the shared optics theme. */

.tool-optics-lab .fo-select,
.tool-optics-lab .fo-text {
    width: 100%;
    min-height: 38px;
    padding: 6px 10px;
    border: 1px solid var(--border-color, #dcd8eb);
    border-radius: 8px;
    background: var(--surface-color, #fff);
    color: var(--text-primary, #202437);
    font: inherit;
    font-size: 0.95rem;
}

.tool-optics-lab .fo-text {
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.tool-optics-lab .fo-select:focus-visible,
.tool-optics-lab .fo-text:focus-visible,
.tool-optics-lab .fo-radio input:focus-visible {
    outline: 3px solid var(--primary-color, #6855bd);
    outline-offset: 2px;
}

.tool-optics-lab .fo-radio-row {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.tool-optics-lab .fo-radio {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border: 1px solid var(--border-color, #dcd8eb);
    border-radius: 8px;
    cursor: pointer;
    color: var(--text-primary, #202437);
}

.tool-optics-lab .fo-radio:has(input:checked) {
    border-color: var(--primary-color, #6855bd);
    box-shadow: inset 0 0 0 1px var(--primary-color, #6855bd);
}

.tool-optics-lab .fo-hint {
    margin: 6px 0 0;
    font-size: 0.82rem;
    line-height: 1.45;
    color: var(--text-secondary, #4c5368);
}

.tool-optics-lab .control-group[hidden] {
    display: none !important;
}

.tool-optics-lab .fo-presets {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
}

.tool-optics-lab .fo-presets .preset-option {
    min-width: 0;
    white-space: normal;
    line-height: 1.25;
}

.tool-optics-lab .fo-actions {
    margin-top: 10px;
}

.tool-optics-lab .fo-mode-badge[data-mode="coherent"] {
    background: rgba(248, 212, 119, 0.18);
    border-color: rgba(248, 212, 119, 0.6);
}

.tool-optics-lab .fo-mode-badge {
    white-space: normal;
    text-align: left;
}

.tool-optics-lab .fo-trade-grid {
    margin-top: 16px;
}

.tool-optics-lab #warnBox {
    margin-bottom: 12px;
}

.tool-optics-lab .fo-related {
    max-width: 1100px;
    margin: 32px auto 0;
    padding: 0 4px;
}

.tool-optics-lab .fo-related h2 {
    font-size: 1.15rem;
    margin: 0 0 10px;
    color: var(--text-primary, #202437);
}

.tool-optics-lab .fo-related ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.tool-optics-lab .fo-related a {
    display: inline-block;
    padding: 6px 12px;
    border: 1px solid var(--border-color, #dcd8eb);
    border-radius: 999px;
    color: var(--primary-color, #6855bd);
    text-decoration: none;
}

.tool-optics-lab .fo-related a:hover,
.tool-optics-lab .fo-related a:focus-visible {
    border-color: var(--primary-color, #6855bd);
    text-decoration: underline;
}

.tool-optics-lab #readouts {
    grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr));
    gap: 10px 18px;
    margin-top: 16px;
}

.tool-optics-lab #readouts>div {
    flex-direction: column;
    justify-content: flex-start;
    gap: 2px;
    padding: 6px 10px;
    border-left: 3px solid var(--border-color, #dcd8eb);
}

.tool-optics-lab #readouts dd {
    text-align: left;
    overflow-wrap: anywhere;
}