.ce-site-view {
    color: var(--ce-text, #f7f7f8);
    margin: 0 auto;
    max-width: 1260px;
    padding: 2.5rem 0 5rem;
}
.ce-site-view [hidden] { display: none !important; }
.ce-site-view__hero { padding-bottom: 1.5rem; }
.ce-site-view__hero h1 { font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1.2; margin: 0 0 1rem; overflow-wrap: anywhere; }
.ce-site-view__eyebrow { color: #7fa5ff; font-size: .76rem; font-weight: 700; letter-spacing: .13em; margin: 0 0 .55rem; text-transform: uppercase; }
.ce-site-view__hint { color: var(--ce-text-muted, #a7a7ae); }
.ce-site-view__back { display: inline-block; margin-top: .3rem; }
.ce-site-view__preview {
    background: var(--ce-surface, #101012);
    border: 1px solid var(--ce-line-soft, rgb(255 255 255 / 12%));
    border-radius: 1rem;
    box-shadow: 0 12px 34px rgb(0 0 0 / 16%);
    overflow: hidden;
}
.ce-site-view__loading,
.ce-site-view__failure { align-items: center; display: flex; flex-direction: column; gap: 1rem; justify-content: center; min-height: 360px; padding: 2rem; text-align: center; }
.ce-site-view__loading p { color: var(--ce-text-muted, #a7a7ae); margin: 0; }
.ce-site-view__spinner { border: 3px solid rgb(127 165 255 / 18%); border-radius: 50%; border-top-color: #7fa5ff; height: 2.4rem; width: 2.4rem; animation: ce-site-view-spin 1s linear infinite; }
.ce-site-view__error { color: #ffd878; margin: 0; }
.ce-site-view__image { display: block; height: auto; width: 100%; }
.ce-site-view__debug { max-width: 100%; text-align: left; width: 100%; }
.ce-site-view__debug summary { cursor: pointer; }
.ce-site-view__debug p { color: var(--ce-text-muted, #a7a7ae); margin: .75rem 0; }
.ce-site-view__debug pre { background: rgb(0 0 0 / 20%); border-radius: .5rem; color: inherit; font-size: .8rem; max-height: 28rem; overflow: auto; padding: 1rem; text-align: left; }
@keyframes ce-site-view-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .ce-site-view__spinner { animation: none; } }
@media (max-width: 640px) { .ce-site-view { padding-top: 1.5rem; } .ce-site-view__loading, .ce-site-view__failure { min-height: 240px; padding: 1.5rem; } }
