#home-page[data-ui-scope="brand-soft-refresh"],
#relationship-analysis-page[data-ui-scope="brand-soft-refresh"],
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"],
#discover-page[data-ui-scope="brand-soft-refresh"],
#profile-page[data-ui-scope="brand-soft-refresh"],
#chat-page[data-ui-scope="brand-soft-refresh"] {
    --bs-surface: rgba(255, 255, 255, 0.9);
    --bs-surface-soft: rgba(255, 245, 250, 0.72);
    --bs-border: rgba(116, 87, 148, 0.16);
    --bs-text: #19132f;
    --bs-muted: #756d8d;
    --bs-accent: #f04487;
    --bs-violet: #766de3;
    --bs-radius: 16px;
}

body.dark-mode #home-page[data-ui-scope="brand-soft-refresh"],
body.dark-mode #relationship-analysis-page[data-ui-scope="brand-soft-refresh"],
body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"],
body.dark-mode #discover-page[data-ui-scope="brand-soft-refresh"],
body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"],
body.dark-mode #chat-page[data-ui-scope="brand-soft-refresh"] {
    --bs-surface: rgba(20, 20, 31, 0.94);
    --bs-surface-soft: rgba(28, 23, 40, 0.82);
    --bs-border: rgba(255, 255, 255, 0.15);
    --bs-text: #faf7ff;
    --bs-muted: rgba(250, 247, 255, 0.68);
    --bs-accent: #ff4f8a;
    --bs-violet: #8b5cf6;
}

:is(
    #relationship-analysis-page,
    #relationship-analysis-result-page,
    #discover-page,
    #profile-page
)[data-ui-scope="brand-soft-refresh"] :where(button, [role="button"], summary) {
    min-height: 44px;
}

:is(
    #relationship-analysis-page,
    #relationship-analysis-result-page,
    #discover-page,
    #profile-page
)[data-ui-scope="brand-soft-refresh"] :where(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),
    select,
    textarea
) {
    min-height: 44px;
}

#home-page.home-radar-canvas-ready .hero-background::after {
    content: none !important;
    display: none !important;
}

#home-page.home-radar-canvas-ready .hero-background .hero-orbit {
    background: none !important;
    background-image: none !important;
    animation: none !important;
    transform: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}

#home-page.home-radar-canvas-ready .hero-background .hero-orbit::before {
    content: "";
    position: absolute;
    inset: -46px;
    z-index: -1;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 50%, rgba(var(--brand-pink-rgb), 0.16) 0%, rgba(var(--brand-pink-rgb), 0.10) 30%, transparent 52%),
        radial-gradient(circle at 50% 50%, rgba(var(--brand-purple-rgb), 0.14) 0%, rgba(var(--brand-purple-rgb), 0.09) 48%, transparent 72%),
        radial-gradient(circle at 50% 50%, rgba(88, 110, 232, 0.09) 0%, rgba(88, 110, 232, 0.07) 62%, transparent 82%);
    filter: blur(13px);
    opacity: 0.94;
    pointer-events: none;
}

body.dark-mode #home-page.home-radar-canvas-ready .hero-background .hero-orbit::before {
    opacity: 0.72;
    filter: blur(15px);
}

#home-page[data-ui-scope="brand-soft-refresh"] .hero-cta-btn {
    background: linear-gradient(112deg, #ec4f91 0%, #d85fbb 72%, #8171e2 100%) !important;
    box-shadow: 0 12px 24px rgba(213, 78, 153, 0.22) !important;
    text-shadow: 0 1px 2px rgba(54, 19, 70, 0.24);
}

body.dark-mode #home-page[data-ui-scope="brand-soft-refresh"] .hero-cta-btn {
    background: linear-gradient(112deg, #dc568f 0%, #aa59d8 56%, #716fe3 100%) !important;
    box-shadow: 0 12px 26px rgba(137, 92, 220, 0.28) !important;
}

html[lang^="zh"] #home-page[data-ui-scope="brand-soft-refresh"] .hero-slide[data-analysis-scenario="invite"] .hero-stats {
    margin-bottom: 16px !important;
}

/* Browser annotation polish: give the animated radar more breathing room and
   soften the card surface without changing the existing interaction. */
#home-page[data-ui-scope="brand-soft-refresh"] .hero-carousel,
#home-page[data-ui-scope="brand-soft-refresh"] .hero-slide {
    height: 286px !important;
    min-height: 286px !important;
}

#home-page[data-ui-scope="brand-soft-refresh"] .hero-slide {
    padding: 16px 16px 15px !important;
}

body:not(.dark-mode) #home-page[data-ui-scope="brand-soft-refresh"] .hero-carousel {
    background:
        radial-gradient(ellipse 118% 108% at 58% 34%, rgba(255, 111, 143, 0.04), transparent 76%),
        radial-gradient(ellipse 126% 122% at 64% 86%, rgba(147, 124, 255, 0.04), transparent 82%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 252, 254, 0.98) 58%, rgba(252, 249, 255, 0.99) 100%) !important;
    border-color: rgba(116, 87, 148, 0.22) !important;
    box-shadow: 0 12px 28px rgba(59, 43, 99, 0.08) !important;
}

body:not(.dark-mode) #home-page[data-ui-scope="brand-soft-refresh"] .hero-background::before {
    background:
        radial-gradient(ellipse 120% 110% at 56% 30%, rgba(var(--brand-pink-rgb), 0.035), transparent 78%),
        radial-gradient(ellipse 128% 124% at 64% 86%, rgba(var(--brand-accent-rgb), 0.04), transparent 84%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.025), transparent 72%) !important;
    opacity: 1 !important;
}

body.dark-mode #home-page[data-ui-scope="brand-soft-refresh"] .hero-carousel {
    background:
        radial-gradient(circle at 80% 30%, rgba(255, 111, 143, 0.12), transparent 36%),
        radial-gradient(circle at 100% 86%, rgba(147, 124, 255, 0.16), transparent 40%),
        linear-gradient(135deg, rgba(29, 27, 40, 0.98) 0%, rgba(36, 30, 47, 0.98) 58%, rgba(31, 30, 49, 0.98) 100%) !important;
}

body:not(.dark-mode) #home-page.home-radar-canvas-ready .hero-background .hero-orbit::before {
    opacity: 0.26;
    filter: blur(18px);
}

body:not(.dark-mode) #home-page[data-ui-scope="brand-soft-refresh"] .hero-content > p,
body:not(.dark-mode) #home-page[data-ui-scope="brand-soft-refresh"] .hero-content .stat-label {
    color: #625a73 !important;
}

body:not(.dark-mode) #home-page[data-ui-scope="brand-soft-refresh"] .quick-experience.enhanced {
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 79, 134, 0.045), transparent 44%),
        linear-gradient(180deg, #ffffff 0%, #fdfbff 100%) !important;
    border-color: rgba(116, 87, 148, 0.22) !important;
    box-shadow: 0 14px 32px rgba(59, 43, 99, 0.09) !important;
}

body:not(.dark-mode) #home-page[data-ui-scope="brand-soft-refresh"] .experience-subtitle {
    color: #625a73 !important;
}

body:not(.dark-mode) #home-page[data-ui-scope="brand-soft-refresh"] .demo-chat.enhanced-chat {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(252, 249, 255, 0.96)) !important;
}

body.dark-mode #home-page.home-radar-canvas-ready .hero-background .hero-orbit::before {
    opacity: 0.58;
    filter: blur(16px);
}

/* Home funnel heading: keep the disclosure and the contextual stage-map link
   on one compact, touch-friendly row. */
#home-page[data-ui-scope="brand-soft-refresh"] .funnel-card-copy {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-bottom: 2px !important;
}

#home-page[data-ui-scope="brand-soft-refresh"] .home-funnel-details {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}

#home-page[data-ui-scope="brand-soft-refresh"] .home-four-stage-map-link {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 44px;
    padding: 0 2px 0 8px;
    border: 0;
    background: transparent;
    color: var(--primary-color);
    font-size: 12px;
    line-height: 1;
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
}

#home-page[data-ui-scope="brand-soft-refresh"] .home-four-stage-map-link i {
    font-size: 10px;
    transition: transform 0.2s ease;
}

#home-page[data-ui-scope="brand-soft-refresh"] .home-four-stage-map-link:hover i {
    transform: translateX(2px);
}

#home-page[data-ui-scope="brand-soft-refresh"] .home-four-stage-map-link:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
    border-radius: 8px;
}

#home-page .home-radar-canvas {
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

#home-page.home-radar-canvas-unavailable .hero-background .hero-orbit {
    animation: none !important;
    transform: none !important;
}

/* Task 2 Profile secondary typography */
:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) {
    --profile-secondary-page-title-size: 18px;
    --profile-secondary-section-title-size: 15px;
    --profile-secondary-item-title-size: 13px;
    --profile-secondary-support-copy-size: 12px;
    --profile-secondary-body-copy-size: 13px;
    --profile-secondary-input-size: 16px;
}

:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) .page-title {
    font-size: var(--profile-secondary-page-title-size) !important;
}

:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) .page-content :is(h3, h4) {
    font-size: var(--profile-secondary-section-title-size) !important;
}

:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) .settings-item-title,
:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) .page-content label,
:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) .faq-question {
    font-size: var(--profile-secondary-item-title-size) !important;
}

:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) .settings-item-desc,
:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) .faq-answer,
:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) :is(.app-version, .copyright, .legal-eyebrow) {
    font-size: var(--profile-secondary-support-copy-size) !important;
}

:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) :is(p, .app-description) {
    font-size: var(--profile-secondary-body-copy-size) !important;
}

:is(
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) :is(input, textarea, select) {
    font-size: var(--profile-secondary-input-size) !important;
}

#edit-profile-page .profile-radio-field .radio-option span {
    font-size: var(--profile-secondary-item-title-size) !important;
}

#help-page .contact-options .contact-btn {
    font-size: var(--profile-secondary-item-title-size) !important;
    font-weight: 600 !important;
}

#settings-page .settings-link-list .settings-nav-link {
    font-size: var(--profile-secondary-item-title-size) !important;
    font-weight: 500 !important;
}

/* Secondary page card rhythm: rely on the page grid for spacing instead of
   stacking legacy child margins on top of it. */
#help-page :is(.search-box, .faq-section, .faq-item, .contact-section),
#about-page :is(
    .app-info,
    .team-section,
    .mission-section,
    .contact-section,
    .terms-section,
    .copyright
) {
    margin-block: 0 !important;
}

body:not(.dark-mode) #help-page .contact-section,
body.dark-mode #help-page .contact-section,
body:not(.dark-mode) #about-page .contact-section,
body.dark-mode #about-page .contact-section {
    margin-block: 0 !important;
}

/* End Task 2 Profile secondary typography */

