.guest-shell {
    position: relative;
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 56px 20px 32px;
    background: radial-gradient(ellipse at 80% 0%, rgba(85, 221, 207, .1), transparent 35%), linear-gradient(145deg, #0b1017, #080b10 65%);
}

.guest-brand { margin-bottom: 24px; }
.guest-logo { display: block; width: min(210px, 60vw); height: 82px; padding: 10px 16px; border-radius: 16px; background: #fff; object-fit: contain; }
.guest-card { width: min(100%, 448px); padding: 26px; overflow: hidden; border: 1px solid rgba(172, 195, 220, .2); border-radius: 18px; background: linear-gradient(145deg, #151c26, #10161f); color: #edf3fb; box-shadow: 0 22px 60px rgba(0, 0, 0, .28); }
.guest-card input:not([type="checkbox"]), .guest-card select, .guest-card textarea { border-color: rgba(172, 195, 220, .32); background: #101720; color: #f1f5fa; }
.guest-card label, .guest-card p { color: #b2bece; }
.guest-card .bg-white, .guest-card .bg-gray-50 { border-color: rgba(172, 195, 220, .2); background: #151c26; color: #edf3fb; }
.guest-card .text-gray-900, .guest-card .text-gray-800, .guest-card .text-gray-700 { color: #edf3fb; }
.guest-card .text-gray-600, .guest-card .text-gray-500, .guest-card .text-gray-400 { color: #aebacc; }
.guest-card a { color: #aebaff; }
.guest-card input::placeholder { color: #9aa8ba; opacity: 1; }
.guest-card .button,
.guest-card button.button,
.guest-card a.button {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid #5665d8;
    border-radius: 12px;
    background: linear-gradient(115deg, #6676ed, #4959ca);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.guest-card .button:hover { transform: translateY(-1px); box-shadow: 0 8px 22px rgba(74, 88, 211, .24); }
.guest-card .button-secondary { border-color: rgba(172, 195, 220, .32); background: rgba(255, 255, 255, .05); color: #dce5ef; box-shadow: none; }
.guest-card .button-danger { border-color: rgba(255, 120, 136, .36); background: rgba(255, 120, 136, .13); color: #ff9eaa; box-shadow: none; }
.guest-card .button:focus-visible { outline: 3px solid rgba(85, 221, 207, .5); outline-offset: 3px; }
.guest-card .button:disabled { opacity: .5; cursor: not-allowed; transform: none; }
.guest-theme-toggle { position: fixed; z-index: 80; top: 18px; right: 20px; }
.theme-toggle { display: inline-flex; min-height: 40px; align-items: center; justify-content: center; gap: 7px; padding: 0 12px; border: 1px solid rgba(172, 195, 220, .32); border-radius: 11px; background: rgba(255, 255, 255, .05); color: #edf3fb; font-size: 11px; font-weight: 680; cursor: pointer; }
.theme-toggle__icon { font-size: 16px; line-height: 1; }

html[data-theme="light"] .guest-shell { background: radial-gradient(ellipse at 80% 0%, rgba(18, 141, 131, .08), transparent 35%), linear-gradient(145deg, #f5f8fc, #edf2f8 65%); }
html[data-theme="light"] .guest-card { border-color: rgba(30, 48, 72, .14); background: #fff; color: #18283d; box-shadow: 0 20px 55px rgba(28, 47, 74, .09); }
html[data-theme="light"] .guest-card .bg-white, html[data-theme="light"] .guest-card .bg-gray-50 { border-color: #d2dbe5; background: #fff; color: #18283d; }
html[data-theme="light"] .guest-card .text-gray-900, html[data-theme="light"] .guest-card .text-gray-800, html[data-theme="light"] .guest-card .text-gray-700 { color: #18283d; }
html[data-theme="light"] .guest-card .text-gray-600, html[data-theme="light"] .guest-card .text-gray-500, html[data-theme="light"] .guest-card .text-gray-400 { color: #5b6b80; }
html[data-theme="light"] .guest-card a { color: #394ba9; }
html[data-theme="light"] .guest-card input::placeholder { color: #66778d; }
html[data-theme="light"] .guest-card input:not([type="checkbox"]), html[data-theme="light"] .guest-card select, html[data-theme="light"] .guest-card textarea { border-color: #b7c3d1; background: #fff; color: #18283d; }
html[data-theme="light"] .guest-card label, html[data-theme="light"] .guest-card p { color: #5b6b80; }
html[data-theme="light"] .theme-toggle { border-color: #bdc9d7; background: #fff; color: #24364d; }
html[data-theme="light"] .guest-card .button-secondary { border-color: #cbd5e1; background: #f8fafc; color: #334155; }
html[data-theme="light"] .guest-card .button-danger { border-color: #efb5bd; background: #fff0f1; color: #9f2938; }

@media (max-width: 520px) {
    .guest-card { padding: 22px; }
    .guest-theme-toggle { min-width: 40px; padding-inline: 10px; }
    .guest-theme-toggle .theme-toggle__label { display: none; }
}

html[data-theme="light"] { color-scheme: light; }
html[data-theme="dark"] { color-scheme: dark; }
