/**
 * Client registration/login in Flutter WebView — full-bleed, no mock keyboard / phone chrome.
 */
html.registration-embed,
html.registration-embed body {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    overflow: hidden !important;
    background: #ffffff !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html.registration-embed .app-shell-viewport {
    position: fixed !important;
    inset: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    overflow: hidden !important;
}

html.registration-embed .app-shell-scale-wrapper,
html.registration-embed .grid-container {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    transform: none !important;
    margin: 0 !important;
}

html.registration-embed .mockup-wrapper {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

html.registration-embed .mockup-wrapper.active {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

html.registration-embed .phone-frame.app-shell-phone-frame {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    background: #fff !important;
}

html.registration-embed .status-bar,
html.registration-embed .mockup-label,
html.registration-embed #toggle-mode-btn,
html.registration-embed #header-info,
html.registration-embed .keyboard-area {
    display: none !important;
}

html.registration-embed .registration-step-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: calc(env(safe-area-inset-bottom, 0px) + var(--registration-kb-inset, 0px) + 24px);
    scroll-padding-top: 72px;
    scroll-padding-bottom: calc(var(--registration-kb-inset, 0px) + 24px);
}

html.registration-embed.registration-keyboard-open .entry-brand {
    display: none !important;
}

html.registration-embed.registration-keyboard-open .registration-step-body {
    padding-top: 8px !important;
}

html.registration-embed .profile-scroll {
    padding-bottom: calc(env(safe-area-inset-bottom, 0px) + var(--registration-kb-inset, 0px) + 24px);
    scroll-padding-bottom: calc(var(--registration-kb-inset, 0px) + 24px);
}

html.registration-embed .registration-sms-visible {
    background: #f9fafb !important;
    border-color: #eef2f7 !important;
    color: #111827 !important;
    caret-color: #e35d5b;
}

html.registration-embed .registration-sms-visible:focus {
    background: #fff !important;
    border-color: #e35d5b !important;
    box-shadow: 0 0 0 4px rgba(227, 93, 91, 0.12);
}

html.registration-embed .input-field,
html.registration-embed .registration-sms-visible {
    font-size: 16px !important;
}

html.registration-embed input,
html.registration-embed textarea,
html.registration-embed select {
    touch-action: manipulation;
}

.registration-inline-notice {
    position: fixed;
    left: 16px;
    right: 16px;
    top: calc(env(safe-area-inset-top, 0px) + 16px);
    z-index: 1000;
    padding: 12px 14px;
    border-radius: 14px;
    background: #fff1f0;
    color: #b42318;
    font-size: 14px;
    line-height: 1.35;
    box-shadow: 0 8px 24px rgba(17, 24, 39, 0.12);
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.registration-inline-notice.visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}
