.ct-interactive {
    background: #f0f7ff;
    border: 1px solid #b9d0e8;
    border-radius: 1rem;
    overflow: hidden;
}
.ct-interactive svg { display: block; width: 100%; height: auto; }
.ct-interactive path {
    fill: #c6def6;
    fill-rule: evenodd;
    stroke: #345d86;
    stroke-width: 1;
    vector-effect: non-scaling-stroke;
}
.ct-interactive.is-interactive path { cursor: pointer; }
.ct-interactive.is-interactive path:hover { fill: #71a7db; }
.ct-interactive path.is-selected, .ct-interactive path.is-selected:hover { fill: #15538e; }
.ct-controls:not([hidden]) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .65rem;
    padding: 1rem;
    color: #163b61;
}
.ct-controls select {
    max-width: 100%;
    min-height: 2.75rem;
    padding: .4rem .65rem;
    font: inherit;
    color: #163b61;
    background: #fff;
    border: 1px solid #345d86;
    border-radius: .4rem;
}
.ct-controls output { font-weight: 700; }