/* Task 7 relationship input refresh */
#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-analysis-shell {
    display: grid;
    gap: 12px;
    padding: 12px 14px max(32px, calc(env(safe-area-inset-bottom, 0px) + 24px)) !important;
    background:
        radial-gradient(circle at 96% 2%, rgba(255, 79, 138, 0.08), transparent 22%),
        radial-gradient(circle at 4% 38%, rgba(139, 92, 246, 0.06), transparent 24%);
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-input-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px 12px;
    align-items: start;
    padding: 3px 2px 1px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-input-intro-copy {
    min-width: 0;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-input-intro .discover-eyebrow {
    display: inline-flex;
    margin-bottom: 5px;
    color: var(--bs-violet);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-input-intro h3 {
    margin: 0;
    color: var(--bs-text);
    font-size: 20px;
    line-height: 1.18;
    letter-spacing: -0.025em;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-input-intro p {
    max-width: 48ch;
    margin: 5px 0 0;
    color: var(--bs-muted);
    font-size: 12px;
    line-height: 1.45;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-history-btn {
    display: inline-flex;
    min-height: 44px;
    width: auto !important;
    margin: 0 !important;
    padding: 0 11px !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px solid var(--bs-border) !important;
    border-radius: 12px !important;
    background: var(--bs-surface) !important;
    color: var(--bs-text) !important;
    box-shadow: none !important;
    font-size: 11px;
    white-space: nowrap;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-analysis-form {
    display: grid;
    gap: 12px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-card,
#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details {
    margin: 0 !important;
    border: 1px solid var(--bs-border) !important;
    border-radius: 18px !important;
    background: var(--bs-surface) !important;
    color: var(--bs-text) !important;
    box-shadow: 0 14px 34px rgba(42, 25, 70, 0.07) !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-card {
    padding: 15px !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-head {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 9px;
    margin-bottom: 12px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-head h4 {
    margin: 0 0 3px;
    color: var(--bs-text) !important;
    font-size: 15px;
    line-height: 1.25;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-head p {
    margin: 0;
    color: var(--bs-muted) !important;
    font-size: 11px;
    line-height: 1.45;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-step {
    min-width: 0;
    min-height: 24px;
    padding: 0 8px;
    color: var(--bs-accent);
    font-size: 10px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-checkpoint-list {
    display: grid;
    gap: 5px;
    margin: 0 0 12px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-checkpoint-list span {
    min-height: 0;
    padding: 0 0 0 14px;
    border: 0;
    background: transparent !important;
    color: var(--bs-muted) !important;
    font-size: 11px;
    line-height: 1.35;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-checkpoint-list span::before {
    left: 0;
    color: var(--bs-accent);
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-label {
    margin-bottom: 6px;
    color: var(--bs-text) !important;
    font-size: 12px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-upload-area {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    margin-bottom: 9px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-upload-area .relationship-secondary-btn {
    min-height: 44px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid color-mix(in srgb, var(--bs-accent) 24%, transparent) !important;
    border-radius: 12px !important;
    background: color-mix(in srgb, var(--bs-accent) 8%, var(--bs-surface)) !important;
    color: var(--bs-accent) !important;
    box-shadow: none !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-screenshots-strip {
    min-width: 0;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-speaker-confirmation {
    margin: 0 0 9px;
    border-color: var(--bs-border);
    border-radius: 13px;
    background: color-mix(in srgb, var(--bs-violet) 6%, var(--bs-surface));
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-textarea,
#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-select,
#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-input {
    border: 1px solid var(--bs-border) !important;
    border-radius: 12px !important;
    background: color-mix(in srgb, var(--bs-surface-soft) 72%, var(--bs-surface)) !important;
    color: var(--bs-text) !important;
    box-shadow: none !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-textarea {
    min-height: 146px;
    padding: 12px 13px;
    line-height: 1.5;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-textarea.compact {
    min-height: 78px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-select,
#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-input {
    min-height: 44px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-select {
    -webkit-appearance: none !important;
    appearance: none !important;
    padding-right: 44px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23f04487' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 16px 16px !important;
    cursor: pointer;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-form-select:focus {
    outline: none !important;
    border-color: rgba(240, 68, 135, 0.48) !important;
    box-shadow: 0 0 0 4px rgba(240, 68, 135, 0.12) !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] #relationship-custom-question {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-entry-actions.compact {
    justify-content: flex-end;
    margin: 7px 0 10px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-entry-actions.compact .relationship-secondary-btn {
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid var(--bs-border) !important;
    border-radius: 11px !important;
    background: transparent !important;
    color: var(--bs-muted) !important;
    box-shadow: none !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-concern-card .relationship-form-label:not(:first-of-type) {
    margin-top: 11px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-contact-card {
    padding-block: 13px !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-contact-card .relationship-form-label {
    margin-top: 0;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details {
    overflow: hidden;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details > summary {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 30px;
    gap: 2px 10px;
    box-sizing: border-box;
    min-height: 44px;
    padding: 7px 12px 7px 15px;
    cursor: pointer;
    list-style: none;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details > summary::-webkit-details-marker {
    display: none;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details > summary > span:first-child {
    grid-column: 1;
    color: var(--bs-text);
    font-size: 13px;
    font-weight: 750;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details > summary > small {
    grid-column: 1;
    color: var(--bs-muted);
    font-size: 10px;
    line-height: 1.35;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details > summary:focus-visible {
    outline: 2px solid var(--bs-violet);
    outline-offset: -2px;
    border-radius: 17px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-chevron {
    grid-column: 3;
    grid-row: 1 / span 2;
    align-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid color-mix(in srgb, var(--bs-violet) 34%, var(--bs-border));
    background: color-mix(in srgb, var(--bs-violet) 10%, transparent);
    color: var(--bs-violet);
    font-size: 11px;
    transition: transform 0.2s ease;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details[open] > summary {
    border-bottom: 1px solid var(--bs-border);
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details[open] > summary .relationship-background-chevron {
    transform: rotate(180deg);
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-details .relationship-carried-badge {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    margin: 0;
    color: var(--bs-violet);
    background: color-mix(in srgb, var(--bs-violet) 10%, transparent);
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-body {
    padding: 13px 15px 15px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-background-body > p {
    margin: 0 0 11px;
    color: var(--bs-muted);
    font-size: 11px;
    line-height: 1.45;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-grid {
    display: grid;
    gap: 11px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-field {
    min-width: 0;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-checkbox-row {
    display: grid;
    gap: 6px;
    margin-top: 11px;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-checkbox {
    min-height: 44px;
    padding: 8px 10px;
    align-items: center;
    border: 1px solid var(--bs-border);
    border-radius: 11px;
    background: color-mix(in srgb, var(--bs-surface-soft) 56%, transparent);
    color: var(--bs-muted);
    cursor: pointer;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-checkbox input {
    flex: 0 0 auto;
    margin: 0;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-submit-card {
    position: static;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-submit-card .relationship-primary-btn {
    min-height: 48px;
    border-radius: 13px !important;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] .relationship-submit-note {
    margin: 9px 0 0;
    color: var(--bs-muted) !important;
    font-size: 10px;
    line-height: 1.45;
}

#relationship-analysis-page[data-ui-scope="brand-soft-refresh"] #relationship-analysis-error:not([hidden]) {
    display: block;
    margin-top: 10px;
}

/* End Task 7 relationship input refresh */

/* Candy native select affordances */
body:not(.dark-mode) #edit-profile-page .form-select,
body:not(.dark-mode) #settings-page .settings-language-select {
    -webkit-appearance: none !important;
    appearance: none !important;
    padding-right: 40px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23f04487' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 16px 16px !important;
    cursor: pointer;
}

body:not(.dark-mode) #edit-profile-page .form-select:focus,
body:not(.dark-mode) #settings-page .settings-language-select:focus {
    outline: none !important;
    border-color: rgba(240, 68, 135, 0.48) !important;
    box-shadow: 0 0 0 4px rgba(240, 68, 135, 0.12) !important;
}

/* Browser annotation refinements */
#content-detail-page .discover-detail-body {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#content-detail-page .discover-detail-chat-btn {
    min-height: 44px;
    padding-inline: 14px;
    font-size: 13px !important;
    line-height: 1.2;
}

#content-detail-page .discover-detail-hero h1 {
    font-size: 20px !important;
    line-height: 1.25;
}

#content-detail-page .discover-detail-summary {
    font-size: 14px !important;
    line-height: 1.6;
}

#content-detail-page .discover-article p,
#content-detail-page .discover-article li {
    font-size: 14px !important;
    line-height: 1.7 !important;
}

#content-detail-page .discover-article h3 {
    font-size: 15px !important;
    line-height: 1.4 !important;
}

/* Browser annotation refinements: compact avatar-free Chat and staged images. */
#chat-page[data-ui-scope="brand-soft-refresh"] .chat-workspace-head {
    display: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-header-container {
    position: relative !important;
    top: auto !important;
    z-index: 12;
    display: flex !important;
    flex: 0 0 auto;
    box-sizing: border-box;
    height: 44px;
    min-height: 44px;
    padding: 0 1px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--bs-text) !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-back-btn,
#chat-page[data-ui-scope="brand-soft-refresh"] .chat-option-btn {
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 44px;
    border: 1px solid var(--bs-border) !important;
    background: color-mix(in srgb, var(--bs-surface) 86%, transparent) !important;
    color: var(--bs-text) !important;
    box-shadow: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-options-menu .menu-option {
    width: 100%;
    border-top: 0;
    border-right: 0;
    border-left: 0;
    background: transparent;
    color: var(--bs-text);
    font: inherit;
    text-align: left;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-title {
    color: var(--bs-text) !important;
    font-size: 14px;
    font-weight: 750;
    line-height: 20px;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-title > span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-content {
    gap: 7px !important;
}

html[data-platform="capacitor"] #chat-page[data-ui-scope="brand-soft-refresh"] .chat-content {
    padding: 6px 16px 14px !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-container {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.dark-mode #chat-page[data-ui-scope="brand-soft-refresh"] .chat-container {
    background: transparent !important;
    box-shadow: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] #chat-messages {
    gap: 12px !important;
    padding: 2px 2px 12px !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message {
    gap: 0 !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message.ai-message,
#chat-page[data-ui-scope="brand-soft-refresh"] .message.partner-message {
    max-width: 100% !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message.user-message {
    max-width: 85% !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message.user-message .message-content {
    background: color-mix(in srgb, var(--bs-accent) 14%, var(--bs-surface)) !important;
    color: var(--bs-text) !important;
    border: 1px solid color-mix(in srgb, var(--bs-accent) 24%, var(--bs-border)) !important;
    box-shadow: 0 8px 22px rgba(80, 50, 104, 0.08) !important;
}

body.dark-mode #chat-page[data-ui-scope="brand-soft-refresh"] .message.user-message .message-content {
    background: color-mix(in srgb, var(--bs-accent) 16%, var(--bs-surface)) !important;
    color: var(--bs-text) !important;
    border-color: color-mix(in srgb, var(--bs-accent) 28%, var(--bs-border)) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.16) !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message.user-message .message-content p {
    color: inherit !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message.ai-message .message-content {
    padding: 5px 2px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--bs-text) !important;
    box-shadow: none !important;
    transform: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message.ai-message .message-content::before {
    content: none !important;
    display: none !important;
}

body.dark-mode #chat-page[data-ui-scope="brand-soft-refresh"] .message.ai-message .message-content {
    border: 0 !important;
    background: transparent !important;
    color: var(--bs-text) !important;
    box-shadow: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .message.partner-message .message-content {
    margin-left: 0 !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-input-wrapper {
    position: relative;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-input-box {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    align-items: center !important;
    column-gap: 6px !important;
    row-gap: 6px !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-input-box.has-attachments {
    border-radius: 24px !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attach-btn {
    grid-column: 1;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-input-container {
    grid-column: 2;
    min-width: 0;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-send-btn {
    grid-column: 3;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-draft {
    grid-column: 1 / -1;
    display: flex;
    gap: 8px;
    max-width: 100%;
    overflow-x: auto;
    padding: 2px 4px 3px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-draft[hidden] {
    display: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-draft::-webkit-scrollbar {
    display: none;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-preview {
    position: relative;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    overflow: visible;
    border: 1px solid var(--bs-border);
    border-radius: 13px;
    background: var(--bs-surface);
    box-shadow: 0 8px 18px rgba(67, 43, 91, 0.08);
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-preview-button {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: 12px;
    background: transparent;
    cursor: zoom-in;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-preview img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    object-fit: cover;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-remove {
    position: absolute;
    top: -11px;
    right: -11px;
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 4px;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachment-remove i {
    display: inline-flex;
    width: 22px;
    height: 22px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(24, 20, 31, 0.82);
    font-size: 10px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.22);
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachments-panel {
    left: 0;
    bottom: calc(100% + 8px);
    width: min(214px, calc(100% - 8px));
    border-color: var(--bs-border);
    background: color-mix(in srgb, var(--bs-surface) 96%, transparent);
    box-shadow: 0 16px 34px rgba(67, 43, 91, 0.16);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}

#chat-page[data-ui-scope="brand-soft-refresh"] .attachment-option {
    color: var(--bs-text);
}

#chat-page[data-ui-scope="brand-soft-refresh"] .attachment-option:hover,
#chat-page[data-ui-scope="brand-soft-refresh"] .attachment-option:focus-visible {
    background: color-mix(in srgb, var(--bs-accent) 10%, transparent);
    transform: none;
}

body.dark-mode #chat-page[data-ui-scope="brand-soft-refresh"] .chat-attachments-panel {
    background: color-mix(in srgb, var(--bs-surface) 94%, transparent);
}

/* Task 9 Discover content center */
#discover-page[data-ui-scope="brand-soft-refresh"] {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background:
        radial-gradient(circle at 96% 3%, rgba(255, 79, 138, 0.08), transparent 24%),
        radial-gradient(circle at 4% 35%, rgba(139, 92, 246, 0.06), transparent 24%);
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-shell {
    display: grid;
    width: min(100%, 430px);
    max-width: 430px;
    margin: 0 auto;
    gap: 15px;
    padding: 14px 14px max(32px, calc(var(--bottom-nav-height, 72px) + env(safe-area-inset-bottom, 0px) + 20px)) !important;
    box-sizing: border-box;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-header {
    display: grid;
    gap: 12px;
    margin: 0;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-heading {
    margin: 0;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-heading h2 {
    margin: 0;
    color: var(--bs-text) !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.025em !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-heading p {
    max-width: 46ch;
    margin: 5px 0 0;
    color: var(--bs-muted) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-search {
    min-height: 44px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid var(--bs-border) !important;
    border-radius: 14px !important;
    background: var(--bs-surface) !important;
    box-shadow: 0 10px 26px rgba(42, 25, 70, 0.05) !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-search:focus-within {
    border-color: var(--bs-border) !important;
    box-shadow: none !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-search:focus-within i {
    color: var(--bs-violet) !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-search input {
    min-width: 0;
    height: 44px;
    color: var(--bs-text) !important;
    font-size: 13px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-search input.keyboard-focused {
    border-color: transparent !important;
    box-shadow: none !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-search i {
    color: var(--bs-muted);
    font-size: 13px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-categories {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 5px !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .category-tab {
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 0 4px !important;
    border: 1px solid var(--bs-border) !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--bs-surface) 76%, transparent) !important;
    color: var(--bs-muted) !important;
    font-size: 11px !important;
    font-weight: 700;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    overflow: visible !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .category-tab.active {
    border-color: color-mix(in srgb, var(--bs-accent) 58%, transparent) !important;
    background: linear-gradient(135deg, var(--bs-accent), #ff7aa8) !important;
    color: #fff !important;
    box-shadow: 0 8px 18px rgba(255, 79, 138, 0.2);
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured,
#discover-page[data-ui-scope="brand-soft-refresh"] .discover-content,
#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tools {
    min-width: 0;
    margin: 0;
    padding: 0;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-section-head {
    display: flex;
    min-height: 28px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 0 9px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-section-head h3 {
    margin: 0 !important;
    color: var(--bs-text) !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-results-count {
    flex: 0 0 auto;
    color: var(--bs-muted);
    font-size: 11px !important;
    font-weight: 650;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-list {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-template-columns: none !important;
    grid-auto-columns: calc(100% - 34px) !important;
    gap: 12px !important;
    overflow-x: auto !important;
    padding: 1px 1px 5px;
    scroll-padding-inline: 1px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-list::-webkit-scrollbar {
    display: none;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-card {
    width: auto !important;
    min-width: 0;
    min-height: 0;
    padding: 14px !important;
    border: 1px solid var(--bs-border) !important;
    border-radius: 17px !important;
    background:
        radial-gradient(circle at 94% 4%, rgba(139, 92, 246, 0.12), transparent 36%),
        var(--bs-surface) !important;
    box-shadow: 0 12px 28px rgba(42, 25, 70, 0.07) !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-topline {
    margin: 0 0 9px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-body {
    gap: 12px;
    align-items: flex-start;
    margin: 0;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-card .discover-thumb {
    width: 56px;
    height: 56px;
    border-radius: 15px;
    font-size: 20px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-copy h4 {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 5px !important;
    color: var(--bs-text) !important;
    font-size: 15px !important;
    line-height: 1.32 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-copy .discover-copy-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 10px;
    margin-top: 8px;
    color: var(--bs-muted);
    font-size: 12px !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-card > .discover-card-meta {
    margin-top: 10px;
    color: var(--bs-muted);
    font-size: 12px !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-card-pill {
    min-height: 24px;
    padding: 0 9px;
    background: color-mix(in srgb, var(--bs-accent) 11%, transparent);
    color: var(--bs-accent);
    font-size: 12px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list {
    display: grid !important;
    overflow: hidden;
    gap: 0 !important;
    border: 1px solid var(--bs-border);
    border-radius: 17px;
    background: var(--bs-surface);
    box-shadow: 0 12px 28px rgba(42, 25, 70, 0.06);
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list-card {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 10px !important;
    min-height: 112px;
    align-items: start !important;
    padding: 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--bs-border) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list-card:last-child {
    border-bottom: 0 !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-topic-rank {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    color: var(--bs-accent);
    font-size: 18px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list-copy {
    min-width: 0;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list-topline {
    gap: 8px;
    margin: 0 0 5px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-topic-read-time {
    flex: 0 0 auto;
    color: var(--bs-muted);
    font-size: 12px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list-copy h4 {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 4px !important;
    color: var(--bs-text) !important;
    font-size: 14px !important;
    line-height: 1.38 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-card-thesis,
#discover-page[data-ui-scope="brand-soft-refresh"] .discover-card-takeaway {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-card-thesis {
    color: color-mix(in srgb, var(--bs-text) 88%, var(--bs-muted)) !important;
    font-size: 12.5px !important;
    font-weight: 650;
    line-height: 1.4 !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-card-takeaway {
    margin-top: 4px;
    color: var(--bs-muted) !important;
    font-size: 12.5px !important;
    line-height: 1.4 !important;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list-copy .discover-copy-meta {
    overflow: hidden;
    margin-top: 6px;
    color: var(--bs-muted);
    font-size: 12px !important;
    white-space: nowrap;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tool-card {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    gap: 11px;
    padding: 11px 12px;
    border: 1px solid var(--bs-border) !important;
    border-radius: 17px;
    background: var(--bs-surface) !important;
    background-image: none !important;
    color: var(--bs-text);
    box-shadow: 0 12px 28px rgba(42, 25, 70, 0.06);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tool-icon {
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(255, 79, 138, 0.2), rgba(139, 92, 246, 0.24));
    color: var(--bs-accent);
    font-size: 18px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tool-copy {
    display: grid;
    min-width: 0;
    gap: 3px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tool-copy strong {
    color: var(--bs-text);
    font-size: 14px;
    line-height: 1.3;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tool-copy > span {
    display: -webkit-box;
    overflow: hidden;
    color: var(--bs-muted);
    font-size: 11px;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tool-cta {
    max-width: 72px;
    color: var(--bs-violet);
    font-size: 11px;
    font-weight: 750;
    line-height: 1.25;
    text-align: right;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-featured-card:focus-visible,
#discover-page[data-ui-scope="brand-soft-refresh"] .discover-list-card:focus-visible,
#discover-page[data-ui-scope="brand-soft-refresh"] .discover-hot-tool-card:focus-visible,
#discover-page[data-ui-scope="brand-soft-refresh"] .category-tab:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--bs-accent) 58%, transparent);
    outline-offset: -2px;
}

#discover-page[data-ui-scope="brand-soft-refresh"] .discover-empty-state:not([hidden]) {
    display: grid;
    min-height: 132px;
    place-items: center;
    margin-top: 10px;
    padding: 20px;
    border: 1px dashed var(--bs-border) !important;
    border-radius: 17px;
    background: var(--bs-surface-soft) !important;
    color: var(--bs-muted);
}

#discover-page[data-ui-scope="brand-soft-refresh"] #discover-empty-state[hidden] {
    display: none !important;
}

/* Task 8 profile control center */
#profile-page[data-ui-scope="brand-soft-refresh"] {
    --profile-icon-purple: #6958ce;
    --profile-icon-blue: #3e7fbe;
    --profile-icon-cyan: #177e82;
    --profile-icon-rose: #d63d78;
    --profile-icon-warm: #c85a3f;
    --profile-icon-danger: #c44958;
    --profile-icon-neutral: #655c72;
    --profile-icon-brand-anchor: color-mix(in srgb, var(--bs-accent) 58%, var(--bs-violet));
    --profile-icon-warm-bridge: color-mix(in srgb, var(--bs-accent) 72%, var(--bs-violet));
    --profile-icon-cool-bridge: color-mix(in srgb, var(--profile-icon-blue) 55%, var(--bs-violet));
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: contain;
    scrollbar-width: none;
    background:
        radial-gradient(circle at 94% 3%, rgba(255, 79, 138, 0.08), transparent 24%),
        radial-gradient(circle at 4% 34%, rgba(139, 92, 246, 0.06), transparent 25%);
}

body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] {
    --profile-icon-purple: #bfa6ff;
    --profile-icon-blue: #96a7f4;
    --profile-icon-cyan: #78c2ce;
    --profile-icon-rose: #ff91b6;
    --profile-icon-warm: #ff9b7a;
    --profile-icon-danger: #ff8c9a;
    --profile-icon-neutral: #bbafc6;
}

#profile-page[data-ui-scope="brand-soft-refresh"]::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-shell {
    display: grid;
    width: min(100%, 430px);
    max-width: 430px;
    margin: 0 auto;
    gap: 12px;
    padding: 14px 14px max(32px, calc(var(--bottom-nav-height, 72px) + env(safe-area-inset-bottom, 0px) + 20px));
    box-sizing: border-box;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-identity-card {
    display: grid !important;
    grid-template-columns: 52px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 11px !important;
    min-height: 0 !important;
    padding: 12px !important;
    border: 1px solid color-mix(in srgb, var(--bs-accent) 28%, var(--bs-border)) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 92% 8%, rgba(255, 79, 138, 0.14), transparent 34%),
        linear-gradient(135deg, color-mix(in srgb, var(--bs-accent) 6%, var(--bs-surface)), var(--bs-surface)) !important;
    color: var(--bs-text) !important;
    box-shadow: 0 14px 34px rgba(42, 25, 70, 0.08) !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-avatar {
    width: 52px !important;
    height: 52px !important;
    flex: 0 0 52px !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .single-avatar {
    border-radius: 50% !important;
    background:
        radial-gradient(circle at 50% 28%, rgba(255, 255, 255, 0.78) 0 18%, transparent 19%),
        linear-gradient(145deg, #ff8bb4, #8b5cf6) !important;
    border: 1px solid rgba(255, 255, 255, 0.58) !important;
    box-shadow: 0 10px 24px rgba(139, 92, 246, 0.2) !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .single-avatar .profile-default-icon {
    color: rgba(255, 255, 255, 0.94) !important;
    font-size: 20px !important;
}

/* Task 2 Profile avatar saved visual state */
#profile-page[data-ui-scope="brand-soft-refresh"] #profile-single-avatar > .profile-avatar-image,
#edit-profile-page .avatar-preview > .profile-avatar-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: inherit;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-identity-copy {
    display: grid !important;
    gap: 4px;
    min-width: 0;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-name-row {
    display: flex !important;
    min-width: 0;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap;
    gap: 7px !important;
    margin: 0 !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-name {
    min-width: 0;
    color: var(--bs-text) !important;
    font-size: 17px !important;
    line-height: 1.2;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-bio {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 !important;
    color: var(--bs-muted) !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-pro-entry {
    display: inline-flex;
    flex: 0 0 auto;
    width: fit-content;
    min-height: 30px;
    align-items: center;
    gap: 4px;
    margin: 0;
    padding: 0 8px;
    border: 1px solid rgba(255, 79, 138, 0.34);
    border-radius: 999px;
    background: color-mix(in srgb, var(--bs-accent) 7%, var(--bs-surface));
    color: var(--bs-accent);
    font: inherit;
    font-size: 12px;
    font-weight: 750;
    cursor: pointer;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-pro-entry .fa-chevron-right {
    font-size: 9px;
    opacity: 0.72;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-status-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-status-card {
    display: grid;
    align-content: center;
    min-width: 0;
    min-height: 68px;
    padding: 10px 9px;
    border: 1px solid var(--bs-border);
    border-radius: 14px;
    background: var(--bs-surface);
    box-shadow: 0 8px 22px rgba(42, 25, 70, 0.05);
    text-align: center;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-status-label {
    overflow: hidden;
    color: var(--bs-muted);
    font-size: 11px;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-status-card strong {
    overflow: hidden;
    margin-top: 5px;
    color: var(--bs-text);
    font-size: 12px;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-panel {
    margin: 0 !important;
    border: 1px solid var(--bs-border) !important;
    border-radius: 18px !important;
    background: var(--bs-surface) !important;
    box-shadow: 0 12px 30px rgba(42, 25, 70, 0.06) !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-section-heading {
    padding: 0 1px 10px;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-section-heading h2 {
    margin: 0;
    color: var(--bs-text);
    font-size: 15px;
    line-height: 1.3;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-section {
    padding: 14px !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-card,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .menu-item {
    --profile-icon-accent: var(--profile-icon-neutral);
    --profile-icon-cross-blend: var(--profile-icon-brand-anchor);
    --profile-icon-tone: color-mix(in srgb, var(--profile-icon-accent) 86%, var(--profile-icon-cross-blend));
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-secondary-target="privacy"],
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-secondary-target="ai-disclaimer"] {
    --profile-icon-accent: var(--profile-icon-purple);
    --profile-icon-cross-blend: var(--profile-icon-warm-bridge);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-page="settings"],
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-page="help"] {
    --profile-icon-accent: var(--profile-icon-blue);
    --profile-icon-cross-blend: var(--profile-icon-warm-bridge);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card #language-switch-btn,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-secondary-target="support"] {
    --profile-icon-accent: var(--profile-icon-cyan);
    --profile-icon-cross-blend: var(--profile-icon-warm-bridge);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-card[data-demo-action="start-analysis"],
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-page="edit-profile"] {
    --profile-icon-accent: var(--profile-icon-rose);
    --profile-icon-cross-blend: var(--profile-icon-cool-bridge);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card #delete-account-btn {
    --profile-icon-accent: var(--profile-icon-danger);
    --profile-icon-cross-blend: var(--profile-icon-brand-anchor);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-card[data-demo-action="new-chat"] {
    --profile-icon-accent: var(--profile-icon-purple);
    --profile-icon-cross-blend: var(--profile-icon-warm-bridge);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-card[data-demo-nav="discover"] {
    --profile-icon-accent: var(--profile-icon-blue);
    --profile-icon-cross-blend: var(--profile-icon-warm-bridge);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card #profile-notifications-entry,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-feature-gate="membership"] {
    --profile-icon-accent: var(--profile-icon-warm);
    --profile-icon-cross-blend: var(--profile-icon-brand-anchor);
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item[data-page="about"],
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card #logout-btn {
    --profile-icon-accent: var(--profile-icon-neutral);
    --profile-icon-cross-blend: var(--profile-icon-brand-anchor);
}

body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-card,
body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item,
body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .menu-item {
    --profile-icon-tone: color-mix(in srgb, var(--profile-icon-accent) 82%, var(--profile-icon-brand-anchor));
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-grid .profile-quick-card {
    display: flex !important;
    min-width: 0;
    min-height: 108px !important;
    flex-direction: column;
    align-items: center !important;
    justify-content: flex-start;
    gap: 5px;
    padding: 10px 7px !important;
    border: 1px solid color-mix(in srgb, var(--profile-icon-tone) 20%, var(--bs-border)) !important;
    border-radius: 14px !important;
    background: color-mix(in srgb, var(--profile-icon-tone) 5%, var(--bs-surface)) !important;
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--bs-surface) 78%, transparent) !important;
    text-align: center !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-grid .menu-icon {
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    border-radius: 13px !important;
    background: color-mix(in srgb, var(--profile-icon-tone) 18%, var(--bs-surface)) !important;
    border: 1px solid color-mix(in srgb, var(--profile-icon-tone) 36%, var(--bs-border)) !important;
    color: var(--profile-icon-tone) !important;
    box-shadow:
        0 5px 14px color-mix(in srgb, var(--profile-icon-tone) 8%, transparent),
        inset 0 1px 0 color-mix(in srgb, var(--bs-surface) 72%, transparent) !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-copy {
    display: grid;
    flex: 0 0 auto;
    align-content: start;
    gap: 4px;
    width: 100%;
    text-align: center;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-title {
    display: -webkit-box;
    overflow: hidden;
    color: var(--bs-text) !important;
    font-size: 12px !important;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-desc {
    display: block;
    overflow: visible;
    color: var(--bs-muted) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    -webkit-line-clamp: unset;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card {
    overflow: hidden;
    padding: 0 !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .profile-section-heading,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .profile-section-heading {
    padding: 14px 14px 10px;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-menu,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-account-actions-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
    gap: 0 !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] #language-switch-btn {
    display: flex !important;
    min-height: 44px !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-item,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .menu-item {
    width: 100%;
    min-width: 0;
    min-height: 66px !important;
    box-sizing: border-box;
    margin: 0 !important;
    padding: 10px 13px !important;
    border: 0 !important;
    border-top: 1px solid var(--bs-border) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-icon,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .menu-icon {
    width: 38px !important;
    height: 38px !important;
    margin-right: 11px !important;
    border-radius: 12px !important;
    background: color-mix(in srgb, var(--profile-icon-tone) 18%, var(--bs-surface)) !important;
    border: 1px solid color-mix(in srgb, var(--profile-icon-tone) 36%, var(--bs-border)) !important;
    color: var(--profile-icon-tone) !important;
    box-shadow:
        0 5px 14px color-mix(in srgb, var(--profile-icon-tone) 8%, transparent),
        inset 0 1px 0 color-mix(in srgb, var(--bs-surface) 72%, transparent) !important;
    font-size: 15px !important;
}

body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] .profile-quick-grid .menu-icon,
body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-icon,
body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .menu-icon {
    background: color-mix(in srgb, var(--profile-icon-tone) 16%, var(--bs-surface)) !important;
    border: 1px solid color-mix(in srgb, var(--profile-icon-tone) 34%, var(--bs-border)) !important;
    box-shadow:
        0 5px 14px color-mix(in srgb, var(--profile-icon-tone) 6%, transparent),
        inset 0 1px 0 color-mix(in srgb, var(--bs-surface) 66%, transparent) !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-title,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .menu-title {
    color: var(--bs-text) !important;
    font-size: 13px !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-subtitle,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .menu-subtitle {
    display: -webkit-box;
    overflow: hidden;
    color: var(--bs-muted) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-settings-card .menu-arrow {
    margin-left: 8px !important;
    color: var(--bs-muted) !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-menu-accessory {
    display: inline-flex;
    flex: 0 0 auto;
    min-width: 0;
    max-width: 104px;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    margin-left: 8px;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-menu-value {
    overflow: hidden;
    max-width: 82px;
    padding: 4px 7px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--bs-violet) 9%, var(--bs-surface));
    color: color-mix(in srgb, var(--bs-violet) 62%, var(--bs-text));
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-menu-accessory .menu-arrow {
    display: inline-block !important;
    margin-left: 0 !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-entry-status {
    flex: 0 0 auto;
    max-width: 96px;
    margin-left: 8px;
    padding: 5px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--bs-violet) 12%, transparent);
    color: var(--bs-violet);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card {
    margin-top: 0 !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .logout-item,
#profile-page[data-ui-scope="brand-soft-refresh"] .profile-exit-card .delete-account-item {
    background: transparent !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] .profile-pro-entry:focus-visible,
#profile-page[data-ui-scope="brand-soft-refresh"] .menu-item:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--bs-accent) 58%, transparent);
    outline-offset: -2px;
}


/* Task 6 relationship result refresh */
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-result-shell {
    display: grid;
    gap: 12px;
    padding: 14px 14px calc(var(--bottom-nav-height, 72px) + 28px) !important;
    background:
        radial-gradient(circle at 94% 4%, rgba(255, 79, 138, 0.08), transparent 24%),
        radial-gradient(circle at 8% 22%, rgba(139, 92, 246, 0.07), transparent 24%);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-loading-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-decision-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-next-action-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-summary-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-replies-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reasoning-section {
    margin: 0 !important;
    border: 1px solid var(--bs-border) !important;
    border-radius: 18px !important;
    background: var(--bs-surface) !important;
    color: var(--bs-text) !important;
    box-shadow: 0 14px 34px rgba(42, 25, 70, 0.07) !important;
}

body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-loading-card,
body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-card,
body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-decision-card,
body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-next-action-card,
body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-summary-card,
body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-replies-card,
body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reasoning-section {
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22) !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] #relationship-loading-card[hidden] {
    display: none !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-card {
    display: grid;
    gap: 15px;
    padding: 17px !important;
    overflow: visible !important;
    background:
        radial-gradient(circle at 94% 4%, rgba(255, 79, 138, 0.11), transparent 30%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(255, 248, 252, 0.9)) !important;
}

body.dark-mode #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-card {
    background:
        radial-gradient(circle at 92% 4%, rgba(255, 79, 138, 0.14), transparent 32%),
        linear-gradient(145deg, rgba(24, 22, 35, 0.98), rgba(18, 18, 29, 0.96)) !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-card::after {
    content: none !important;
    display: none !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-copy {
    min-width: 0;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-copy h3 {
    margin: 5px 0 7px !important;
    color: var(--bs-text) !important;
    font-size: 25px !important;
    line-height: 1.14;
    letter-spacing: -0.035em;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-stage-copy > p {
    margin: 0;
    color: var(--bs-muted) !important;
    font-size: 13px;
    line-height: 1.55;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .funnel-context-hint {
    margin-top: 13px;
    padding: 11px 12px;
    border: 1px solid color-mix(in srgb, var(--bs-violet) 22%, transparent);
    border-radius: 13px;
    background: color-mix(in srgb, var(--bs-violet) 7%, transparent);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .funnel-context-hint strong {
    display: block;
    margin-top: 4px;
    color: var(--bs-text);
    font-size: 13px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .funnel-context-hint p {
    margin: 4px 0 0;
    color: var(--bs-muted) !important;
    font-size: 11px;
    line-height: 1.45;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 148px;
    gap: 8px 14px;
    padding: 15px;
    border: 1px solid color-mix(in srgb, var(--bs-violet) 25%, transparent);
    border-radius: 18px;
    background:
        radial-gradient(circle at 83% 18%, rgba(255, 79, 138, 0.14), transparent 35%),
        radial-gradient(circle at 68% 40%, rgba(147, 124, 255, 0.10), transparent 42%),
        var(--bs-surface-soft);
    overflow: hidden;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-card[hidden] {
    display: none !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-copy {
    align-self: start;
    min-width: 0;
    padding-top: 8px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-copy p {
    margin: 7px 0 0;
    color: var(--bs-muted) !important;
    font-size: 11px;
    line-height: 1.5;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-visual {
    width: 148px;
    height: 148px;
    place-self: start end;
    transform: translateY(-6px);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] #relationship-metrics-canvas {
    display: block;
    width: 100% !important;
    height: 100% !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] #relationship-metrics-canvas[hidden] {
    display: none !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-canvas-fallback {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 12px;
    border: 1px dashed var(--bs-border);
    border-radius: 14px;
    color: var(--bs-muted) !important;
    font-size: 11px;
    line-height: 1.45;
    text-align: center;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-canvas-fallback[hidden] {
    display: none;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metrics-list {
    grid-column: 1 / -1;
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-row {
    min-width: 0;
    padding: 12px;
    border: 1px solid color-mix(in srgb, var(--bs-border) 86%, transparent);
    border-radius: 14px;
    background: color-mix(in srgb, var(--bs-surface) 80%, transparent);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-row-heading,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-endpoints {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-row-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: baseline;
    gap: 6px 10px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-name {
    min-width: 0;
    color: var(--bs-text);
    font-size: 13px;
    font-weight: 680;
    justify-self: start;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-score {
    color: var(--bs-accent);
    font-size: 15px;
    font-variant-numeric: tabular-nums;
    justify-self: center;
    letter-spacing: -0.02em;
    white-space: nowrap;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-confidence {
    color: color-mix(in srgb, var(--bs-violet) 82%, var(--bs-text));
    font-size: 10px;
    font-weight: 650;
    justify-self: end;
    line-height: 1.35;
    max-width: 100%;
    text-align: right;
    white-space: nowrap;
}

html[lang^="en"] #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-name {
    font-size: 12px;
    line-height: 1.25;
}

html[lang^="en"] #relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-confidence {
    overflow-wrap: anywhere;
    white-space: normal;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-axis {
    position: relative;
    height: 30px;
    margin: 6px 0 0;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-axis-track {
    position: absolute;
    inset: 18px 0 auto;
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(90deg, #697081 0%, #77769a 18%, #9273b2 36%, #bd69b7 56%, #e95e9e 78%, #ff4f8a 100%);
    box-shadow: 0 0 10px rgba(189, 105, 183, 0.18);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-axis-label {
    position: absolute;
    top: 0;
    z-index: 2;
    color: color-mix(in srgb, var(--bs-accent) 78%, var(--bs-text));
    font-size: 9px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    transform: translateX(-50%);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-axis-label[data-edge="start"] {
    transform: translateX(0);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-axis-label[data-edge="end"] {
    transform: translateX(-100%);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-axis-marker {
    position: absolute;
    top: 21px;
    z-index: 3;
    width: 14px;
    height: 14px;
    border: 3px solid var(--bs-surface);
    border-radius: 50%;
    background: #ff4f8a;
    box-shadow: 0 0 0 2px rgba(255, 79, 138, 0.42), 0 0 14px rgba(255, 79, 138, 0.42);
    transform: translate(-50%, -50%);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-endpoints {
    color: var(--bs-muted);
    font-size: 10px;
    line-height: 1.35;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-explanation {
    display: grid;
    gap: 3px;
    margin-top: 7px;
    padding-top: 7px;
    border-top: 1px solid color-mix(in srgb, var(--bs-border) 58%, transparent);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-reason,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-evidence {
    margin: 0;
    color: var(--bs-muted) !important;
    font-size: 11px;
    line-height: 1.5;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-reason-label::after,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-evidence-label::after {
    content: ': ';
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-metric-evidence {
    opacity: 0.88;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-decision-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0 !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-decision-card {
    min-width: 0;
    padding: 14px !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-decision-card h4 {
    margin: 7px 0 5px;
    color: var(--bs-text) !important;
    font-size: 15px;
    line-height: 1.3;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-decision-card p {
    margin: 0;
    color: var(--bs-muted) !important;
    font-size: 11px;
    line-height: 1.45;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-next-action-card {
    padding: 16px !important;
    border-color: color-mix(in srgb, var(--bs-accent) 38%, transparent) !important;
    background:
        radial-gradient(circle at 92% 12%, rgba(255, 79, 138, 0.14), transparent 34%),
        linear-gradient(135deg, color-mix(in srgb, var(--bs-accent) 7%, var(--bs-surface)), var(--bs-surface)) !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-next-action-card h4 {
    margin: 8px 0 6px;
    color: var(--bs-text) !important;
    font-size: 18px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-next-action-card p,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-summary-card p,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-replies-card p {
    color: var(--bs-muted) !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-summary-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-replies-card {
    padding: 15px !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-replies-list {
    display: grid;
    gap: 9px;
    margin-top: 12px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reply-card {
    padding: 12px !important;
    border: 1px solid var(--bs-border) !important;
    border-radius: 14px !important;
    background: var(--bs-surface-soft) !important;
    box-shadow: none !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reply-card[data-reply-role="recommended"] {
    border-color: color-mix(in srgb, var(--bs-accent) 45%, transparent) !important;
    background: color-mix(in srgb, var(--bs-accent) 7%, var(--bs-surface)) !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reply-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reply-heading strong {
    color: var(--bs-text);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reply-heading span {
    padding: 3px 7px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--bs-violet) 12%, transparent);
    color: var(--bs-violet);
    font-size: 9px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reasoning-section {
    overflow: hidden;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reasoning-toggle {
    padding: 13px 15px;
    color: var(--bs-text);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reasoning-toggle-hint {
    color: var(--bs-muted);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reasoning-body {
    display: grid;
    gap: 10px;
    padding: 0 12px 12px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-signal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-signal-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-avoid-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-reasoning-body .relationship-summary-card {
    margin: 0 !important;
    padding: 12px !important;
    border: 1px solid var(--bs-border) !important;
    border-radius: 14px !important;
    background: var(--bs-surface-soft) !important;
    box-shadow: none !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-signal-list {
    margin: 8px 0 0;
    padding: 0;
    list-style: none;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-signal-list li {
    padding: 7px 0;
    border-bottom: 1px solid var(--bs-border);
    color: var(--bs-text);
    font-size: 11px;
    line-height: 1.45;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-signal-list li:last-child {
    border-bottom: 0;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-signal-text,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-evidence {
    display: block;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-evidence {
    margin-top: 4px;
    color: var(--bs-muted) !important;
    font-size: 10px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-empty-state {
    padding: 9px !important;
    border: 1px dashed var(--bs-border) !important;
    border-radius: 10px;
    color: var(--bs-muted) !important;
    font-style: italic;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-context-chips {
    margin-top: 10px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-context-snippet {
    margin-top: 9px;
    border-color: var(--bs-border) !important;
    background: color-mix(in srgb, var(--bs-violet) 5%, transparent) !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-confidence-label {
    color: var(--bs-accent);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-action-card,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-continue-card {
    padding: 15px !important;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-entry-actions {
    gap: 9px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-primary-btn,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-secondary-btn {
    border-radius: 12px;
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-result-feedback {
    margin-top: 12px;
    padding-top: 11px;
    border-top: 1px solid var(--bs-border);
}

#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .relationship-card-label,
#relationship-analysis-result-page[data-ui-scope="brand-soft-refresh"] .discover-eyebrow {
    color: var(--bs-violet);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* End Task 6 relationship result refresh */

/* Discover detail sticky action bar */
#content-detail-page .discover-detail-page {
    padding-top: 0 !important;
}

#content-detail-page .discover-detail-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 150 !important;
    min-height: 58px;
    margin: 0 -16px 14px !important;
    padding: 7px 16px !important;
    box-sizing: border-box !important;
    border-radius: 0 0 22px 22px !important;
    overflow: hidden !important;
    background: rgba(255, 248, 251, 0.9);
    -webkit-backdrop-filter: blur(18px) saturate(1.12);
    backdrop-filter: blur(18px) saturate(1.12);
}

body.dark-mode #content-detail-page .discover-detail-header {
    background: rgba(17, 19, 24, 0.9);
}

html[data-platform="capacitor"] #content-detail-page .discover-detail-header {
    margin: 0 -16px 14px !important;
    padding: 7px 12px !important;
    border-radius: 0 0 22px 22px !important;
}

/* Relationship navigation uses a branded control in light mode instead of a white card. */
body:not(.dark-mode) #relationship-analysis-page .relationship-page-header .back-btn,
body:not(.dark-mode) #relationship-analysis-result-page .relationship-page-header .back-btn,
body:not(.dark-mode) #relationship-history-page .relationship-page-header .back-btn {
    background: rgba(var(--brand-pink-rgb), 0.10) !important;
    border-color: rgba(var(--brand-pink-rgb), 0.18) !important;
    color: var(--text-color) !important;
    box-shadow: 0 6px 16px rgba(var(--brand-pink-rgb), 0.08) !important;
}

body:not(.dark-mode) #relationship-analysis-page .relationship-page-header .back-btn:active,
body:not(.dark-mode) #relationship-analysis-result-page .relationship-page-header .back-btn:active,
body:not(.dark-mode) #relationship-history-page .relationship-page-header .back-btn:active {
    background: rgba(var(--brand-pink-rgb), 0.16) !important;
}

/* Native pushed pages reveal the same outer wallpaper as the status bar.
   Keep controls styled, but do not add a full-width surface at the safe-area edge. */
html[data-platform="capacitor"] body :is(
    #relationship-analysis-page,
    #relationship-analysis-result-page,
    #relationship-history-page,
    #content-detail-page,
    #article-page,
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page
) {
    background: transparent !important;
}

/* Structural content wrappers must not restart a second gradient below the
   native header. They all reveal the same viewport-anchored app wallpaper. */
html[data-platform="capacitor"] body .app-page[data-hide-nav="true"] > .page-content,
html[data-platform="capacitor"] body #content-detail-page .discover-detail-page,
html[data-platform="capacitor"] body #chat-page .chat-page,
html[data-platform="capacitor"] body #chat-page .chat-content,
html[data-platform="capacitor"] body #chat-page .chat-container {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

html[data-platform="capacitor"] body :is(
    #relationship-analysis-page,
    #relationship-analysis-result-page,
    #relationship-history-page,
    #article-page,
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page,
    #register-page
) > .page-header,
html[data-platform="capacitor"] body #content-detail-page .discover-detail-header {
    background: transparent !important;
    border: 0 !important;
    box-shadow:
        inset 0 -1px 0 rgba(0, 0, 0, 0),
        0 0 0 rgba(0, 0, 0, 0) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    transition:
        background-color 180ms ease,
        box-shadow 180ms ease,
        -webkit-backdrop-filter 180ms ease,
        backdrop-filter 180ms ease !important;
}

/* Match iOS scroll-edge behavior: the wallpaper stays uninterrupted at the
   top, then the sticky header gains a quiet material surface once content
   begins moving behind it. */
html[data-platform="capacitor"] body :is(
    #relationship-analysis-page,
    #relationship-analysis-result-page,
    #relationship-history-page,
    #article-page,
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page,
    #register-page
).has-scrolled-header > .page-header,
html[data-platform="capacitor"] body #content-detail-page.has-scrolled-header .discover-detail-header {
    background: rgba(255, 248, 252, 0.94) !important;
    border: 0 !important;
    box-shadow:
        inset 0 -1px 0 rgba(71, 48, 87, 0.10),
        0 8px 24px rgba(55, 34, 74, 0.06) !important;
    -webkit-backdrop-filter: saturate(1.18) blur(18px) !important;
    backdrop-filter: saturate(1.18) blur(18px) !important;
}

html[data-platform="capacitor"] body.dark-mode :is(
    #relationship-analysis-page,
    #relationship-analysis-result-page,
    #relationship-history-page,
    #article-page,
    #edit-profile-page,
    #settings-page,
    #vip-page,
    #help-page,
    #about-page,
    #terms-page,
    #privacy-page,
    #ai-disclaimer-page,
    #support-page,
    .legal-page,
    #register-page
).has-scrolled-header > .page-header,
html[data-platform="capacitor"] body.dark-mode #content-detail-page.has-scrolled-header .discover-detail-header {
    background: rgba(23, 18, 31, 0.94) !important;
    border: 0 !important;
    box-shadow:
        inset 0 -1px 0 rgba(255, 255, 255, 0.09),
        0 8px 24px rgba(0, 0, 0, 0.18) !important;
}

@media (prefers-reduced-motion: reduce) {
    html[data-platform="capacitor"] body .app-page[data-hide-nav="true"] .page-header,
    html[data-platform="capacitor"] body #register-page > .page-header,
    html[data-platform="capacitor"] body #content-detail-page .discover-detail-header {
        transition: none !important;
    }
}

/* Browser QA refinements: keep Home compact and FAQ cards visually single-layered. */
#home-page[data-ui-scope="brand-soft-refresh"] .home-topbar {
    padding-top: max(10px, env(safe-area-inset-top, 0px)) !important;
    margin-bottom: 6px !important;
}

html[data-platform="web"][data-display-mode="standalone"] #home-page[data-ui-scope="brand-soft-refresh"] .home-topbar {
    padding-top: 10px !important;
}

/* Standalone PWA pushed-page headers use the same scroll-edge appearance as
   the native iOS shell: uninterrupted wallpaper first, quiet material only
   after content starts moving behind the sticky header. Including the register
   ID in :is() keeps this override above legacy page-specific !important rules. */
html[data-platform="web"][data-display-mode="standalone"] body :is(.app-page[data-hide-nav="true"], #register-page) > .page-header,
html[data-platform="web"][data-display-mode="standalone"] body #content-detail-page .discover-detail-header {
    background: transparent !important;
    border: 0 !important;
    box-shadow:
        inset 0 -1px 0 rgba(0, 0, 0, 0),
        0 0 0 rgba(0, 0, 0, 0) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    transition:
        background-color 180ms ease,
        box-shadow 180ms ease,
        -webkit-backdrop-filter 180ms ease,
        backdrop-filter 180ms ease !important;
}

html[data-platform="web"][data-display-mode="standalone"] body :is(.app-page[data-hide-nav="true"], #register-page).has-scrolled-header > .page-header,
html[data-platform="web"][data-display-mode="standalone"] body #content-detail-page.has-scrolled-header .discover-detail-header {
    background: rgba(255, 248, 252, 0.94) !important;
    border: 0 !important;
    box-shadow:
        inset 0 -1px 0 rgba(71, 48, 87, 0.10),
        0 8px 24px rgba(55, 34, 74, 0.06) !important;
    -webkit-backdrop-filter: saturate(1.18) blur(18px) !important;
    backdrop-filter: saturate(1.18) blur(18px) !important;
}

html[data-platform="web"][data-display-mode="standalone"] body.dark-mode :is(.app-page[data-hide-nav="true"], #register-page).has-scrolled-header > .page-header,
html[data-platform="web"][data-display-mode="standalone"] body.dark-mode #content-detail-page.has-scrolled-header .discover-detail-header {
    background: rgba(23, 18, 31, 0.94) !important;
    border: 0 !important;
    box-shadow:
        inset 0 -1px 0 rgba(255, 255, 255, 0.09),
        0 8px 24px rgba(0, 0, 0, 0.18) !important;
    -webkit-backdrop-filter: saturate(1.18) blur(18px) !important;
    backdrop-filter: saturate(1.18) blur(18px) !important;
}

@media (prefers-reduced-motion: reduce) {
    html[data-platform="web"][data-display-mode="standalone"] body :is(.app-page[data-hide-nav="true"], #register-page) > .page-header,
    html[data-platform="web"][data-display-mode="standalone"] body #content-detail-page .discover-detail-header {
        transition: none !important;
    }
}

#help-page .faq-item {
    padding: 0 !important;
    overflow: hidden !important;
    background-clip: padding-box !important;
}

#help-page .faq-question,
#help-page .faq-answer {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Annotation follow-up: secondary pages share one compact content rhythm and
   Help/About reuse the same card surface instead of one-off gradients. */
.legal-page .legal-shell {
    gap: 14px !important;
}

.legal-page .legal-section-card h4 {
    margin: 0 0 10px !important;
}

#help-page .search-box {
    min-height: 44px !important;
    padding: 0 14px !important;
    border-radius: 16px !important;
}

#help-page .faq-section {
    padding: 0 !important;
}

#help-page .faq-question {
    min-height: 54px !important;
    padding: 13px 16px !important;
    align-items: center !important;
}

body:not(.dark-mode) #help-page .contact-section,
body.dark-mode #help-page .contact-section,
body:not(.dark-mode) #about-page .contact-section,
body.dark-mode #about-page .contact-section {
    border: 1px solid var(--border-soft) !important;
    border-radius: 22px !important;
    box-shadow: var(--shadow-soft) !important;
}

body:not(.dark-mode) #help-page .contact-section,
body:not(.dark-mode) #about-page .contact-section {
    background:
        radial-gradient(circle at 96% 0%, rgba(var(--brand-purple-rgb), 0.06), transparent 32%),
        var(--card-bg) !important;
}

body.dark-mode #help-page .contact-section,
body.dark-mode #about-page .contact-section {
    background:
        radial-gradient(circle at 96% 0%, rgba(207, 102, 255, 0.07), transparent 32%),
        var(--card-bg) !important;
}

/* Profile and Edit Profile share one default avatar artwork until a saved image exists. */
#profile-page[data-ui-scope="brand-soft-refresh"] #profile-single-avatar:not(.has-avatar),
#edit-profile-page .avatar-preview:not(.has-avatar) {
    background:
        linear-gradient(36deg, transparent 44%, rgba(255, 255, 255, 0.72) 48%, rgba(255, 123, 155, 0.30) 53%, transparent 61%),
        repeating-radial-gradient(circle, transparent 0 15%, rgba(var(--brand-purple-rgb), 0.28) 16% 18%),
        radial-gradient(circle at 50% 50%, rgba(var(--brand-pink-rgb), 0.70) 0 8%, rgba(var(--brand-pink-rgb), 0.18) 9% 28%, transparent 46%),
        linear-gradient(135deg, rgba(var(--brand-pink-rgb), 0.16), rgba(var(--brand-purple-rgb), 0.22)) !important;
    border: 1px solid rgba(var(--brand-pink-rgb), 0.24) !important;
}

body.dark-mode #profile-page[data-ui-scope="brand-soft-refresh"] #profile-single-avatar:not(.has-avatar),
body.dark-mode #edit-profile-page .avatar-preview:not(.has-avatar) {
    background:
        linear-gradient(36deg, transparent 44%, rgba(255, 123, 155, 0.90) 48%, rgba(201, 149, 234, 0.34) 53%, transparent 61%),
        repeating-radial-gradient(circle, transparent 0 15%, rgba(201, 149, 234, 0.36) 16% 18%),
        radial-gradient(circle at 50% 50%, rgba(255, 123, 155, 0.78) 0 8%, rgba(147, 124, 255, 0.22) 9% 28%, transparent 46%),
        linear-gradient(135deg, rgba(255, 123, 155, 0.18), rgba(147, 124, 255, 0.24)) !important;
}

#profile-page[data-ui-scope="brand-soft-refresh"] #profile-single-avatar > .profile-brand-avatar,
#edit-profile-page .avatar-preview > .profile-brand-avatar {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: inherit;
}

#profile-page[data-ui-scope="brand-soft-refresh"] #profile-single-avatar.has-avatar > .profile-brand-avatar,
#edit-profile-page .avatar-preview.has-avatar > .profile-brand-avatar {
    display: none;
}

#relationship-history-page .relationship-timeline-node:disabled {
    cursor: default;
    opacity: 0.62;
}

#relationship-history-page .relationship-timeline-node:disabled:hover,
#relationship-history-page .relationship-timeline-node:disabled:focus-visible {
    background: transparent;
}

#relationship-history-page .relationship-timeline-node:disabled .relationship-timeline-dot {
    filter: grayscale(1);
}

/* Chat reply progress: branded feedback with coarse, verifiable stages only. */
#chat-page[data-ui-scope="brand-soft-refresh"] .message.ai-message.chat-reply-progress,
#chat-page[data-ui-scope="brand-soft-refresh"] .message.ai-message.chat-attachment-progress {
    width: min(100%, 320px) !important;
    max-width: min(100%, 320px) !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] :is(
    .chat-reply-progress,
    .chat-attachment-progress
) .message-content {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    overflow: visible !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-panel {
    width: 100%;
    color: var(--bs-text);
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-toggle {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 5px 0;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-toggle:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--bs-accent) 62%, transparent);
    outline-offset: 3px;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-theme-icon {
    display: block;
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    border-radius: 7px;
    box-shadow: 0 6px 16px rgba(var(--brand-purple-rgb), 0.18);
    overflow: hidden;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-theme-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-title {
    flex: 0 1 auto;
    min-width: 0;
    padding: 0 7px 0 8px;
    background: linear-gradient(100deg, var(--bs-accent) 0%, var(--bs-violet) 45%, var(--bs-accent) 100%);
    background-size: 210% 100%;
    background-position: 100% 50%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    font-size: 14px;
    font-weight: 680;
    line-height: 1.35;
    animation: chatProgressTitleSweep 2.2s ease-in-out infinite;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-chevron {
    display: inline-grid;
    flex: 0 0 24px;
    place-items: center;
    width: 24px;
    height: 44px;
    color: var(--bs-accent);
    font-size: 12px;
    transition: transform 180ms ease, color 180ms ease;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-panel[data-expanded="true"] .chat-progress-chevron {
    color: var(--bs-accent);
    transform: rotate(180deg);
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-details {
    margin: 3px 0 4px 30px;
    padding: 10px 12px;
    border: 1px solid var(--bs-border);
    border-radius: 12px;
    background: color-mix(in srgb, var(--bs-accent) 5%, var(--bs-surface));
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-details[hidden] {
    display: none !important;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage-list {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage {
    display: grid;
    grid-template-columns: 15px minmax(0, 1fr);
    align-items: start;
    gap: 7px;
    color: var(--bs-muted);
    font-size: 12px;
    line-height: 1.45;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage-marker {
    display: inline-grid;
    place-items: center;
    width: 15px;
    height: 17px;
    color: color-mix(in srgb, var(--bs-muted) 48%, transparent);
    font-size: 5px;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage[data-state="complete"] {
    color: color-mix(in srgb, var(--bs-text) 68%, var(--bs-muted));
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage[data-state="complete"] .chat-progress-stage-marker {
    color: var(--bs-accent);
    font-size: 9px;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage[data-state="active"] {
    color: var(--bs-text);
    font-weight: 620;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage[data-state="active"] .chat-progress-stage-marker {
    color: var(--bs-violet);
    animation: chatProgressMarkerPulse 1.4s ease-in-out infinite;
}

@keyframes chatProgressTitleSweep {
    0%, 100% {
        background-position: 100% 50%;
    }

    50% {
        background-position: 0% 50%;
    }
}

@keyframes chatProgressMarkerPulse {
    0%, 100% {
        opacity: 0.48;
        transform: scale(0.84);
    }

    50% {
        opacity: 1;
        transform: scale(1.12);
    }
}

@media (prefers-reduced-motion: reduce) {
    #chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-title,
    #chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-stage[data-state="active"] .chat-progress-stage-marker {
        animation: none !important;
    }

    #chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-chevron {
        transition: none !important;
    }
}

@media (forced-colors: active) {
    #chat-page[data-ui-scope="brand-soft-refresh"] .chat-progress-title {
        background: none;
        color: CanvasText;
        -webkit-text-fill-color: CanvasText;
    }
}

/* Keep the stop control visibly alive while an AI reply is in progress. */
#chat-page[data-ui-scope="brand-soft-refresh"] .chat-send-btn[data-state="stop"] {
    position: relative;
    isolation: isolate;
    overflow: visible;
    animation: chatStopButtonBreathe 1.8s ease-in-out infinite !important;
    will-change: transform, filter;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-send-btn[data-state="stop"]::after {
    position: absolute;
    z-index: 0;
    inset: -5px;
    border: 2px solid rgba(var(--brand-pink-rgb), 0.46);
    border-radius: inherit;
    box-shadow: 0 0 16px rgba(var(--brand-pink-rgb), 0.24);
    content: "";
    pointer-events: none;
    animation: chatStopButtonHalo 1.8s ease-in-out infinite;
}

#chat-page[data-ui-scope="brand-soft-refresh"] .chat-send-btn[data-state="stop"] i {
    position: relative;
    z-index: 1;
}

@keyframes chatStopButtonBreathe {
    0%, 100% {
        filter: brightness(0.98) saturate(0.96);
        transform: scale(0.98);
    }

    50% {
        filter: brightness(1.08) saturate(1.06);
        transform: scale(1.035);
    }
}

@keyframes chatStopButtonHalo {
    0%, 100% {
        opacity: 0.18;
        transform: scale(0.9);
    }

    50% {
        opacity: 0.72;
        transform: scale(1.14);
    }
}

@media (prefers-reduced-motion: reduce) {
    #chat-page[data-ui-scope="brand-soft-refresh"] .chat-send-btn[data-state="stop"] {
        animation: none !important;
        filter: none;
        transform: none;
    }

    #chat-page[data-ui-scope="brand-soft-refresh"] .chat-send-btn[data-state="stop"]::after {
        animation: none !important;
        opacity: 0.46;
        transform: scale(1);
    }
}

@media (forced-colors: active) {
    #chat-page[data-ui-scope="brand-soft-refresh"] .chat-send-btn[data-state="stop"]::after {
        border-color: ButtonText;
        box-shadow: none;
    }
}
