.browser-guide-modal { position: relative; min-width: 0; text-align: start; overflow-wrap: anywhere; }
.browser-handoff-emblem { display: grid; place-items: center; width: 68px; height: 68px; margin-bottom: 23px; border: 1px solid #dfc2f455; border-radius: 22px; background: radial-gradient(circle at 24% 12%, #ebcbff38, #b581e010 72%); box-shadow: inset 0 1px 0 #f9eaff24, 0 12px 40px #b782e21a; color: #ddbcf3; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.browser-handoff-emblem .icon { width: 31px; height: 31px; }
.browser-guide-modal h2 { margin: 0 0 16px; font-size: 31px; line-height: 1.5; letter-spacing: -.6px; }
.browser-handoff-description { margin: 0 0 23px; color: #c7b2d4; font-size: 17px; line-height: 1.85; }
.browser-handoff-progress { display: flex; align-items: flex-start; gap: 11px; padding: 16px; margin-bottom: 26px; border: 1px solid #d3b4eb24; border-radius: 15px; background: linear-gradient(120deg, #e3c5f80d, #b17ade06); box-shadow: inset 0 1px 0 #fff5; color: #d6c2e3; font-size: 16px; line-height: 1.8; }
.browser-handoff-progress .icon { flex-shrink: 0; width: 19px; height: 19px; margin-top: 4px; color: #cfa8e7; }
.browser-handoff-actions { display: grid; gap: 12px; }
.browser-guide-open, .browser-guide-copy { box-sizing: border-box; display: flex; align-items: center; justify-content: center; gap: 11px; width: 100%; min-height: 56px; padding: 14px 18px; border: 1px solid #d7b6ef61; border-radius: 14px; font: inherit; font-size: 17px; line-height: 1.65; text-align: center; text-decoration: none; cursor: pointer; }
.browser-guide-open { justify-content: space-between; background: linear-gradient(110deg, #e3c8f6, #bd92e0); color: #281538; font-weight: 600; box-shadow: 0 10px 34px #bc8dd522, inset 0 1px 0 #fff6; }
.browser-guide-copy { background: #c39ae310; color: #ead6f8; }
.browser-guide-open .icon, .browser-guide-copy .icon { flex-shrink: 0; width: 20px; height: 20px; }
.browser-guide-open:hover:not([aria-disabled=true]) { filter: brightness(1.06); }
.browser-guide-copy:hover:not(:disabled) { background: #c39ae321; }
.browser-guide-open[aria-disabled=true], .browser-guide-copy:disabled { opacity: .42; cursor: wait; box-shadow: none; }
.browser-handoff-status { min-height: 25px; margin: 17px 0 0; color: #b9a3c9; font-size: 14px; line-height: 1.8; }
.is-preparing .browser-handoff-status { animation: browser-handoff-breathe 1.8s ease-in-out infinite; }
.browser-guide-retry { display: inline-block; min-height: 44px; margin: 8px 0 0; padding: 9px 15px; border: 1px solid #d5b7e83b; border-radius: 11px; background: #ba8bdb0b; color: #e0c5f0; font: inherit; font-size: 15px; line-height: 1.6; cursor: pointer; }
.browser-guide-feedback { margin: 12px 0 0; color: #dcc5ed; font-size: 15px; line-height: 1.8; }
.browser-guide-feedback:empty { display: none; }
.browser-guide-link { padding: 15px; margin-top: 16px; border: 1px solid #d2afea26; border-radius: 13px; background: #0c081538; }
.browser-guide-link p { margin: 0 0 11px; color: #baa4ca; font-size: 14px; line-height: 1.8; }
.browser-guide-link input, .modal .browser-guide-link input { box-sizing: border-box; display: block; width: 100%; min-width: 0; min-height: 48px; margin: 0; padding: 11px 12px; border: 1px solid #c7a0f338; border-radius: 10px; background: #0b0816a3; color: #e0c8ef; font-size: 16px; line-height: 1.5; text-overflow: ellipsis; }
.browser-handoff-private { margin: 22px 0 0; padding-top: 17px; border-top: 1px solid #d2b0e91d; color: #a891b9; font-size: 14px; line-height: 1.85; }
.browser-guide-open:focus-visible, .browser-guide-copy:focus-visible, .browser-guide-retry:focus-visible, .browser-guide-link input:focus-visible { outline: 2px solid #d4b1ef; outline-offset: 3px; }
.browser-guide-modal [hidden] { display: none !important; }
@keyframes browser-handoff-breathe { 50% { opacity: .5; } }
@media (max-width: 760px) { .browser-guide-modal h2 { font-size: 28px; } .browser-handoff-emblem { width: 62px; height: 62px; margin-bottom: 21px; border-radius: 20px; } .browser-handoff-progress { padding: 15px; } }
@media (max-width: 375px) { .browser-guide-modal h2 { font-size: 26px; } .browser-handoff-description { font-size: 16px; } .browser-handoff-progress { font-size: 15px; padding: 13px; gap: 9px; } .browser-guide-open, .browser-guide-copy { padding-inline: 14px; font-size: 16px; } }
@media (prefers-reduced-motion: reduce) { .is-preparing .browser-handoff-status { animation: none; } }
