@layer components {
    .browser {
        overflow: hidden;
        border: 1px solid var(--color-line);
        background: var(--color-white);
    }

    .browser--lg {
        border-radius: var(--radius-card);
    }

    .browser--sm {
        border-radius: var(--radius-frame);
    }

    .browser__bar {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 10px 14px;
        border-bottom: 1px solid var(--color-line);
        background: var(--color-page);
    }

    .browser--sm .browser__bar {
        padding-block: 9px;
    }

    .browser__dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--color-line);
    }

    .browser__url {
        margin-left: 10px;
        padding: 1px 12px;
        border: 1px solid var(--color-line);
        border-radius: var(--radius-pill);
        background: var(--color-white);
        color: var(--color-muted);
        font-size: 12px;
    }

    .browser__image {
        width: 100%;
    }

    .diagram {
        padding: clamp(20px, 2.4vw, 28px);
        border: 1px solid var(--color-line);
        border-radius: var(--radius-panel);
        background: var(--color-page);
    }

    .diagram__title {
        font-size: 18px;
        font-weight: 600;
    }

    .diagram__note {
        color: var(--color-muted);
        font-size: 14px;
    }
}
