/* Preserve the semantic hidden attribute even on components with explicit display rules. */
[hidden] { display: none !important; }


:root {
    --navy: #072f5f;
    --navy-deep: #05264d;
    --blue: #087cf0;
    --blue-soft: #eaf4ff;
    --page: #f7fbff;
    --surface: #ffffff;
    --line: #dbe8f4;
    --text: #082d61;
    --muted: #55739a;
    --yellow-bg: #fffaf0;
    --yellow-line: #f1c35d;
    --shadow: 0 1px 4px rgba(20, 60, 100, .08);
    --sidebar-width: 215px;
    --sidebar-collapsed: 68px;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--page); }
body {
    margin: 0;
    min-height: 100vh;
    font-family: Arial, Helvetica, sans-serif;
    color: var(--text);
    background:
        radial-gradient(circle at 70% 0%, rgba(210, 232, 250, .35), transparent 35%),
        linear-gradient(#fbfdff, #f5faff);
}
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }

.topbar {
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 50;
    display: grid;
    grid-template-columns: minmax(250px, 360px) minmax(320px, 620px) auto;
    gap: 24px;
    align-items: center;
    padding: 0 24px;
    background: linear-gradient(90deg, var(--navy-deep), var(--navy));
    color: #fff;
    box-shadow: 0 2px 8px rgba(0, 25, 65, .18);
}

.brand {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
}
.brand-mark {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #42c7f4;
    font-size: 20px;
}
.brand-copy {
    display: grid;
    line-height: 1.1;
}
.brand-copy strong { font-size: 21px; letter-spacing: .1px; }
.brand-copy small {
    margin-top: 4px;
    font-size: 12px;
    font-weight: 400;
    opacity: .95;
    white-space: nowrap;
}

.search-wrap {
    height: 43px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 15px;
    border-radius: 7px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .08);
}
.search-wrap:focus-within {
    outline: 2px solid rgba(127, 201, 255, .45);
    background: rgba(255, 255, 255, .19);
}
.search-icon { font-size: 26px; opacity: .95; }
.search-wrap input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    font-size: 14px;
}
.search-wrap input::placeholder { color: rgba(255,255,255,.86); }

.account-area {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
}
.notification-button,
.profile-button,
.icon-button {
    color: #fff;
    border: 0;
    background: transparent;
    cursor: pointer;
}
.notification-button {
    position: relative;
    font-size: 26px;
    line-height: 1;
}
.notification-badge {
    position: absolute;
    top: -8px;
    right: -9px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: #ff2b2b;
    color: white;
    font-size: 11px;
    font-weight: 700;
}
.profile-button {
    display: flex;
    align-items: center;
    gap: 11px;
    font-weight: 700;
}
.avatar {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    background: #fff;
    color: #9db4ce;
    border-radius: 50%;
}
.chevron { font-size: 19px; margin-left: 8px; }

.mobile-menu { display: none; font-size: 24px; }

.app-shell {
    display: flex;
    min-height: calc(100vh - 72px);
}

.sidebar {
    width: var(--sidebar-width);
    flex: 0 0 var(--sidebar-width);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 16px 8px 12px;
    background: rgba(255,255,255,.86);
    border-right: 1px solid var(--line);
    transition: width .2s ease, flex-basis .2s ease;
}
.sidebar.collapsed {
    width: var(--sidebar-collapsed);
    flex-basis: var(--sidebar-collapsed);
}
.sidebar.collapsed .nav-label { display: none; }
.sidebar.collapsed .nav-item,
.sidebar.collapsed .collapse-button {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
}
.sidebar.collapsed .collapse-icon { transform: rotate(180deg); }

.nav-list { display: grid; gap: 6px; }
.nav-item,
.collapse-button {
    min-height: 50px;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 0 13px;
    border-radius: 7px;
    color: #062b65;
    font-size: 15px;
}
.nav-item:hover,
.collapse-button:hover { background: #f0f7ff; }
.nav-item.active {
    color: #087cf0;
    background: #e5f2ff;
    font-weight: 700;
}
.nav-icon {
    width: 25px;
    flex: 0 0 25px;
    text-align: center;
    font-size: 25px;
}
.collapse-button {
    width: 100%;
    border: 0;
    background: transparent;
    cursor: pointer;
}
.collapse-icon {
    width: 25px;
    font-size: 28px;
    transition: transform .2s ease;
}

.main-area {
    width: calc(100% - var(--sidebar-width));
    display: grid;
    grid-template-columns: minmax(0, 1fr) clamp(280px, 23vw, 320px);
    gap: 14px;
    padding: 14px 14px 30px 18px;
}
.feed-column { min-width: 0; }
.page-heading-row h1 {
    margin: 0 0 8px;
    font-size: 31px;
    color: #092e66;
}

.toolbar {
    display: flex;
    align-items: stretch;
    gap: 10px;
    margin-bottom: 12px;
}
.tabs {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    border: 1px solid var(--line);
    border-radius: 8px;
    overflow-x: auto;
    overflow-y: hidden;
    background: #fff;
    scrollbar-width: thin;
    overscroll-behavior-x: contain;
}
.tab {
    flex: 1 0 auto;
    min-width: max-content;
    height: 48px;
    padding: 0 14px;
    border: 0;
    border-right: 1px solid var(--line);
    background: white;
    color: #0a2f68;
    cursor: pointer;
    white-space: nowrap;
}
.tab:last-child { border-right: 0; }
.tab:hover { background: #f5faff; }
.tab.active {
    color: var(--blue);
    font-weight: 700;
    box-shadow: inset 0 -4px var(--blue);
}
.new-complaint-button {
    flex: 0 0 170px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 8px;
    background: #087bf0;
    color: white;
    font-weight: 700;
    box-shadow: var(--shadow);
}
.new-complaint-button:hover { filter: brightness(.96); }
.new-complaint-button span { font-size: 24px; }

.feed { display: grid; gap: 10px; }
.complaint-card {
    min-height: 120px;
    display: grid;
    grid-template-columns: 58px minmax(0,1fr) 44px;
    gap: 10px;
    align-items: start;
    padding: 10px 10px 11px 7px;
    border: 1px solid var(--line);
    border-radius: 7px;
    background: rgba(255,255,255,.95);
    box-shadow: var(--shadow);
}
.complaint-card:hover {
    border-color: #b8d7f1;
    box-shadow: 0 3px 10px rgba(21, 70, 120, .09);
}
.vote-column {
    display: grid;
    justify-items: center;
    align-content: start;
    gap: 3px;
    padding-top: 5px;
}
.vote-column strong { font-size: 17px; }
.vote-button {
    border: 0;
    background: transparent;
    color: #6681a4;
    cursor: pointer;
    font-size: 18px;
}
.vote-button:hover { color: var(--blue); }

.complaint-content { min-width: 0; }
.category-pill {
    display: inline-block;
    padding: 5px 13px;
    border-radius: 5px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
}
.home-life { background: #ff4b56; }
.pets { background: #0eb680; }
.environment { background: #089fe5; }
.work-school { background: #913be9; }
.self { background: #f6a000; }
.friends { background: #ef3c88; }
.other { background: #6680a2; }

.complaint-content h2 {
    margin: 4px 0 3px;
    font-size: 16px;
    line-height: 1.2;
}
.complaint-content h2 a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}
.complaint-content h2 a:hover { color: var(--blue); }
.complaint-content p {
    margin: 0 0 8px;
    color: #3c5d86;
    font-size: 14px;
    line-height: 1.35;
}
.complaint-meta {
    display: flex;
    gap: 22px;
    color: #58769a;
    font-size: 13px;
}
.more-button {
    border: 0;
    background: transparent;
    color: #0a3b7b;
    font-size: 19px;
    font-weight: 700;
    cursor: pointer;
}

.right-rail {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 16px;
}
.panel {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: rgba(255,255,255,.96);
    box-shadow: var(--shadow);
}
.panel-heading,
.featured-heading {
    min-height: 47px;
    display: flex;
    align-items: center;
    padding: 0 17px;
    border-bottom: 1px solid var(--line);
}
.panel-heading { justify-content: space-between; }
.panel-heading h2,
.featured-heading h2 {
    margin: 0;
    font-size: 18px;
}
.panel-heading a {
    color: var(--blue);
    font-size: 13px;
    font-weight: 700;
}
.category-list,
.featured-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.category-list li { border-bottom: 1px solid #e5eef7; }
.category-list li:last-child { border-bottom: 0; }
.category-filter {
    width: 100%;
    min-height: 39px;
    display: grid;
    grid-template-columns: 24px 1fr auto;
    align-items: center;
    gap: 8px;
    padding: 0 13px;
    border: 0;
    background: transparent;
    color: #0a336a;
    text-align: left;
    cursor: pointer;
}
.category-filter:hover { background: #f6fbff; }
.category-dot {
    width: 17px;
    height: 17px;
    border-radius: 50%;
}
.category-count { color: #5a769b; }

.featured-panel {
    border-color: var(--yellow-line);
    background: var(--yellow-bg);
}
.featured-heading {
    gap: 8px;
    border-bottom-color: #f0dca7;
}
.star { color: #ffab00; font-size: 24px; }
.featured-list { counter-reset: item; }
.featured-list li {
    min-height: 41px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    border-bottom: 1px solid #efdcae;
    font-size: 13px;
}
.featured-list li:last-child { border-bottom: 0; }
.rank {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffa800;
    color: #fff;
    font-weight: 700;
    font-size: 13px;
}
.featured-list a {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.featured-list a:hover { color: var(--blue); }
.featured-score {
    color: #547398;
    white-space: nowrap;
}
.empty-state {
    margin-top: 28px;
    padding: 48px 20px;
    text-align: center;
    border: 1px dashed #b9cee3;
    border-radius: 10px;
    background: #fff;
}
.empty-state h2 { margin-top: 0; }

@media (max-width: 1180px) {
    .main-area { grid-template-columns: minmax(0, 1fr) 340px; }
    .topbar { grid-template-columns: 260px minmax(260px, 1fr) auto; }
    .brand-copy small { display: none; }
    .profile-name { display: none; }
}
@media (max-width: 980px) {
    .right-rail { display: none; }
    .main-area { grid-template-columns: 1fr; }
    .toolbar { flex-wrap: wrap; }
    .new-complaint-button { flex-basis: 180px; }
}
@media (max-width: 760px) {
    .topbar {
        height: auto;
        min-height: 66px;
        grid-template-columns: auto 1fr auto;
        gap: 10px;
        padding: 10px 12px;
    }
    .mobile-menu { display: block; }
    .brand-copy small { display: none; }
    .brand-copy strong { font-size: 18px; }
    .search-wrap {
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
    }
    .account-area { gap: 10px; }
    .profile-button .chevron { display: none; }
    .sidebar {
        position: fixed;
        z-index: 60;
        top: 66px;
        bottom: 0;
        left: 0;
        transform: translateX(-100%);
        box-shadow: 6px 0 18px rgba(7, 47, 95, .14);
    }
    .sidebar.mobile-open { transform: translateX(0); }
    .sidebar { transition: transform .2s ease, width .2s ease, flex-basis .2s ease; }
    .main-area {
        width: 100%;
        padding: 14px 10px 24px;
    }
    .toolbar { display: block; }
    .tabs {
        display: flex;
        overflow-x: auto;
        margin-bottom: 10px;
    }
    .tab {
        flex: 0 0 auto;
        min-width: 105px;
    }
    .new-complaint-button { height: 46px; }
    .complaint-card {
        grid-template-columns: 46px minmax(0,1fr) 30px;
    }
}
@media (max-width: 480px) {
    .brand-mark { display: none; }
    .brand-copy strong { font-size: 16px; }
    .avatar { width: 36px; height: 36px; }
    .complaint-content p { font-size: 13px; }
    .complaint-meta { gap: 12px; font-size: 12px; }
}


/* ---------- Page 2: Post a Complaint ---------- */

.post-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 28px 48px;
}

.post-page {
    width: min(900px, 100%);
    margin: 0 auto;
}

.post-heading {
    margin-bottom: 18px;
}

.post-heading h1 {
    margin: 0 0 6px;
    font-size: 31px;
    color: #092e66;
}

.post-heading p {
    margin: 0;
    color: #58769a;
    font-size: 14px;
}

.complaint-form {
    padding: 26px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: rgba(255,255,255,.98);
    box-shadow: var(--shadow);
}

.form-group {
    display: grid;
    gap: 8px;
    margin-bottom: 22px;
}

.form-group > label,
.label-row label,
.visibility-fieldset legend {
    color: #092e66;
    font-weight: 700;
    font-size: 14px;
}

.label-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.label-row span {
    color: #6c86a5;
    font-size: 12px;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    border: 1px solid #bfd2e5;
    border-radius: 7px;
    background: #fff;
    color: #153b6d;
    padding: 12px 13px;
    outline: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.form-group input,
.form-group select {
    min-height: 46px;
}

.form-group textarea {
    min-height: 230px;
    resize: vertical;
    line-height: 1.55;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: #1685ef;
    box-shadow: 0 0 0 3px rgba(22,133,239,.12);
}

.visibility-fieldset {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 0 0 24px;
    padding: 0;
    border: 0;
}

.visibility-fieldset legend {
    grid-column: 1 / -1;
    margin-bottom: 2px;
}

.visibility-option {
    position: relative;
    display: grid;
    grid-template-columns: 24px 38px 1fr;
    align-items: center;
    gap: 10px;
    min-height: 91px;
    padding: 14px;
    border: 1px solid #bfd2e5;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
}

.visibility-option:hover {
    border-color: #8ebee9;
    background: #fbfdff;
}

.visibility-option.selected {
    border-color: #1685ef;
    background: #eef7ff;
    box-shadow: inset 0 0 0 1px #1685ef;
}

.visibility-option input {
    width: 18px;
    height: 18px;
    accent-color: #087cf0;
}

.visibility-icon {
    font-size: 25px;
}

.visibility-option strong,
.visibility-option small {
    display: block;
}

.visibility-option strong {
    margin-bottom: 4px;
    color: #082d61;
}

.visibility-option small {
    color: #5c7898;
    line-height: 1.35;
}

.private-default-note {
    grid-column: 1 / -1;
    padding: 12px 14px;
    border-left: 4px solid #1685ef;
    border-radius: 5px;
    background: #f2f8ff;
    color: #476788;
    font-size: 13px;
    line-height: 1.45;
}

.private-default-note strong {
    color: #092e66;
}

.form-actions {
    display: flex;
    align-items: center;
    gap: 11px;
}

.primary-submit,
.secondary-button {
    min-height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    border-radius: 7px;
    font-weight: 700;
    cursor: pointer;
}

.primary-submit {
    border: 1px solid #087cf0;
    background: #087cf0;
    color: #fff;
}

.primary-submit:hover {
    filter: brightness(.96);
}

.secondary-button {
    border: 1px solid #bfd2e5;
    background: #fff;
    color: #153b6d;
}

.secondary-button:hover {
    background: #f6faff;
}

.form-alert {
    margin-bottom: 16px;
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.45;
}

.form-alert ul {
    margin: 7px 0 0 20px;
    padding: 0;
}

.success-alert {
    border: 1px solid #98d9bc;
    background: #effbf5;
    color: #195d40;
}

.success-alert a {
    margin-left: 8px;
    color: #087cf0;
    font-weight: 700;
}

.error-alert {
    border: 1px solid #efb0b5;
    background: #fff3f4;
    color: #8f2833;
}

.post-sidebar-help {
    display: grid;
    gap: 9px;
    margin-top: 18px;
    padding: 0 4px;
}

.sidebar-info-card {
    padding: 12px 11px;
    border: 1px solid #d7e5f2;
    border-radius: 8px;
    background: #f8fbff;
}

.sidebar-info-card h3 {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 6px;
    color: #092e66;
    font-size: 12px;
    line-height: 1.25;
}

.sidebar-info-card p {
    margin: 0;
    color: #5c7898;
    font-size: 11px;
    line-height: 1.4;
}

.sidebar.collapsed .post-sidebar-help {
    display: none;
}

@media (max-width: 760px) {
    .post-main {
        width: 100%;
        padding: 16px 10px 30px;
    }

    .complaint-form {
        padding: 18px 14px;
    }

    .visibility-fieldset {
        grid-template-columns: 1fr;
    }

    .visibility-fieldset legend,
    .private-default-note {
        grid-column: 1;
    }

    .form-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .primary-submit,
    .secondary-button {
        width: 100%;
    }
}


/* ---------- Page 3: Complaint / Thread ---------- */

.sr-only {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

.thread-layout {
    flex: 1 1 auto;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 18px;
    padding: 18px 18px 40px;
}

.thread-center {
    min-width: 0;
}

.back-to-feed {
    display: inline-flex;
    margin: 0 0 12px;
    color: #3f6693;
    font-size: 13px;
    font-weight: 700;
}

.back-to-feed:hover {
    color: var(--blue);
}

.thread-post {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 10px;
    padding: 20px 22px 16px 9px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: rgba(255,255,255,.98);
    box-shadow: var(--shadow);
}

.thread-votes {
    display: grid;
    justify-items: center;
    align-content: start;
    gap: 4px;
    padding-top: 5px;
}

.thread-votes strong {
    font-size: 18px;
}

.thread-post-content {
    min-width: 0;
}

.thread-topline {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.public-thread-badge,
.private-thread-badge,
.private-comment-badge,
.locked-badge {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
}

.public-thread-badge {
    background: #edf8f3;
    color: #16704e;
}

.private-thread-badge,
.private-comment-badge {
    background: #f0f5fb;
    color: #385f88;
}

.locked-badge {
    background: #fff4df;
    color: #8b5d0b;
}

.thread-post h1 {
    margin: 9px 0 8px;
    color: #082d61;
    font-size: clamp(25px, 3vw, 34px);
    line-height: 1.14;
}

.author-row {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #617d9e;
    font-size: 13px;
}

.author-row strong {
    color: #163f70;
}

.mini-avatar {
    width: 25px;
    height: 25px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #eef4fa;
}

.thread-body {
    margin-top: 22px;
    color: #244d78;
    font-size: 15px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.thread-action-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px 18px;
    margin-top: 22px;
    padding-top: 13px;
    border-top: 1px solid #e3edf6;
    color: #55769a;
    font-size: 13px;
}

.inline-action-form {
    display: inline;
    margin: 0;
}

.thread-action {
    padding: 0;
    border: 0;
    background: transparent;
    color: #55769a;
    cursor: pointer;
    font-size: 13px;
}

.thread-action:hover {
    color: var(--blue);
}

.comments-section {
    margin-top: 14px;
    padding: 20px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: rgba(255,255,255,.98);
    box-shadow: var(--shadow);
}

.comments-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 15px;
}

.comments-heading h2 {
    margin: 0;
    font-size: 21px;
}

.comment-login-prompt,
.no-comments {
    padding: 17px;
    border: 1px solid #dce8f3;
    border-radius: 8px;
    background: #f8fbff;
    color: #58769a;
    font-size: 14px;
}

.comment-login-prompt a {
    color: var(--blue);
    font-weight: 700;
}

.new-comment-form {
    margin-bottom: 21px;
    padding: 14px;
    border: 1px solid #d3e2f0;
    border-radius: 8px;
    background: #fbfdff;
}

.new-comment-form label {
    display: block;
    margin-bottom: 8px;
    color: #143d70;
    font-size: 13px;
    font-weight: 700;
}

.new-comment-form textarea,
.inline-reply-form textarea,
.private-reply-card textarea {
    width: 100%;
    padding: 11px 12px;
    border: 1px solid #bfd2e5;
    border-radius: 7px;
    background: #fff;
    color: #173f6f;
    line-height: 1.45;
    resize: vertical;
    outline: 0;
}

.new-comment-form textarea:focus,
.inline-reply-form textarea:focus,
.private-reply-card textarea:focus {
    border-color: #1685ef;
    box-shadow: 0 0 0 3px rgba(22,133,239,.10);
}

.new-comment-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 8px;
    color: #6b84a1;
    font-size: 12px;
}

.comment-tree {
    display: grid;
    gap: 0;
}

.thread-comment {
    display: grid;
    grid-template-columns: 36px minmax(0,1fr);
    gap: 10px;
    padding: 15px 0 2px;
    border-top: 1px solid #e4edf5;
}

.thread-comment:first-child {
    border-top: 0;
}

.thread-comment.depth-1,
.thread-comment.depth-2,
.thread-comment.depth-3,
.thread-comment.depth-4,
.thread-comment.depth-5,
.thread-comment.depth-6 {
    margin-left: 22px;
    padding-left: 12px;
    border-left: 2px solid #d9e7f3;
}

.comment-avatar {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #edf4fb;
    font-size: 17px;
}

.comment-main {
    min-width: 0;
}

.comment-header {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    color: #6c84a2;
    font-size: 12px;
}

.comment-header strong {
    color: #123e71;
}

.comment-body {
    margin: 7px 0 8px;
    color: #30557d;
    font-size: 14px;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.removed-comment {
    margin: 8px 0;
    color: #738aa3;
    font-size: 13px;
    font-style: italic;
}

.comment-actions {
    display: flex;
    gap: 14px;
    margin-bottom: 8px;
}

.text-action {
    padding: 0;
    border: 0;
    background: transparent;
    color: #57789e;
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
}

.text-action:hover {
    color: var(--blue);
}

.inline-reply-form {
    margin: 9px 0 13px;
}

.inline-reply-form[hidden] {
    display: none;
}

.inline-form-actions {
    display: flex;
    gap: 8px;
    margin-top: 7px;
}

.small-primary,
.small-secondary {
    min-height: 34px;
    padding: 0 13px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
}

.small-primary {
    border: 1px solid var(--blue);
    background: var(--blue);
    color: white;
}

.small-secondary {
    border: 1px solid #c8d8e7;
    background: #fff;
    color: #31567f;
}

.no-comments {
    display: grid;
    justify-items: center;
    gap: 5px;
    padding: 28px 16px;
}

.thread-right-rail {
    display: grid;
    align-content: start;
    gap: 14px;
}

.thread-side-card,
.private-reply-card,
.similar-card,
.related-ad-card {
    padding: 16px;
}

.thread-side-card h2,
.private-reply-card h2,
.similar-card h2,
.related-ad-card h2 {
    margin: 0 0 11px;
    color: #0c356c;
    font-size: 17px;
}

.thread-side-card form {
    margin: 0;
}

.side-action-button {
    width: 100%;
    min-height: 42px;
    display: flex;
    align-items: center;
    padding: 0 12px;
    border: 0;
    border-bottom: 1px solid #e3edf6;
    background: transparent;
    color: #244f7d;
    cursor: pointer;
    text-align: left;
    font-weight: 700;
}

.side-action-button:hover {
    background: #f6fbff;
    color: var(--blue);
}

.thread-side-card > :last-child,
.thread-side-card form:last-child .side-action-button {
    border-bottom: 0;
}

.private-reply-card p,
.related-ad-card p,
.side-muted {
    color: #627e9e;
    font-size: 13px;
    line-height: 1.45;
}

.private-reply-card textarea {
    margin: 3px 0 9px;
}

.full-width {
    width: 100%;
}

.similar-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.similar-list li {
    display: grid;
    gap: 4px;
    padding: 10px 0;
    border-top: 1px solid #e4edf5;
}

.similar-list li:first-child {
    padding-top: 0;
    border-top: 0;
}

.similar-list a {
    color: #123e71;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}

.similar-list a:hover {
    color: var(--blue);
}

.similar-list span {
    color: #7890aa;
    font-size: 11px;
}

.related-ad-card {
    background: #fbfdff;
}

.sponsored-label {
    display: inline-block;
    margin-bottom: 7px;
    color: #7189a4;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .4px;
    text-transform: uppercase;
}

@media (max-width: 1040px) {
    .thread-layout {
        grid-template-columns: minmax(0,1fr) 285px;
    }
}

@media (max-width: 880px) {
    .thread-layout {
        grid-template-columns: 1fr;
    }

    .thread-right-rail {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 760px) {
    .thread-layout {
        width: 100%;
        padding: 14px 10px 30px;
    }

    .thread-post {
        grid-template-columns: 45px minmax(0,1fr);
        padding: 15px 12px 14px 5px;
    }

    .comments-section {
        padding: 14px;
    }

    .thread-right-rail {
        grid-template-columns: 1fr;
    }

    .thread-comment.depth-1,
    .thread-comment.depth-2,
    .thread-comment.depth-3,
    .thread-comment.depth-4,
    .thread-comment.depth-5,
    .thread-comment.depth-6 {
        margin-left: 9px;
        padding-left: 8px;
    }
}


/* ---------- Page 4: User Profile ---------- */

.profile-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 22px 24px 48px;
}

.profile-page {
    width: min(1060px, 100%);
    margin: 0 auto;
}

.profile-hero {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: rgba(255,255,255,.98);
    box-shadow: var(--shadow);
}

.profile-avatar-large {
    width: 86px;
    height: 86px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #0e5ca8;
    color: white;
    font-size: 34px;
    font-weight: 800;
    text-transform: uppercase;
}

.profile-name-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.profile-name-row h1 {
    margin: 0;
    color: #082d61;
    font-size: 30px;
}

.profile-owner-badge {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 0 9px;
    border-radius: 999px;
    background: #eef6ff;
    color: #176cb7;
    font-size: 11px;
    font-weight: 700;
}

.profile-member-since {
    margin: 5px 0 12px;
    color: #6a84a2;
    font-size: 13px;
}

.profile-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 11px 18px;
    color: #5b7696;
    font-size: 13px;
}

.profile-stats strong {
    color: #153f72;
}

.profile-hero-actions {
    align-self: start;
}

.profile-tabs {
    display: flex;
    gap: 4px;
    margin-top: 15px;
    padding: 6px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    box-shadow: var(--shadow);
    overflow-x: auto;
}

.profile-tabs a {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border-radius: 7px;
    color: #577596;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
}

.profile-tabs a:hover,
.profile-tabs a.active {
    background: #edf6ff;
    color: #0b6fc8;
}

.profile-toolbar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    margin: 20px 0 12px;
}

.profile-toolbar h2 {
    margin: 0 0 4px;
    color: #0b356b;
    font-size: 21px;
}

.profile-toolbar p {
    margin: 0;
    color: #6a82a0;
    font-size: 13px;
}

.profile-sort {
    display: flex;
    gap: 4px;
    padding: 4px;
    border: 1px solid #d5e3f0;
    border-radius: 8px;
    background: white;
}

.profile-sort a {
    padding: 7px 10px;
    border-radius: 6px;
    color: #66809e;
    font-size: 12px;
    font-weight: 700;
}

.profile-sort a.active,
.profile-sort a:hover {
    background: #edf6ff;
    color: #0b6fc8;
}

.profile-card-list {
    display: grid;
    gap: 11px;
}

.profile-complaint-card {
    padding: 17px 18px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    box-shadow: var(--shadow);
}

.profile-card-topline {
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.profile-private-badge,
.profile-public-badge,
.featured-mini {
    display: inline-flex;
    align-items: center;
    min-height: 23px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
}

.profile-private-badge {
    background: #f1f5fa;
    color: #426889;
}

.profile-public-badge {
    background: #eef9f4;
    color: #1a7351;
}

.featured-mini {
    background: #fff4da;
    color: #8a5b00;
}

.profile-complaint-card h3 {
    margin: 0 0 7px;
    font-size: 18px;
    line-height: 1.3;
}

.profile-complaint-card h3 a {
    color: #0b356b;
}

.profile-complaint-card h3 a:hover {
    color: var(--blue);
}

.profile-complaint-card p {
    margin: 0 0 12px;
    color: #4f7093;
    font-size: 13px;
    line-height: 1.55;
}

.profile-card-meta {
    display: flex;
    gap: 9px 16px;
    flex-wrap: wrap;
    color: #7890a9;
    font-size: 11px;
}

.profile-empty {
    display: grid;
    justify-items: center;
    gap: 7px;
    padding: 35px 18px;
    border: 1px dashed #c9dbea;
    border-radius: 9px;
    background: #fbfdff;
    color: #6c84a0;
    text-align: center;
}

.profile-empty strong {
    color: #153e70;
}

.profile-empty a {
    color: var(--blue);
    font-weight: 700;
}

.profile-about-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr);
    gap: 14px;
    margin-top: 20px;
}

.profile-about-card,
.profile-details-card {
    padding: 18px;
}

.profile-about-card h2,
.profile-details-card h2 {
    margin: 0 0 12px;
    color: #0b356b;
    font-size: 20px;
}

.profile-about-card p {
    margin: 0;
    color: #557495;
    line-height: 1.6;
}

.profile-details-card dl {
    margin: 0;
}

.profile-details-card dl > div {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 12px;
    padding: 10px 0;
    border-top: 1px solid #e4edf5;
}

.profile-details-card dl > div:first-child {
    border-top: 0;
    padding-top: 0;
}

.profile-details-card dt {
    color: #748ca6;
    font-size: 12px;
    font-weight: 700;
}

.profile-details-card dd {
    margin: 0;
    color: #244d78;
    font-size: 13px;
}

.profile-drafts {
    margin-top: 20px;
}

@media (max-width: 820px) {
    .profile-hero {
        grid-template-columns: 76px minmax(0,1fr);
    }

    .profile-avatar-large {
        width: 70px;
        height: 70px;
        font-size: 28px;
    }

    .profile-hero-actions {
        grid-column: 1 / -1;
    }

    .profile-about-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .profile-main {
        width: 100%;
        padding: 14px 10px 30px;
    }

    .profile-hero {
        grid-template-columns: 60px minmax(0,1fr);
        padding: 16px;
    }

    .profile-avatar-large {
        width: 58px;
        height: 58px;
        font-size: 22px;
    }

    .profile-name-row h1 {
        font-size: 24px;
    }

    .profile-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .profile-sort {
        align-self: flex-start;
    }

    .profile-details-card dl > div {
        grid-template-columns: 1fr;
        gap: 3px;
    }
}


/* ---------- Draft workflow ---------- */

.draft-button {
    min-height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    border: 1px solid #8ea9c5;
    border-radius: 7px;
    background: #eef4fa;
    color: #173f6e;
    font-weight: 700;
    cursor: pointer;
}

.draft-button:hover {
    background: #e4eef7;
}

.draft-card {
    border-left: 4px solid #91aac2;
}

.draft-category-empty {
    display: inline-flex;
    align-items: center;
    min-height: 23px;
    padding: 0 8px;
    border-radius: 999px;
    background: #f3f6f9;
    color: #71879d;
    font-size: 10px;
    font-weight: 700;
}

.draft-empty-copy {
    font-style: italic;
}

.draft-card-actions {
    display: flex;
    margin-top: 12px;
}

.draft-edit-link {
    text-decoration: none;
}

@media (max-width: 760px) {
    .draft-button {
        width: 100%;
    }
}


/* ---------- Page 5: Search Results ---------- */

.search-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 22px 24px 48px;
}

.search-page {
    width: min(1060px, 100%);
    margin: 0 auto;
}

.search-heading h1 {
    margin: 0;
    color: #0b356b;
    font-size: 28px;
}

.search-heading p {
    margin: 5px 0 0;
    color: #6c85a2;
    font-size: 13px;
}

.search-results-form {
    margin-top: 18px;
    padding: 15px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--shadow);
}

.search-input-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.search-input-wrap input {
    min-height: 44px;
    padding: 0 13px;
    border: 1px solid #cbdbe9;
    border-radius: 7px;
    color: #173e69;
    font: inherit;
}

.search-input-wrap button,
.filter-button {
    border: 0;
    border-radius: 7px;
    background: #0b6fc8;
    color: white;
    font-weight: 700;
    cursor: pointer;
}

.search-input-wrap button {
    padding: 0 22px;
}

.search-filter-row {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

.search-filter-row label:not(.search-check) {
    display: grid;
    gap: 4px;
}

.search-filter-row label > span {
    color: #6c85a2;
    font-size: 11px;
    font-weight: 700;
}

.search-filter-row select {
    min-height: 36px;
    padding: 0 28px 0 9px;
    border: 1px solid #d3e0eb;
    border-radius: 6px;
    background: #fff;
    color: #315779;
}

.search-check {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 8px;
    color: #4f6e8d;
    font-size: 12px;
    font-weight: 700;
}

.filter-button {
    min-height: 36px;
    padding: 0 14px;
}

.clear-search-link {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    color: #637f9c;
    font-size: 12px;
    font-weight: 700;
}

.search-results-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 18px 0 11px;
}

.search-type-tabs,
.search-sort {
    display: flex;
    gap: 4px;
    padding: 4px;
    border: 1px solid #d7e4ef;
    border-radius: 8px;
    background: #fff;
}

.search-type-tabs a,
.search-sort a {
    padding: 7px 10px;
    border-radius: 6px;
    color: #66809e;
    font-size: 12px;
    font-weight: 700;
}

.search-type-tabs a.active,
.search-type-tabs a:hover,
.search-sort a.active,
.search-sort a:hover {
    background: #edf6ff;
    color: #0b6fc8;
}

.search-result-list {
    display: grid;
    gap: 10px;
}

.search-result-card {
    padding: 17px 18px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    box-shadow: var(--shadow);
}

.search-result-topline {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 7px;
}

.result-type {
    display: inline-flex;
    align-items: center;
    min-height: 23px;
    padding: 0 8px;
    border-radius: 999px;
    background: #edf6ff;
    color: #176cb7;
    font-size: 10px;
    font-weight: 800;
}

.comment-type {
    background: #f3f0ff;
    color: #6850a8;
}

.search-result-card h2 {
    margin: 0 0 7px;
    font-size: 18px;
    line-height: 1.35;
}

.search-result-card h2 a {
    color: #0b356b;
}

.search-result-card p {
    margin: 0 0 10px;
    color: #507091;
    font-size: 13px;
    line-height: 1.55;
}

.search-result-card mark {
    padding: 0 2px;
    border-radius: 2px;
    background: #fff0a8;
    color: inherit;
}

.search-result-date {
    color: #7b91a8;
    font-size: 11px;
}

.comment-search-result {
    border-left: 4px solid #b4a5df;
}

.search-message {
    display: grid;
    justify-items: center;
    gap: 6px;
    margin-top: 18px;
    padding: 32px 18px;
    border: 1px dashed #cadbea;
    border-radius: 9px;
    background: #fbfdff;
    color: #6c84a0;
    text-align: center;
}

.search-message strong {
    color: #153e70;
}

.search-message a {
    color: #0b6fc8;
    font-weight: 700;
}

.header-search button {
    border: 0;
    background: transparent;
    cursor: pointer;
}

@media (max-width: 760px) {
    .search-main {
        width: 100%;
        padding: 14px 10px 30px;
    }

    .search-results-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .search-type-tabs,
    .search-sort {
        align-self: flex-start;
    }

    .search-input-wrap {
        grid-template-columns: 1fr;
    }

    .search-input-wrap button {
        min-height: 40px;
    }
}


/* Page 5 global search fix */
.search-wrap {
    position: relative;
}

.global-search-submit {
    min-height: 32px;
    margin-right: 6px;
    padding: 0 12px;
    border: 0;
    border-radius: 6px;
    background: #0b6fc8;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.global-search-submit:hover {
    background: #095ea9;
}

@media (max-width: 760px) {
    .global-search-submit {
        padding: 0 9px;
    }
}


/* ---------- Page 5 live search ---------- */

.global-live-results {
    position: absolute;
    top: calc(100% + 7px);
    left: 0;
    right: 0;
    z-index: 500;
    max-height: 360px;
    overflow-y: auto;
    border: 1px solid #cbddeb;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(20, 55, 90, .18);
}

.global-live-item {
    display: grid;
    gap: 2px;
    padding: 10px 12px;
    border-bottom: 1px solid #edf2f6;
    text-decoration: none;
}

.global-live-item:hover {
    background: #f5f9fd;
}

.global-live-item strong {
    overflow: hidden;
    color: #173f6e;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.global-live-item span,
.global-live-empty {
    color: #7890a8;
    font-size: 10px;
}

.global-live-empty {
    padding: 12px;
}

.global-live-all {
    display: block;
    padding: 10px 12px;
    color: #0b6fc8;
    font-size: 11px;
    font-weight: 800;
    text-align: center;
}

.live-result-count {
    color: #173f6e;
    font-size: 13px;
    font-weight: 800;
}

.live-search-note {
    color: #7890a8;
    font-size: 11px;
}


/* ---------- Page 6: Admin Dashboard ---------- */
.admin-main{flex:1 1 auto;min-width:0;padding:22px 24px 50px;background:#f5f8fb}
.admin-page{width:min(1180px,100%);margin:0 auto}
.admin-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.admin-eyebrow{color:#0b6fc8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.admin-page-header h1{margin:3px 0 3px;color:#0b356b;font-size:29px}
.admin-page-header p,.admin-card-heading p{margin:0;color:#7890a8;font-size:12px}
.admin-role-pill{padding:8px 12px;border:1px solid #cfe0ef;border-radius:999px;background:#fff;color:#315779;font-size:11px;font-weight:800}
.attention-panel{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 20px;border:1px solid #f0d3b2;border-left:5px solid #d9892b;border-radius:9px;background:#fffaf4}
.attention-panel>div:first-child{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:4px 12px}
.attention-label{color:#9a5b16;font-size:12px;font-weight:800}.attention-panel strong{color:#7e4510;font-size:28px}.attention-panel p{grid-column:1/-1;margin:0;color:#92704d;font-size:11px}
.attention-breakdown{display:flex;gap:8px}.attention-breakdown span{padding:7px 10px;border-radius:7px;background:#fff;color:#7c6247;font-size:11px}
.admin-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.admin-quick-actions a{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:10px;padding:13px;border:1px solid #d8e5ef;border-radius:9px;background:#fff}
.admin-quick-actions a>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#edf6ff;color:#0b6fc8;font-weight:900}
.admin-quick-actions strong{color:#244b72;font-size:12px}.admin-quick-actions small{color:#8196aa;font-size:10px}
.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.admin-stat-grid article{display:grid;gap:4px;padding:16px;border:1px solid #dbe6ef;border-radius:9px;background:#fff}
.admin-stat-grid span{color:#6f879e;font-size:11px;font-weight:700}.admin-stat-grid strong{color:#0b356b;font-size:26px}.admin-stat-grid small{color:#8ba0b3;font-size:10px}
.admin-dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,.8fr);gap:14px;margin-bottom:14px}
.admin-card{padding:17px;border:1px solid #dbe6ef;border-radius:9px;background:#fff}
.admin-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:13px}
.admin-card-heading h2,.analytics-card h2,.analytics-locked-card h2{margin:0 0 3px;color:#173f6e;font-size:17px}.admin-card-heading>a{color:#0b6fc8;font-size:11px;font-weight:800}
.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th{padding:8px 9px;border-bottom:1px solid #dfe9f1;color:#8195a9;font-size:9px;text-align:left;text-transform:uppercase;letter-spacing:.05em}
.admin-table td{padding:10px 9px;border-bottom:1px solid #edf2f6;color:#55718c;font-size:11px;vertical-align:middle}.admin-table tr:last-child td{border-bottom:0}
.admin-title-link{display:block;max-width:350px;overflow:hidden;color:#174b7e;font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.admin-table td small{display:block;margin-top:2px;color:#93a4b5;font-size:9px}
.admin-status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800}.admin-status.public{background:#eaf8f1;color:#2b7b55}.admin-status.private{background:#f2f0fa;color:#6d5d94}
.admin-user-list{display:grid}.admin-user-row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #edf2f6}.admin-user-row:last-child{border-bottom:0}
.admin-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eaf3fb;color:#2a6293;font-size:12px;font-weight:900}.admin-user-row div{display:grid}.admin-user-row strong{color:#315779;font-size:11px}.admin-user-row small,.admin-user-row time{color:#91a3b4;font-size:9px}
.analytics-card{margin-bottom:14px}.analytics-heading{align-items:center}.analytics-ranges{display:flex;flex-wrap:wrap;gap:3px}.analytics-ranges a{padding:6px 8px;border-radius:6px;color:#728aa1;font-size:9px;font-weight:800}.analytics-ranges a.active,.analytics-ranges a:hover{background:#edf6ff;color:#0b6fc8}
.analytics-content{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.5fr);gap:30px;padding-top:6px}.analytics-content h3{margin:0 0 12px;color:#496987;font-size:11px}
.analytics-bar-row{margin-bottom:10px}.analytics-bar-row>div:first-child{display:flex;justify-content:space-between;margin-bottom:4px;color:#66809a;font-size:10px}.analytics-track{height:8px;overflow:hidden;border-radius:999px;background:#edf2f6}.analytics-track span{display:block;height:100%;border-radius:999px;background:#5c9ed5}
.privacy-summary{text-align:center}.privacy-ring{display:grid;place-items:center;width:130px;height:130px;margin:5px auto 12px;border-radius:50%;background:conic-gradient(#4f97cf calc(var(--public-pct)*1%),#b8a8d5 0);position:relative}.privacy-ring:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:#fff}.privacy-ring>div{z-index:1;display:grid}.privacy-ring strong{color:#174b7e;font-size:20px}.privacy-ring span{color:#8a9caf;font-size:9px}
.privacy-legend{display:flex;justify-content:center;gap:12px;color:#70869d;font-size:9px}.privacy-legend i{display:inline-block;width:7px;height:7px;margin-right:4px;border-radius:50%}.public-dot{background:#4f97cf}.private-dot{background:#b8a8d5}
.analytics-footnote{margin-top:14px;padding-top:10px;border-top:1px solid #edf2f6;color:#8a9daf;font-size:9px}.analytics-locked-card{margin-bottom:14px}.analytics-locked-card p{margin:5px 0 0;color:#8196aa;font-size:11px}
.admin-placeholder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.admin-placeholder-grid div{display:grid;gap:4px;padding:12px;border-radius:8px;background:#f7fafc}.admin-placeholder-grid strong{color:#496987;font-size:11px}.admin-placeholder-grid span{color:#8a9daf;font-size:9px;line-height:1.45}.admin-empty{padding:16px!important;color:#8da0b2!important;text-align:center!important}
@media(max-width:900px){.admin-quick-actions,.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-dashboard-grid,.analytics-content{grid-template-columns:1fr}.admin-placeholder-grid{grid-template-columns:1fr}}
@media(max-width:620px){.admin-main{padding:14px 10px 30px}.admin-page-header,.attention-panel{align-items:stretch;flex-direction:column}.admin-quick-actions,.admin-stat-grid{grid-template-columns:1fr}.attention-breakdown{flex-wrap:wrap}.analytics-heading{align-items:flex-start;flex-direction:column}}


/* ---------- Page 7: Advertising ---------- */
.advertising-demo-body {
    margin: 0;
    min-height: 100vh;
    background: #ffffff;
    font-family: Arial, Helvetica, sans-serif;
}

.advertising-demo-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 48px;
    box-sizing: border-box;
}

.sponsored-pet-ad {
    width: min(1840px, 100%);
    display: grid;
    grid-template-columns: 355px minmax(0, 1fr) auto;
    align-items: center;
    gap: 48px;
    padding: 34px;
    border: 1px solid #d9e7f2;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 8px 26px rgba(39, 84, 120, .10);
    box-sizing: border-box;
}

.sponsored-pet-photo {
    width: 355px;
    height: 345px;
    object-fit: cover;
    border-radius: 17px;
}

.sponsored-pet-copy h1 {
    margin: 0 0 20px;
    color: #0b356b;
    font-size: clamp(32px, 3vw, 58px);
    line-height: 1.1;
    letter-spacing: -.02em;
}

.sponsored-label {
    margin-bottom: 28px;
    color: #6f86a2;
    font-size: clamp(24px, 2vw, 39px);
}

.sponsored-pet-copy p {
    max-width: 980px;
    margin: 0;
    color: #315779;
    font-size: clamp(20px, 1.8vw, 34px);
    line-height: 1.45;
}

.sponsored-learn-more {
    align-self: end;
    margin-bottom: 2px;
    padding: 22px 40px;
    border-radius: 16px;
    background: #1477ee;
    color: #ffffff;
    font-size: clamp(22px, 1.8vw, 35px);
    text-decoration: none;
    white-space: nowrap;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.03);
}

.sponsored-learn-more:hover {
    background: #0f69d5;
}

@media (max-width: 980px) {
    .advertising-demo-page {
        padding: 24px;
    }

    .sponsored-pet-ad {
        grid-template-columns: 180px 1fr;
        gap: 24px;
        padding: 24px;
    }

    .sponsored-pet-photo {
        width: 180px;
        height: 180px;
    }

    .sponsored-learn-more {
        grid-column: 2;
        justify-self: start;
        align-self: auto;
        margin: 0;
        padding: 14px 24px;
    }

    .sponsored-label {
        margin-bottom: 14px;
    }
}

@media (max-width: 620px) {
    .advertising-demo-page {
        padding: 16px;
    }

    .sponsored-pet-ad {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .sponsored-pet-photo {
        width: 100%;
        height: auto;
        max-height: 320px;
    }

    .sponsored-learn-more {
        grid-column: 1;
    }
}

/* Page 7 adds a fifth admin quick action. */
.admin-quick-actions {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}


/* Page 7: make the entire sponsored card clickable */
.sponsored-pet-ad {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}

.sponsored-pet-ad:hover {
    border-color: #bfd7e8;
    box-shadow: 0 12px 32px rgba(39, 84, 120, .16);
}

.sponsored-pet-ad:focus-visible {
    outline: 3px solid #1477ee;
    outline-offset: 4px;
}

.sponsored-pet-ad:hover .sponsored-learn-more {
    background: #0f69d5;
}


/* ---------- Page 8: Mobile View ---------- */
.mobile-demo-body {
    margin: 0;
    min-height: 100vh;
    background: #edf3f8;
    font-family: Arial, Helvetica, sans-serif;
}

.mobile-site-shell {
    position: relative;
    width: min(100%, 430px);
    min-height: 100vh;
    margin: 0 auto;
    background: #f7f9fb;
    border-left: 1px solid #dfe8ef;
    border-right: 1px solid #dfe8ef;
    box-shadow: 0 0 28px rgba(23, 63, 110, .08);
}

.mobile-topbar {
    position: sticky;
    top: 0;
    z-index: 60;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 62px;
    padding: 10px 14px;
    box-sizing: border-box;
    background: #0b356b;
}

.mobile-brand {
    color: #ffffff;
    font-size: 20px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
}

.mobile-top-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.mobile-icon-link,
.mobile-menu-toggle {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 9px;
    background: rgba(255,255,255,.10);
    color: #ffffff;
    font: inherit;
    font-size: 20px;
    text-decoration: none;
    cursor: pointer;
}

.mobile-menu-panel {
    position: absolute;
    top: 57px;
    right: 10px;
    z-index: 80;
    width: 185px;
    padding: 7px;
    border: 1px solid #d6e2ec;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 14px 34px rgba(20, 57, 92, .18);
}

.mobile-menu-panel[hidden] { display: none; }

.mobile-menu-panel a {
    display: block;
    padding: 10px 11px;
    border-radius: 8px;
    color: #365b79;
    font-size: 11px;
    font-weight: 750;
    text-decoration: none;
}

.mobile-menu-panel a:hover,
.mobile-menu-panel a:focus-visible {
    background: #eef6fc;
    color: #0b6fc8;
}

.mobile-deletion-banner {
    padding: 9px 13px;
    border-bottom: 1px solid #ead39a;
    background: #fff7df;
    color: #725719;
    font-size: 10px;
    line-height: 1.45;
}

.mobile-deletion-banner a {
    color: #0b6fc8;
    font-weight: 850;
}

.mobile-content {
    padding: 14px 11px 84px;
}

.mobile-feed-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 12px;
    padding: 3px 2px 10px;
}

.mobile-feed-heading > div {
    display: grid;
    gap: 2px;
}

.mobile-feed-heading span {
    color: #91a2b2;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.mobile-feed-heading strong {
    color: #173f6e;
    font-size: 16px;
}

.mobile-feed-heading > a {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
}

.mobile-feed {
    display: grid;
    gap: 9px;
}

.mobile-complaint-card,
.mobile-empty-card {
    padding: 13px 14px;
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
}

.mobile-complaint-card.is-featured {
    border-color: #e7d19d;
}

.mobile-card-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 7px;
}

.mobile-category-tag,
.mobile-featured-badge {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 3px 7px;
    border-radius: 999px;
    box-sizing: border-box;
    font-size: 8px;
    font-weight: 850;
}

.mobile-category-tag {
    background: #edf6ff;
    color: #0b6fc8;
}

.mobile-featured-badge {
    background: #fff2d0;
    color: #8d671b;
}

.mobile-card-title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #173f6e;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.28;
    text-decoration: none;
}

.mobile-card-bottomline {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    color: #899cae;
    font-size: 9px;
}

.mobile-score {
    color: #4c6c86;
    font-weight: 850;
}

.mobile-card-bottomline > a {
    display: grid;
    place-items: center;
    width: 27px;
    height: 27px;
    border-radius: 8px;
    background: #f3f7fa;
    color: #587791;
    font-size: 20px;
    line-height: 1;
    text-decoration: none;
}

.mobile-empty-card h2 {
    margin: 0 0 5px;
    color: #173f6e;
    font-size: 15px;
}

.mobile-empty-card p {
    margin: 0;
    color: #7890a8;
    font-size: 10px;
}

.mobile-bottom-nav {
    position: fixed;
    left: 50%;
    bottom: 0;
    z-index: 70;
    width: min(100%, 430px);
    transform: translateX(-50%);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding: 8px max(8px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));
    border-top: 1px solid #d9e5ee;
    background: rgba(255,255,255,.98);
    box-sizing: border-box;
    backdrop-filter: blur(12px);
}

.mobile-bottom-nav a {
    display: grid;
    justify-items: center;
    gap: 3px;
    color: #758da3;
    text-decoration: none;
}

.mobile-bottom-nav a span {
    font-size: 18px;
    line-height: 1;
}

.mobile-bottom-nav a small {
    font-size: 8px;
    font-weight: 750;
}

.mobile-bottom-nav a.active {
    color: #0b6fc8;
}

@media (min-width: 700px) {
    .mobile-demo-body { padding: 26px 0; }
    .mobile-site-shell {
        min-height: calc(100vh - 52px);
        border-radius: 24px;
        overflow: hidden;
    }
    .mobile-topbar { border-radius: 24px 24px 0 0; }
    .mobile-bottom-nav {
        bottom: 26px;
        border-radius: 0 0 24px 24px;
    }
}

/* ---------- Page 9: Child & Parental Safety ---------- */
.safety-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 50px;
    background: #f5f8fb;
}

.safety-page {
    width: min(1120px, 100%);
    margin: 0 auto;
}

.safety-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    gap: 24px;
    align-items: center;
    padding: 32px;
    border: 1px solid #d9e6ef;
    border-radius: 14px;
    background: #ffffff;
}

.safety-kicker {
    color: #0b6fc8;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.safety-hero h1 {
    margin: 5px 0 10px;
    color: #0b356b;
    font-size: 34px;
}

.safety-hero p {
    max-width: 730px;
    margin: 0;
    color: #607b94;
    font-size: 13px;
    line-height: 1.65;
}

.safety-shield-card {
    display: grid;
    justify-items: center;
    gap: 5px;
    padding: 20px;
    border-radius: 12px;
    background: #eef7ff;
    text-align: center;
}

.safety-shield {
    display: grid;
    place-items: center;
    width: 68px;
    height: 68px;
    margin-bottom: 4px;
    border-radius: 20px 20px 28px 28px;
    background: #1477ee;
    color: #ffffff;
    font-size: 34px;
    font-weight: 900;
}

.safety-shield-card strong {
    color: #174b7e;
    font-size: 14px;
}

.safety-shield-card span {
    color: #7890a8;
    font-size: 10px;
}

.safety-alert {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 12px;
    align-items: center;
    margin: 14px 0;
    padding: 15px 18px;
    border: 1px solid #f0d6ad;
    border-radius: 10px;
    background: #fffaf2;
}

.safety-alert-icon {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #e89b32;
    color: #ffffff;
    font-size: 19px;
    font-weight: 900;
}

.safety-alert strong {
    color: #7e531c;
    font-size: 12px;
}

.safety-alert p {
    margin: 3px 0 0;
    color: #8b704f;
    font-size: 10px;
    line-height: 1.5;
}

.safety-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.safety-card {
    padding: 20px;
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
}

.safety-card-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
    border-radius: 10px;
    background: #edf6ff;
    font-size: 20px;
}

.safety-card h2 {
    margin: 0 0 7px;
    color: #174b7e;
    font-size: 16px;
}

.safety-card p {
    margin: 0 0 12px;
    color: #617b93;
    font-size: 11px;
    line-height: 1.55;
}

.safety-card ul {
    margin: 0;
    padding-left: 17px;
    color: #71889e;
    font-size: 10px;
    line-height: 1.7;
}

.guardian-section,
.safety-boundaries,
.safety-footer-card {
    margin-top: 14px;
    padding: 22px;
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
}

.guardian-heading h2,
.safety-boundaries h2,
.safety-footer-card h2 {
    margin: 4px 0 0;
    color: #173f6e;
    font-size: 18px;
}

.guardian-steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 15px;
}

.guardian-step {
    display: grid;
    grid-template-columns: 32px 1fr;
    gap: 10px;
    padding: 13px;
    border-radius: 9px;
    background: #f7fafc;
}

.guardian-step > span {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #0b6fc8;
    color: #ffffff;
    font-size: 11px;
    font-weight: 900;
}

.guardian-step strong {
    color: #315779;
    font-size: 11px;
}

.guardian-step p {
    margin: 4px 0 0;
    color: #8295a8;
    font-size: 9px;
    line-height: 1.45;
}

.safety-boundaries {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr);
    gap: 24px;
}

.safety-boundaries p {
    margin: 8px 0 0;
    color: #70869d;
    font-size: 11px;
    line-height: 1.55;
}

.boundary-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.boundary-list span {
    padding: 9px 10px;
    border-radius: 8px;
    background: #f2f6f9;
    color: #55718c;
    font-size: 9px;
    font-weight: 700;
}

.safety-footer-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.safety-footer-card p {
    margin: 5px 0 0;
    color: #7b90a4;
    font-size: 10px;
}

.safety-footer-card a {
    padding: 10px 14px;
    border-radius: 8px;
    background: #1477ee;
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

@media (max-width: 820px) {
    .safety-hero,
    .safety-boundaries {
        grid-template-columns: 1fr;
    }

    .safety-shield-card {
        grid-template-columns: auto 1fr;
        justify-items: start;
        text-align: left;
    }

    .safety-shield {
        grid-row: 1 / 3;
        width: 54px;
        height: 54px;
        font-size: 26px;
    }
}

@media (max-width: 620px) {
    .safety-main {
        padding: 14px 10px 30px;
    }

    .safety-hero {
        padding: 20px;
    }

    .safety-hero h1 {
        font-size: 26px;
    }

    .safety-grid,
    .guardian-steps,
    .boundary-list {
        grid-template-columns: 1fr;
    }

    .safety-footer-card {
        align-items: stretch;
        flex-direction: column;
    }

    .safety-footer-card a {
        text-align: center;
    }
}


/* ---------- Page 10: Technical Overview ---------- */
.technical-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 52px;
    background: #f5f8fb;
}

.technical-page {
    width: min(1120px, 100%);
    margin: 0 auto;
}

.technical-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 28px;
    border: 1px solid #dbe6ef;
    border-radius: 13px;
    background: #ffffff;
}

.technical-kicker {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.technical-hero h1 {
    margin: 5px 0 8px;
    color: #0b356b;
    font-size: 32px;
}

.technical-hero p {
    max-width: 760px;
    margin: 0;
    color: #647f98;
    font-size: 12px;
    line-height: 1.6;
}

.technical-access-badge {
    display: grid;
    gap: 4px;
    min-width: 145px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #edf6ff;
}

.technical-access-badge span {
    color: #7890a8;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.technical-access-badge strong {
    color: #174b7e;
    font-size: 12px;
}

.technical-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 14px 0;
}

.technical-card,
.technical-section,
.technical-note {
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
}

.technical-card {
    padding: 18px;
}

.technical-card-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 11px;
    border-radius: 10px;
    background: #edf6ff;
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 900;
}

.technical-card h2 {
    margin: 0 0 7px;
    color: #174b7e;
    font-size: 15px;
}

.technical-card p {
    margin: 0 0 12px;
    color: #6e8499;
    font-size: 10px;
    line-height: 1.5;
}

.technical-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.technical-tags span {
    padding: 5px 7px;
    border-radius: 999px;
    background: #f2f6f9;
    color: #607a92;
    font-size: 8px;
    font-weight: 700;
}

.technical-section {
    margin-top: 14px;
    padding: 20px;
}

.technical-section-heading h2 {
    margin: 4px 0 14px;
    color: #173f6e;
    font-size: 18px;
}

.architecture-flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    align-items: center;
    gap: 12px;
}

.architecture-node {
    display: grid;
    justify-items: center;
    gap: 4px;
    padding: 18px 12px;
    border-radius: 10px;
    background: #f7fafc;
    text-align: center;
}

.architecture-node > span {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    margin-bottom: 3px;
    border-radius: 50%;
    background: #0b6fc8;
    color: #ffffff;
    font-size: 10px;
    font-weight: 900;
}

.architecture-node strong {
    color: #315779;
    font-size: 11px;
}

.architecture-node small {
    color: #8598aa;
    font-size: 8px;
}

.architecture-arrow {
    color: #9db1c2;
    font-size: 22px;
    font-weight: 800;
}

.technical-table-wrap {
    overflow-x: auto;
}

.technical-table {
    width: 100%;
    border-collapse: collapse;
}

.technical-table th {
    padding: 8px 9px;
    border-bottom: 1px solid #dde8f0;
    color: #7c91a5;
    font-size: 9px;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.technical-table td {
    padding: 10px 9px;
    border-bottom: 1px solid #edf2f6;
    color: #5e7890;
    font-size: 10px;
}

.technical-table tr:last-child td {
    border-bottom: 0;
}

.tech-status {
    display: inline-flex;
    padding: 4px 7px;
    border-radius: 999px;
    font-size: 8px;
    font-weight: 800;
}

.tech-status.live {
    background: #eaf8f1;
    color: #2d7a56;
}

.tech-status.planned {
    background: #fff3df;
    color: #9a6817;
}

.data-layer-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.data-layer-grid article {
    padding: 16px;
    border-radius: 9px;
    background: #f7fafc;
}

.data-layer-grid h3 {
    margin: 0 0 7px;
    color: #315779;
    font-size: 13px;
}

.data-layer-grid p {
    margin: 0 0 10px;
    color: #70869d;
    font-size: 10px;
    line-height: 1.5;
}

.data-layer-grid ul {
    margin: 0;
    padding-left: 17px;
    color: #7f92a4;
    font-size: 9px;
    line-height: 1.7;
}

.deployment-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.deployment-steps div {
    padding: 14px;
    border-radius: 9px;
    background: #f7fafc;
}

.deployment-steps span {
    color: #0b6fc8;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.deployment-steps strong {
    display: block;
    margin-top: 4px;
    color: #315779;
    font-size: 11px;
}

.deployment-steps p {
    margin: 5px 0 0;
    color: #8295a8;
    font-size: 9px;
    line-height: 1.45;
}

.technical-note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    margin-top: 14px;
    padding: 14px 17px;
    background: #fffaf2;
    border-color: #f0d6ad;
}

.technical-note strong {
    color: #8a5a1e;
    font-size: 10px;
}

.technical-note p {
    margin: 0;
    color: #8b704f;
    font-size: 9px;
    line-height: 1.5;
}

@media (max-width: 950px) {
    .technical-grid,
    .deployment-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .technical-main {
        padding: 14px 10px 32px;
    }

    .technical-hero {
        flex-direction: column;
    }

    .technical-access-badge {
        width: 100%;
        box-sizing: border-box;
    }

    .architecture-flow {
        grid-template-columns: 1fr;
    }

    .architecture-arrow {
        transform: rotate(90deg);
        justify-self: center;
    }

    .data-layer-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .technical-grid,
    .deployment-steps {
        grid-template-columns: 1fr;
    }

    .technical-hero h1 {
        font-size: 26px;
    }
}


/* ---------- Page 11: Contact Us ---------- */
.contact-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 52px;
    background: #f5f8fb;
}

.contact-page {
    width: min(1080px, 100%);
    margin: 0 auto;
}

.contact-hero {
    padding: 27px 30px;
    border: 1px solid #dbe6ef;
    border-radius: 13px;
    background: #ffffff;
}

.contact-kicker {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.contact-hero h1 {
    margin: 5px 0 8px;
    color: #0b356b;
    font-size: 32px;
}

.contact-hero p {
    max-width: 700px;
    margin: 0;
    color: #667f96;
    font-size: 12px;
    line-height: 1.6;
}

.contact-success,
.contact-errors {
    margin-top: 14px;
    padding: 14px 16px;
    border-radius: 10px;
}

.contact-success {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 11px;
    align-items: center;
    border: 1px solid #bfe2cd;
    background: #f0faf4;
}

.contact-success-icon {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #2d8a5d;
    color: #ffffff;
    font-size: 17px;
    font-weight: 900;
}

.contact-success strong {
    color: #276c4b;
    font-size: 12px;
}

.contact-success p {
    margin: 3px 0 0;
    color: #648676;
    font-size: 9px;
    line-height: 1.45;
}

.contact-errors {
    border: 1px solid #edc5c5;
    background: #fff5f5;
    color: #8d4343;
    font-size: 10px;
}

.contact-errors ul {
    margin: 5px 0 0;
    padding-left: 18px;
}

.contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 14px;
    margin-top: 14px;
}

.contact-form-card,
.contact-info-card {
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
}

.contact-form-card {
    padding: 23px;
}

.contact-form-card h2,
.contact-info-card h2 {
    margin: 0;
    color: #174b7e;
}

.contact-form-card h2 {
    font-size: 18px;
}

.contact-form-intro {
    margin: 5px 0 17px;
    color: #879aab;
    font-size: 9px;
}

.contact-form {
    display: grid;
    gap: 14px;
}

.contact-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.contact-form label {
    display: grid;
    gap: 6px;
}

.contact-form label > span {
    color: #4f6d87;
    font-size: 10px;
    font-weight: 700;
}

.contact-form input,
.contact-form select,
.contact-form textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #cfdee9;
    border-radius: 8px;
    background: #ffffff;
    color: #294f72;
    font: inherit;
    font-size: 11px;
    outline: none;
}

.contact-form input,
.contact-form select {
    min-height: 41px;
    padding: 9px 11px;
}

.contact-form textarea {
    min-height: 160px;
    padding: 11px;
    resize: vertical;
    line-height: 1.55;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
    border-color: #1477ee;
    box-shadow: 0 0 0 3px rgba(20,119,238,.10);
}

.contact-privacy-note {
    padding: 10px 11px;
    border-radius: 8px;
    background: #f6f9fb;
    color: #738a9e;
    font-size: 9px;
    line-height: 1.45;
}

.contact-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.contact-actions button,
.contact-actions a {
    padding: 10px 15px;
    border-radius: 8px;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
}

.contact-actions button {
    border: 0;
    background: #1477ee;
    color: #ffffff;
    cursor: pointer;
}

.contact-actions a {
    color: #607a92;
    background: #eef3f7;
}

.contact-side {
    display: grid;
    align-content: start;
    gap: 12px;
}

.contact-info-card {
    padding: 18px;
}

.contact-side-icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    margin-bottom: 10px;
    border-radius: 10px;
    background: #edf6ff;
    color: #0b6fc8;
    font-size: 17px;
    font-weight: 900;
}

.contact-info-card h2 {
    font-size: 14px;
}

.contact-info-card p {
    margin: 7px 0 12px;
    color: #758a9e;
    font-size: 9px;
    line-height: 1.55;
}

.contact-info-card a {
    color: #0b6fc8;
    font-size: 9px;
    font-weight: 800;
    text-decoration: none;
}

.contact-urgent-card {
    border-color: #f0d6ad;
    background: #fffaf2;
}

.contact-urgent-card .contact-side-icon {
    background: #f3a23b;
    color: #ffffff;
}

.contact-urgent-card h2 {
    color: #80551d;
}

.contact-urgent-card p {
    margin-bottom: 0;
    color: #8a704f;
}

@media (max-width: 800px) {
    .contact-layout {
        grid-template-columns: 1fr;
    }

    .contact-side {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 650px) {
    .contact-main {
        padding: 14px 10px 34px;
    }

    .contact-hero {
        padding: 21px;
    }

    .contact-hero h1 {
        font-size: 26px;
    }

    .contact-form-grid,
    .contact-side {
        grid-template-columns: 1fr;
    }

    .contact-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .contact-actions button,
    .contact-actions a {
        text-align: center;
    }
}


/* ---------- Page 12: Notifications Center ---------- */
.notification-button {
    text-decoration: none;
}

.notifications-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 52px;
    background: #f5f8fb;
}

.notifications-page {
    width: min(960px, 100%);
    margin: 0 auto;
}

.notifications-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 25px 28px;
    border: 1px solid #dbe6ef;
    border-radius: 13px;
    background: #ffffff;
}

.notifications-kicker {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.notifications-hero h1 {
    margin: 5px 0 8px;
    color: #0b356b;
    font-size: 31px;
}

.notifications-hero p {
    max-width: 670px;
    margin: 0;
    color: #667f96;
    font-size: 11px;
    line-height: 1.6;
}

.notifications-unread-summary {
    display: grid;
    justify-items: center;
    min-width: 88px;
    padding: 12px;
    border-radius: 10px;
    background: #edf6ff;
}

.notifications-unread-summary span {
    color: #718ba4;
    font-size: 9px;
    font-weight: 700;
}

.notifications-unread-summary strong {
    margin-top: 2px;
    color: #0b6fc8;
    font-size: 24px;
}

.notifications-flash {
    margin-top: 12px;
    padding: 11px 14px;
    border: 1px solid #c8e2d3;
    border-radius: 9px;
    background: #f0faf4;
    color: #377157;
    font-size: 10px;
    font-weight: 700;
}

.notifications-muted-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 12px;
    padding: 13px 15px;
    border: 1px solid #efd7aa;
    border-radius: 9px;
    background: #fffaf2;
}

.notifications-muted-banner > div {
    display: grid;
    gap: 3px;
}

.notifications-muted-banner strong {
    color: #80551d;
    font-size: 11px;
}

.notifications-muted-banner span {
    color: #8f7553;
    font-size: 9px;
}

.notifications-muted-banner button,
.notifications-toolbar button {
    border: 0;
    cursor: pointer;
}

.notifications-muted-banner button {
    padding: 8px 11px;
    border-radius: 7px;
    background: #e89b32;
    color: #ffffff;
    font-size: 9px;
    font-weight: 800;
}

.notifications-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 12px;
    padding: 11px 12px;
    border: 1px solid #dbe6ef;
    border-radius: 10px;
    background: #ffffff;
}

.notifications-toolbar-actions,
.notification-mute-control {
    display: flex;
    align-items: center;
    gap: 7px;
}

.notifications-toolbar-actions form,
.notification-mute-control form {
    margin: 0;
}

.notifications-toolbar button {
    padding: 8px 10px;
    border-radius: 7px;
    background: #edf4fa;
    color: #43647f;
    font-size: 9px;
    font-weight: 800;
}

.notifications-toolbar button:hover:not(:disabled) {
    background: #e1edf6;
}

.notifications-toolbar button:disabled {
    opacity: .45;
    cursor: default;
}

.notifications-toolbar .notification-clear-button {
    background: #f6f1f1;
    color: #8a5555;
}

.notification-mute-control > span {
    color: #7890a5;
    font-size: 9px;
    font-weight: 700;
}

.notifications-list {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.notification-row {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 14px 15px;
    border: 1px solid #dbe6ef;
    border-radius: 10px;
    background: #ffffff;
}

.notification-row.unread {
    border-color: #bfd9ef;
    background: #f8fcff;
    box-shadow: inset 3px 0 0 #1477ee;
}

.notification-type-icon {
    display: grid;
    place-items: center;
    width: 39px;
    height: 39px;
    border-radius: 10px;
    background: #edf6ff;
    color: #0b6fc8;
    font-size: 15px;
    font-weight: 900;
}

.notification-row-heading {
    display: flex;
    align-items: center;
    gap: 7px;
}

.notification-row-heading strong {
    color: #264f74;
    font-size: 11px;
}

.notification-unread-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #1477ee;
}

.notification-row-copy p {
    margin: 4px 0;
    color: #71879b;
    font-size: 9px;
    line-height: 1.45;
}

.notification-row-copy time {
    color: #99a9b7;
    font-size: 8px;
}

.notification-open-form button {
    padding: 8px 11px;
    border: 0;
    border-radius: 7px;
    background: #1477ee;
    color: #ffffff;
    font-size: 9px;
    font-weight: 800;
    cursor: pointer;
}

.notifications-empty {
    padding: 54px 24px;
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
    text-align: center;
}

.notifications-empty-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    margin: 0 auto 12px;
    border-radius: 50%;
    background: #edf6ff;
    color: #0b6fc8;
    font-size: 25px;
}

.notifications-empty h2 {
    margin: 0 0 6px;
    color: #315779;
    font-size: 16px;
}

.notifications-empty p {
    max-width: 470px;
    margin: 0 auto;
    color: #8094a7;
    font-size: 10px;
    line-height: 1.55;
}

.notifications-retention-note {
    margin-top: 10px;
    padding: 9px;
    color: #8b9dac;
    font-size: 8px;
    text-align: center;
}

@media (max-width: 650px) {
    .notifications-main {
        padding: 14px 10px 34px;
    }

    .notifications-hero,
    .notifications-toolbar,
    .notifications-muted-banner {
        align-items: stretch;
        flex-direction: column;
    }

    .notifications-unread-summary {
        min-width: 0;
        grid-template-columns: auto auto;
        justify-content: start;
        justify-items: start;
        align-items: baseline;
        gap: 7px;
    }

    .notifications-toolbar-actions,
    .notification-mute-control {
        flex-wrap: wrap;
    }

    .notification-row {
        grid-template-columns: 39px 1fr;
    }

    .notification-open-form {
        grid-column: 2;
    }

    .notification-open-form button {
        width: 100%;
    }
}


/* ---------- Page 13: Settings ---------- */
:root {
    --user-font-family: Arial, Helvetica, sans-serif;
    --user-font-size: 16px;
    --user-font-color: #082d61;
    --user-background: #f7fbff;
}

body {
    font-family: var(--user-font-family);
    font-size: var(--user-font-size);
}

html[data-user-theme="light"] body {
    color: var(--user-font-color);
    background: var(--user-background);
}

html[data-user-theme="dark"] body {
    color: #e8f2ff;
    background: #132333;
}

html[data-user-theme="dark"] .main-area,
html[data-user-theme="dark"] .settings-main,
html[data-user-theme="dark"] .notifications-main,
html[data-user-theme="dark"] .contact-main,
html[data-user-theme="dark"] .safety-main,
html[data-user-theme="dark"] .technical-main {
    background: #132333;
}

html[data-user-theme="dark"] .sidebar,
html[data-user-theme="dark"] .settings-card,
html[data-user-theme="dark"] .settings-hero,
html[data-user-theme="dark"] .settings-section-nav,
html[data-user-theme="dark"] .settings-reset-card {
    background: #1c3043;
    border-color: #31485d;
}

html[data-user-theme="dark"] .nav-item,
html[data-user-theme="dark"] .settings-card h2,
html[data-user-theme="dark"] .settings-account-summary strong,
html[data-user-theme="dark"] .settings-radio-card strong,
html[data-user-theme="dark"] .settings-notification-grid strong {
    color: #e9f4ff;
}

.settings-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 52px;
    background: #f5f8fb;
}

.settings-page {
    width: min(1080px, 100%);
    margin: 0 auto;
}

.settings-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 26px 28px;
    border: 1px solid #dbe6ef;
    border-radius: 13px;
    background: #ffffff;
}

.settings-kicker {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.settings-hero h1 {
    margin: 5px 0 7px;
    color: #0b356b;
    font-size: 32px;
}

.settings-hero p {
    margin: 0;
    color: #6b8398;
    font-size: 11px;
}

.settings-save-status {
    min-width: 74px;
    padding: 8px 10px;
    border-radius: 999px;
    background: #eaf8f1;
    color: #2d7a56;
    font-size: 9px;
    font-weight: 800;
    text-align: center;
}

.settings-save-status[data-state="saving"] {
    background: #fff3df;
    color: #95651d;
}

.settings-save-status[data-state="error"] {
    background: #fff0f0;
    color: #a44c4c;
}

.settings-layout {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr);
    gap: 14px;
    margin-top: 14px;
}

.settings-section-nav {
    position: sticky;
    top: 88px;
    align-self: start;
    display: grid;
    gap: 5px;
    padding: 10px;
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
}

.settings-section-nav a {
    padding: 10px 11px;
    border-radius: 8px;
    color: #4f6e89;
    font-size: 10px;
    font-weight: 700;
}

.settings-section-nav a:hover {
    background: #edf6ff;
    color: #0b6fc8;
}

.settings-sections {
    display: grid;
    gap: 12px;
}

.settings-card,
.settings-reset-card {
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #ffffff;
}

.settings-card {
    padding: 21px;
    scroll-margin-top: 90px;
}

.settings-card-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 15px;
}

.settings-card h2 {
    margin: 4px 0 0;
    color: #174b7e;
    font-size: 17px;
}

.settings-inline-link {
    padding: 8px 10px;
    border-radius: 7px;
    background: #edf6ff;
    color: #0b6fc8;
    font-size: 9px;
    font-weight: 800;
}

.settings-account-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.settings-account-summary > div {
    display: grid;
    gap: 4px;
    padding: 13px;
    border-radius: 9px;
    background: #f7fafc;
}

.settings-account-summary span {
    color: #8295a8;
    font-size: 8px;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.settings-account-summary strong {
    color: #315779;
    font-size: 10px;
    overflow-wrap: anywhere;
}

.settings-info-box {
    margin-top: 12px;
    padding: 11px 12px;
    border-radius: 8px;
    background: #f5f8fb;
    color: #71879b;
    font-size: 9px;
    line-height: 1.5;
}

.settings-choice-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.settings-radio-card {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    align-items: start;
    padding: 14px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
    cursor: pointer;
}

.settings-radio-card:has(input:checked) {
    border-color: #8cc3f0;
    background: #f3f9ff;
}

.settings-radio-card input {
    margin-top: 2px;
}

.settings-radio-card span {
    display: grid;
    gap: 4px;
}

.settings-radio-card strong {
    color: #315779;
    font-size: 11px;
}

.settings-radio-card small {
    color: #7e92a5;
    font-size: 9px;
    line-height: 1.45;
}

.settings-privacy-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 11px;
}

.settings-privacy-facts span {
    padding: 6px 8px;
    border-radius: 999px;
    background: #eef6fb;
    color: #59758d;
    font-size: 8px;
    font-weight: 700;
}

.settings-notification-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.settings-notification-grid > div {
    padding: 14px;
    border-radius: 9px;
    background: #f7fafc;
}

.settings-notification-grid strong {
    color: #315779;
    font-size: 10px;
}

.settings-notification-grid p {
    margin: 5px 0 0;
    color: #7d91a4;
    font-size: 9px;
    line-height: 1.5;
}

.settings-control-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.settings-control-grid label,
.settings-language-control {
    display: grid;
    gap: 6px;
}

.settings-control-grid label > span,
.settings-language-control > span {
    color: #52708a;
    font-size: 9px;
    font-weight: 700;
}

.settings-control-grid select,
.settings-language-control select {
    width: 100%;
    min-height: 39px;
    padding: 8px 10px;
    border: 1px solid #cfdee9;
    border-radius: 8px;
    background: #ffffff;
    color: #315779;
    font-size: 10px;
}

.settings-control-grid input[type="color"] {
    width: 100%;
    height: 39px;
    padding: 3px;
    border: 1px solid #cfdee9;
    border-radius: 8px;
    background: #ffffff;
    cursor: pointer;
}

.settings-appearance-preview {
    margin-top: 14px;
    padding: 18px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
}

.settings-appearance-preview strong {
    display: block;
    margin-bottom: 6px;
}

.settings-appearance-preview p {
    margin: 0;
    line-height: 1.5;
}

.settings-language-control {
    max-width: 330px;
}

.settings-reset-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 17px 20px;
}

.settings-reset-card strong {
    color: #315779;
    font-size: 11px;
}

.settings-reset-card p {
    margin: 4px 0 0;
    color: #8295a8;
    font-size: 9px;
}

.settings-reset-card button {
    padding: 9px 12px;
    border: 1px solid #e1b8b8;
    border-radius: 8px;
    background: #fff4f4;
    color: #9a4f4f;
    font-size: 9px;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
}

@media (max-width: 850px) {
    .settings-layout {
        grid-template-columns: 1fr;
    }

    .settings-section-nav {
        position: static;
        display: flex;
        overflow-x: auto;
    }

    .settings-section-nav a {
        flex: 0 0 auto;
    }

    .settings-control-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .settings-main {
        padding: 14px 10px 34px;
    }

    .settings-hero {
        flex-direction: column;
    }

    .settings-account-summary,
    .settings-choice-row,
    .settings-notification-grid,
    .settings-control-grid {
        grid-template-columns: 1fr;
    }

    .settings-reset-card {
        align-items: stretch;
        flex-direction: column;
    }
}


/* ---------- Page 14: Reporting & Moderation ---------- */
.report-main,
.moderation-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 52px;
    background: #f5f8fb;
}

.report-page {
    width: min(760px, 100%);
    margin: 0 auto;
}

.report-back-link {
    display: inline-block;
    margin-bottom: 10px;
    color: #57738d;
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
}

.report-card {
    padding: 25px;
    border: 1px solid #dbe6ef;
    border-radius: 12px;
    background: #ffffff;
}

.report-kicker,
.moderation-kicker {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.report-card h1 {
    margin: 5px 0 5px;
    color: #0b356b;
    font-size: 28px;
}

.report-target {
    margin: 0 0 18px;
    color: #73899e;
    font-size: 10px;
}

.report-form {
    display: grid;
    gap: 15px;
}

.report-form fieldset {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    border: 0;
}

.report-form legend {
    margin-bottom: 8px;
    color: #315779;
    font-size: 11px;
    font-weight: 800;
}

.report-reason-option {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    align-items: start;
    padding: 12px;
    border: 1px solid #dbe6ef;
    border-radius: 8px;
    cursor: pointer;
}

.report-reason-option:has(input:checked) {
    border-color: #8cc3f0;
    background: #f4faff;
}

.report-reason-option span {
    display: grid;
    gap: 3px;
}

.report-reason-option strong {
    color: #315779;
    font-size: 10px;
}

.report-reason-option small {
    color: #b16622;
    font-size: 8px;
    font-weight: 700;
}

.report-details-label {
    display: grid;
    gap: 6px;
}

.report-details-label > span {
    color: #4f6d87;
    font-size: 10px;
    font-weight: 700;
}

.report-details-label small {
    color: #8fa0af;
    font-weight: 400;
}

.report-details-label textarea {
    width: 100%;
    min-height: 130px;
    box-sizing: border-box;
    padding: 11px;
    border: 1px solid #cfdee9;
    border-radius: 8px;
    font: inherit;
    font-size: 10px;
    resize: vertical;
}

.report-privacy-note {
    padding: 10px 11px;
    border-radius: 8px;
    background: #f5f8fb;
    color: #73899e;
    font-size: 9px;
}

.report-actions {
    display: flex;
    gap: 9px;
}

.report-actions button,
.report-actions a {
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 9px;
    font-weight: 800;
    text-decoration: none;
}

.report-actions button {
    border: 0;
    background: #1477ee;
    color: #fff;
    cursor: pointer;
}

.report-actions a {
    background: #edf3f7;
    color: #58738b;
}

.report-success {
    padding: 18px;
    border: 1px solid #bfe2cd;
    border-radius: 9px;
    background: #f0faf4;
}

.report-success strong {
    color: #286d4c;
    font-size: 13px;
}

.report-success p {
    color: #608371;
    font-size: 10px;
    line-height: 1.55;
}

.report-success a {
    color: #0b6fc8;
    font-size: 9px;
    font-weight: 800;
}

.report-errors {
    margin-bottom: 14px;
    padding: 11px;
    border: 1px solid #edc5c5;
    border-radius: 8px;
    background: #fff5f5;
    color: #8d4343;
    font-size: 9px;
}

.moderation-page {
    width: min(1080px, 100%);
    margin: 0 auto;
}

.moderation-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 25px 28px;
    border: 1px solid #dbe6ef;
    border-radius: 13px;
    background: #fff;
}

.moderation-hero h1 {
    margin: 5px 0 7px;
    color: #0b356b;
    font-size: 31px;
}

.moderation-hero p {
    margin: 0;
    color: #6c8398;
    font-size: 11px;
}

.moderation-high-alert {
    display: grid;
    justify-items: center;
    min-width: 125px;
    padding: 12px;
    border-radius: 10px;
    background: #fff3ed;
}

.moderation-high-alert span {
    color: #9c654c;
    font-size: 8px;
    font-weight: 700;
}

.moderation-high-alert strong {
    color: #c65d32;
    font-size: 24px;
}

.moderation-flash {
    margin-top: 12px;
    padding: 11px 13px;
    border: 1px solid #c8e2d3;
    border-radius: 8px;
    background: #f0faf4;
    color: #377157;
    font-size: 9px;
    font-weight: 700;
}

.moderation-counts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.moderation-counts > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
    background: #fff;
}

.moderation-counts span {
    color: #6f879c;
    font-size: 9px;
    font-weight: 700;
}

.moderation-counts strong {
    color: #174b7e;
    font-size: 18px;
}

.moderation-filters {
    display: flex;
    gap: 6px;
    margin-top: 12px;
    overflow-x: auto;
}

.moderation-filters a {
    flex: 0 0 auto;
    padding: 8px 11px;
    border-radius: 999px;
    background: #eaf0f5;
    color: #607b93;
    font-size: 9px;
    font-weight: 800;
    text-decoration: none;
}

.moderation-filters a.active {
    background: #0b356b;
    color: #fff;
}

.moderation-list {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}

.moderation-report-card {
    overflow: hidden;
    border: 1px solid #dbe6ef;
    border-radius: 10px;
    background: #fff;
}

.moderation-report-card.high-priority {
    border-color: #e7ae92;
    box-shadow: inset 4px 0 0 #d76536;
}

.moderation-report-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 14px;
    border-bottom: 1px solid #edf2f6;
}

.moderation-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.moderation-priority,
.moderation-status,
.moderation-target-type {
    padding: 4px 7px;
    border-radius: 999px;
    font-size: 8px;
    font-weight: 800;
}

.moderation-priority.high {
    background: #fff0e9;
    color: #b6532b;
}

.moderation-priority.normal {
    background: #eef5fa;
    color: #57758d;
}

.moderation-status {
    background: #edf6ff;
    color: #0b6fc8;
}

.moderation-target-type {
    background: #f3f0f8;
    color: #715b8b;
}

.moderation-report-top time {
    color: #93a4b3;
    font-size: 8px;
}

.moderation-report-body {
    display: grid;
    gap: 12px;
    padding: 14px;
}

.moderation-label {
    color: #899baa;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.moderation-report-body h2 {
    margin: 3px 0 0;
    color: #315779;
    font-size: 14px;
}

.moderation-report-body p {
    margin: 4px 0 0;
    color: #687f94;
    font-size: 9px;
    line-height: 1.5;
}

.moderation-report-body a {
    display: inline-block;
    margin-top: 5px;
    color: #0b6fc8;
    font-size: 9px;
    font-weight: 800;
}

.moderation-meta-line {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    color: #8798a7;
    font-size: 8px;
}

.moderation-meta-line em {
    font-style: normal;
    color: #9caab6;
}

.moderation-resolution {
    display: flex;
    gap: 8px;
    padding: 9px 10px;
    border-radius: 7px;
    background: #f5f8fb;
    color: #657d91;
    font-size: 9px;
}

.moderation-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 11px 14px;
    border-top: 1px solid #edf2f6;
    background: #fbfcfd;
}

.moderation-actions form {
    margin: 0;
}

.moderation-actions button {
    padding: 8px 10px;
    border: 0;
    border-radius: 7px;
    background: #1477ee;
    color: #fff;
    font-size: 8px;
    font-weight: 800;
    cursor: pointer;
}

.moderation-actions button.secondary {
    background: #edf3f7;
    color: #55718a;
}

.moderation-actions button.danger {
    background: #a94f4f;
    color: #fff;
}

.moderation-empty {
    display: grid;
    gap: 4px;
    padding: 42px;
    border: 1px solid #dbe6ef;
    border-radius: 10px;
    background: #fff;
    text-align: center;
}

.moderation-empty strong {
    color: #315779;
    font-size: 13px;
}

.moderation-empty span {
    color: #8497a8;
    font-size: 9px;
}

.admin-placeholder-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}

@media (max-width: 650px) {
    .report-main,
    .moderation-main {
        padding: 14px 10px 34px;
    }

    .moderation-hero {
        flex-direction: column;
    }

    .moderation-counts {
        grid-template-columns: 1fr;
    }

    .moderation-report-top {
        flex-direction: column;
    }

    .report-actions {
        flex-direction: column;
    }

    .report-actions a {
        text-align: center;
    }
}


/* ---------- Page 15: Admin Contact Inbox ---------- */
.contact-admin-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 52px;
    background: #f5f8fb;
}

.contact-admin-page {
    width: min(1180px, 100%);
    margin: 0 auto;
}

.contact-admin-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 25px 28px;
    border: 1px solid #dbe6ef;
    border-radius: 13px;
    background: #fff;
}

.contact-admin-kicker {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.contact-admin-hero h1 {
    margin: 5px 0 7px;
    color: #0b356b;
    font-size: 31px;
}

.contact-admin-hero p {
    margin: 0;
    color: #6d8498;
    font-size: 11px;
}

.contact-admin-open-count {
    display: grid;
    justify-items: center;
    min-width: 95px;
    padding: 12px;
    border-radius: 10px;
    background: #edf6ff;
}

.contact-admin-open-count span {
    color: #718ba4;
    font-size: 8px;
    font-weight: 700;
}

.contact-admin-open-count strong {
    color: #0b6fc8;
    font-size: 24px;
}

.contact-admin-flash {
    margin-top: 12px;
    padding: 11px 13px;
    border: 1px solid #c8e2d3;
    border-radius: 8px;
    background: #f0faf4;
    color: #377157;
    font-size: 9px;
    font-weight: 700;
}

.contact-admin-counts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.contact-admin-counts > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
    background: #fff;
}

.contact-admin-counts span {
    color: #6f879c;
    font-size: 9px;
    font-weight: 700;
}

.contact-admin-counts strong {
    color: #174b7e;
    font-size: 18px;
}

.contact-admin-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
}

.contact-admin-filters {
    display: flex;
    gap: 6px;
    overflow-x: auto;
}

.contact-admin-filters a {
    flex: 0 0 auto;
    padding: 8px 11px;
    border-radius: 999px;
    background: #eaf0f5;
    color: #607b93;
    font-size: 9px;
    font-weight: 800;
    text-decoration: none;
}

.contact-admin-filters a.active {
    background: #0b356b;
    color: #fff;
}

.contact-admin-topic-filter label {
    display: flex;
    align-items: center;
    gap: 7px;
}

.contact-admin-topic-filter span {
    color: #768da1;
    font-size: 9px;
    font-weight: 700;
}

.contact-admin-topic-filter select {
    min-height: 34px;
    padding: 6px 9px;
    border: 1px solid #d2e0ea;
    border-radius: 7px;
    background: #fff;
    color: #486a85;
    font-size: 9px;
}

.contact-admin-layout {
    display: grid;
    grid-template-columns: minmax(280px, 390px) minmax(0, 1fr);
    gap: 12px;
    margin-top: 12px;
}

.contact-admin-list,
.contact-admin-detail {
    min-width: 0;
}

.contact-admin-list {
    display: grid;
    align-content: start;
    gap: 8px;
}

.contact-admin-message-card {
    display: grid;
    gap: 6px;
    padding: 13px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
    background: #fff;
    text-decoration: none;
}

.contact-admin-message-card:hover,
.contact-admin-message-card.selected {
    border-color: #9dc9eb;
    background: #f7fbff;
}

.contact-admin-message-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.contact-admin-message-card > strong {
    color: #315779;
    font-size: 11px;
}

.contact-admin-message-card p {
    margin: 0;
    color: #72889b;
    font-size: 9px;
    line-height: 1.45;
}

.contact-admin-message-card small {
    color: #92a2af;
    font-size: 8px;
}

.contact-admin-message-top time {
    color: #95a5b2;
    font-size: 8px;
}

.contact-admin-topic {
    color: #0b6fc8;
    font-size: 8px;
    font-weight: 800;
}

.contact-admin-status {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 4px 7px;
    border-radius: 999px;
    font-size: 8px;
    font-weight: 800;
}

.contact-admin-status.new {
    background: #edf6ff;
    color: #0b6fc8;
}

.contact-admin-status.in_progress {
    background: #fff6e8;
    color: #9a6a22;
}

.contact-admin-status.closed {
    background: #edf5f0;
    color: #53765f;
}

.contact-admin-detail {
    padding: 18px;
    border: 1px solid #dbe6ef;
    border-radius: 10px;
    background: #fff;
}

.contact-admin-select-prompt {
    display: grid;
    gap: 5px;
    min-height: 260px;
    place-content: center;
    text-align: center;
}

.contact-admin-select-prompt strong {
    color: #315779;
    font-size: 14px;
}

.contact-admin-select-prompt p {
    max-width: 390px;
    margin: 0;
    color: #8497a8;
    font-size: 9px;
    line-height: 1.55;
}

.contact-admin-detail-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.contact-admin-detail-head h2 {
    margin: 6px 0 0;
    color: #174b7e;
    font-size: 19px;
}

.contact-admin-topic-pill {
    color: #0b6fc8;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.contact-admin-sender {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 14px;
}

.contact-admin-sender > div {
    display: grid;
    gap: 3px;
    padding: 10px;
    border-radius: 8px;
    background: #f7fafc;
}

.contact-admin-sender span {
    color: #8b9dac;
    font-size: 8px;
    text-transform: uppercase;
}

.contact-admin-sender strong {
    color: #42617a;
    font-size: 9px;
    overflow-wrap: anywhere;
}

.contact-admin-message-body {
    margin-top: 14px;
    padding: 15px;
    border: 1px solid #e0e9f0;
    border-radius: 8px;
    color: #526f87;
    font-size: 10px;
    line-height: 1.65;
}

.contact-admin-status-actions,
.contact-admin-notes {
    margin-top: 16px;
}

.contact-admin-status-actions h3,
.contact-admin-notes h3 {
    margin: 0 0 8px;
    color: #315779;
    font-size: 11px;
}

.contact-admin-status-actions > div {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.contact-admin-status-actions form {
    margin: 0;
}

.contact-admin-status-actions button,
.contact-admin-note-form button {
    padding: 8px 10px;
    border: 0;
    border-radius: 7px;
    background: #1477ee;
    color: #fff;
    font-size: 8px;
    font-weight: 800;
    cursor: pointer;
}

.contact-admin-status-actions button:disabled {
    opacity: .45;
    cursor: default;
}

.contact-admin-note-list {
    display: grid;
    gap: 7px;
    margin-bottom: 10px;
}

.contact-admin-note {
    padding: 10px;
    border-radius: 8px;
    background: #f5f8fb;
}

.contact-admin-note > div {
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

.contact-admin-note strong {
    color: #41607a;
    font-size: 9px;
}

.contact-admin-note time {
    color: #9aabb8;
    font-size: 8px;
}

.contact-admin-note p {
    margin: 5px 0 0;
    color: #6f8598;
    font-size: 9px;
    line-height: 1.5;
}

.contact-admin-no-notes {
    color: #8d9eab;
    font-size: 9px;
}

.contact-admin-note-form {
    display: grid;
    gap: 8px;
}

.contact-admin-note-form label {
    display: grid;
    gap: 5px;
}

.contact-admin-note-form label > span {
    color: #58758e;
    font-size: 9px;
    font-weight: 700;
}

.contact-admin-note-form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    border: 1px solid #d0dfe9;
    border-radius: 8px;
    font: inherit;
    font-size: 9px;
    resize: vertical;
}

.contact-admin-note-form button {
    justify-self: start;
}

.contact-admin-empty {
    display: grid;
    gap: 4px;
    padding: 34px 20px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
    background: #fff;
    text-align: center;
}

.contact-admin-empty strong {
    color: #315779;
    font-size: 11px;
}

.contact-admin-empty span {
    color: #8799a7;
    font-size: 9px;
}

@media (max-width: 900px) {
    .contact-admin-layout {
        grid-template-columns: 1fr;
    }

    .contact-admin-detail {
        order: -1;
    }
}

@media (max-width: 650px) {
    .contact-admin-main {
        padding: 14px 10px 34px;
    }

    .contact-admin-hero,
    .contact-admin-controls {
        align-items: stretch;
        flex-direction: column;
    }

    .contact-admin-counts,
    .contact-admin-sender {
        grid-template-columns: 1fr;
    }

    .contact-admin-topic-filter label {
        align-items: stretch;
        flex-direction: column;
    }
}


/* ---------- Page 16: Edit Profile & Profile Privacy ---------- */
.profile-avatar-large {
    overflow: hidden;
}

.profile-avatar-large img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-private-state {
    display: grid;
    justify-items: center;
    gap: 7px;
    margin-top: 14px;
    padding: 55px 24px;
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #fff;
    text-align: center;
}

.profile-private-state-icon {
    display: grid;
    place-items: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #eef5fa;
    font-size: 24px;
}

.profile-private-state h2 {
    margin: 4px 0 0;
    color: #315779;
    font-size: 17px;
}

.profile-private-state p {
    max-width: 520px;
    margin: 0;
    color: #7f92a4;
    font-size: 10px;
    line-height: 1.55;
}

.edit-profile-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 24px 24px 52px;
    background: #f5f8fb;
}

.edit-profile-page {
    width: min(900px, 100%);
    margin: 0 auto;
}

.edit-profile-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 25px 28px;
    border: 1px solid #dbe6ef;
    border-radius: 13px;
    background: #fff;
}

.edit-profile-kicker {
    color: #0b6fc8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.edit-profile-hero h1 {
    margin: 5px 0 7px;
    color: #0b356b;
    font-size: 31px;
}

.edit-profile-hero p {
    margin: 0;
    color: #6d8498;
    font-size: 11px;
}

.edit-profile-hero > a {
    padding: 9px 11px;
    border-radius: 8px;
    background: #edf6ff;
    color: #0b6fc8;
    font-size: 9px;
    font-weight: 800;
    text-decoration: none;
}

.edit-profile-form {
    display: grid;
    gap: 12px;
    margin-top: 12px;
}

.edit-profile-card {
    padding: 21px;
    border: 1px solid #dbe6ef;
    border-radius: 11px;
    background: #fff;
}

.edit-profile-card-heading {
    margin-bottom: 14px;
}

.edit-profile-card-heading h2 {
    margin: 4px 0 0;
    color: #174b7e;
    font-size: 17px;
}

.edit-profile-avatar-row {
    display: flex;
    align-items: center;
    gap: 18px;
}

.edit-profile-avatar-preview {
    display: grid;
    place-items: center;
    width: 92px;
    height: 92px;
    flex: 0 0 92px;
    overflow: hidden;
    border-radius: 50%;
    background: #0b356b;
    color: #fff;
    font-size: 31px;
    font-weight: 800;
}

.edit-profile-avatar-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.edit-profile-avatar-controls {
    display: grid;
    gap: 7px;
}

.edit-profile-upload {
    position: relative;
    display: inline-flex;
    width: fit-content;
    overflow: hidden;
}

.edit-profile-upload span {
    padding: 9px 11px;
    border-radius: 7px;
    background: #1477ee;
    color: #fff;
    font-size: 9px;
    font-weight: 800;
    cursor: pointer;
}

.edit-profile-upload input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.edit-profile-avatar-controls small {
    color: #8b9daa;
    font-size: 8px;
}

.edit-profile-remove {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #8c5d5d;
    font-size: 9px;
}

.edit-profile-fields {
    display: grid;
    gap: 13px;
}

.edit-profile-fields > label {
    display: grid;
    gap: 6px;
}

.edit-profile-fields > label > span,
.edit-profile-readonly > span {
    color: #4f6d87;
    font-size: 9px;
    font-weight: 800;
}

.edit-profile-fields input[type="text"],
.edit-profile-fields textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 11px;
    border: 1px solid #cfdee9;
    border-radius: 8px;
    background: #fff;
    color: #315779;
    font: inherit;
    font-size: 10px;
}

.edit-profile-fields input:disabled {
    background: #f2f5f7;
    color: #7d8d9a;
}

.edit-profile-fields textarea {
    resize: vertical;
}

.edit-profile-fields small,
.edit-profile-readonly small {
    color: #8a9ba9;
    font-size: 8px;
}

.edit-profile-checkbox {
    grid-template-columns: auto 1fr !important;
    align-items: start;
    gap: 9px !important;
    padding: 11px;
    border-radius: 8px;
    background: #f7fafc;
}

.edit-profile-checkbox span {
    display: grid;
    gap: 3px;
}

.edit-profile-checkbox strong {
    color: #42617a;
    font-size: 10px;
}

.edit-profile-readonly {
    display: grid;
    gap: 4px;
    padding: 11px;
    border-radius: 8px;
    background: #f7fafc;
}

.edit-profile-readonly strong {
    color: #315779;
    font-size: 10px;
}

.edit-profile-readonly a {
    width: fit-content;
    color: #0b6fc8;
    font-size: 8px;
    font-weight: 800;
}

.edit-profile-privacy-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.edit-profile-privacy-options label {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: start;
    gap: 9px;
    padding: 13px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
    cursor: pointer;
}

.edit-profile-privacy-options label:has(input:checked) {
    border-color: #8cc3f0;
    background: #f4faff;
}

.edit-profile-privacy-options span {
    display: grid;
    gap: 4px;
}

.edit-profile-privacy-options strong {
    color: #315779;
    font-size: 10px;
}

.edit-profile-privacy-options small {
    color: #7f93a4;
    font-size: 8px;
    line-height: 1.45;
}

.edit-profile-privacy-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 11px;
}

.edit-profile-privacy-facts span {
    padding: 6px 8px;
    border-radius: 999px;
    background: #eef6fb;
    color: #59758d;
    font-size: 8px;
    font-weight: 700;
}

.edit-profile-actions {
    display: flex;
    gap: 8px;
}

.edit-profile-actions button,
.edit-profile-actions a {
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 9px;
    font-weight: 800;
    text-decoration: none;
}

.edit-profile-actions button {
    border: 0;
    background: #1477ee;
    color: #fff;
    cursor: pointer;
}

.edit-profile-actions a {
    background: #eaf0f5;
    color: #5b758d;
}

.edit-profile-success,
.edit-profile-errors {
    margin-top: 12px;
    padding: 11px 13px;
    border-radius: 8px;
    font-size: 9px;
    font-weight: 700;
}

.edit-profile-success {
    border: 1px solid #c8e2d3;
    background: #f0faf4;
    color: #377157;
}

.edit-profile-errors {
    border: 1px solid #edc5c5;
    background: #fff5f5;
    color: #8d4343;
}

@media (max-width: 650px) {
    .edit-profile-main {
        padding: 14px 10px 34px;
    }

    .edit-profile-hero,
    .edit-profile-avatar-row {
        align-items: stretch;
        flex-direction: column;
    }

    .edit-profile-avatar-preview {
        width: 78px;
        height: 78px;
        flex-basis: 78px;
    }

    .edit-profile-privacy-options {
        grid-template-columns: 1fr;
    }
}


/* ---------- Page 16 fixes: avatar upload + location detection ---------- */
.edit-profile-location-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
}

.edit-profile-detect-location {
    min-height: 39px;
    padding: 8px 11px;
    border: 1px solid #9fc8e9;
    border-radius: 8px;
    background: #edf6ff;
    color: #0b6fc8;
    font-size: 9px;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
}

.edit-profile-detect-location:hover:not(:disabled) {
    background: #dfefff;
}

.edit-profile-detect-location:disabled {
    opacity: .55;
    cursor: default;
}

@media (max-width: 620px) {
    .edit-profile-location-row {
        grid-template-columns: 1fr;
    }

    .edit-profile-detect-location {
        width: 100%;
    }
}


/* ---------- Page 17: Account & Security ---------- */
.account-security-main{flex:1;min-width:0;padding:24px;background:#f5f8fb}.account-security-page{width:min(1040px,100%);margin:auto}.account-security-hero{display:flex;justify-content:space-between;gap:18px;padding:25px 28px;border:1px solid #dbe6ef;border-radius:13px;background:#fff}.security-kicker{color:#0b6fc8;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.account-security-hero h1{margin:5px 0 7px;color:#0b356b;font-size:30px}.account-security-hero p,.security-card p,.security-recovery p{margin:0;color:#71879a;font-size:10px;line-height:1.55}.account-security-hero>a,.security-recovery>a,.security-primary-link{height:fit-content;padding:9px 12px;border-radius:8px;background:#edf6ff;color:#0b6fc8;font-size:9px;font-weight:800;text-decoration:none}.security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.security-card{padding:20px;border:1px solid #dbe6ef;border-radius:11px;background:#fff}.security-card h2,.security-recovery h2{margin:5px 0 7px;color:#174b7e;font-size:17px}.security-card form{display:grid;gap:8px;margin-top:14px}.security-card label,.security-verify-box label{display:grid;gap:5px;color:#4f6d87;font-size:9px;font-weight:800}.security-card input,.security-verify-box input{box-sizing:border-box;width:100%;padding:10px;border:1px solid #cfdee9;border-radius:8px;font:inherit}.security-card button,.security-verify-box button{width:fit-content;padding:9px 12px;border:0;border-radius:7px;background:#1477ee;color:#fff;font-size:9px;font-weight:800;cursor:pointer}.security-card button:disabled{opacity:.5;cursor:default}.security-card small{display:block;margin-top:9px;color:#899aa8;font-size:8px;line-height:1.5}.security-danger-card{border-color:#ecd1d1}.security-danger-card button{background:#b94c4c}.security-success,.security-error,.security-local-link{margin-top:12px;padding:11px 13px;border-radius:8px;font-size:9px}.security-success{border:1px solid #c8e2d3;background:#f0faf4;color:#377157}.security-error{border:1px solid #edc5c5;background:#fff5f5;color:#8d4343}.security-local-link{display:grid;gap:5px;border:1px solid #f0d69b;background:#fff9e9;color:#75591c}.security-local-link p{margin:0}.security-local-link a{color:#0b6fc8;font-weight:800}.security-recovery{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:12px;padding:20px;border:1px solid #dbe6ef;border-radius:11px;background:#fff}.security-verify-box{width:min(460px,calc(100% - 28px));box-sizing:border-box;margin:60px auto;padding:27px;border:1px solid #dbe6ef;border-radius:12px;background:#fff}.security-verify-box h1{color:#0b356b}.security-verify-box p{color:#71879a;font-size:10px;line-height:1.55}.security-verify-box form{display:grid;gap:11px;margin-top:15px}.security-brand{color:#0b356b;font-weight:900;text-decoration:none}.security-primary-link{display:inline-block;margin-top:12px}@media(max-width:700px){.security-grid{grid-template-columns:1fr}.account-security-main{padding:14px 10px}.account-security-hero,.security-recovery{align-items:stretch;flex-direction:column}}

/* ---------- Page 18: Category Management ---------- */
.category-admin-main{flex:1;min-width:0;padding:24px;background:#f5f8fb}.category-admin-page{width:min(1080px,100%);margin:0 auto}.category-admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:25px 28px;border:1px solid #dbe6ef;border-radius:13px;background:#fff}.category-admin-kicker{color:#0b6fc8;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.category-admin-hero h1{margin:5px 0 7px;color:#0b356b;font-size:30px}.category-admin-hero p{max-width:650px;margin:0;color:#71879a;font-size:10px;line-height:1.55}.category-admin-hero>a,.category-list-heading>a{padding:9px 12px;border-radius:8px;background:#edf6ff;color:#0b6fc8;font-size:9px;font-weight:800;text-decoration:none;white-space:nowrap}.category-admin-success,.category-admin-error{margin-top:12px;padding:11px 13px;border-radius:8px;font-size:9px;font-weight:700}.category-admin-success{border:1px solid #c8e2d3;background:#f0faf4;color:#377157}.category-admin-error{border:1px solid #edc5c5;background:#fff5f5;color:#8d4343}.category-admin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.category-admin-summary article{display:grid;gap:4px;padding:16px 18px;border:1px solid #dbe6ef;border-radius:10px;background:#fff}.category-admin-summary span{color:#6f8699;font-size:9px;font-weight:800}.category-admin-summary strong{color:#0b356b;font-size:22px}.category-admin-summary small{color:#93a1ad;font-size:8px}.category-admin-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:12px;margin-top:12px}.category-admin-card{padding:20px;border:1px solid #dbe6ef;border-radius:11px;background:#fff}.category-admin-heading{display:flex;gap:11px;align-items:flex-start}.category-admin-icon{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;border-radius:9px;background:#edf6ff;color:#0b6fc8;font-size:18px;font-weight:900}.category-admin-heading h2,.category-list-heading h2{margin:2px 0 5px;color:#174b7e;font-size:17px}.category-admin-heading p,.category-list-heading p,.category-admin-note p{margin:0;color:#71879a;font-size:9px;line-height:1.55}.category-create-form{display:grid;gap:9px;margin-top:16px}.category-create-form label{display:grid;gap:6px;color:#4f6d87;font-size:9px;font-weight:800}.category-create-form input{box-sizing:border-box;width:100%;padding:11px;border:1px solid #cfdee9;border-radius:8px;font:inherit;color:#173c5e}.category-create-form small{color:#8a9ba9;font-size:8px;line-height:1.5}.category-create-form button{width:fit-content;margin-top:2px;padding:10px 14px;border:0;border-radius:8px;background:#1477ee;color:#fff;font-size:9px;font-weight:900;cursor:pointer}.category-rule-list{display:grid;gap:7px;margin-top:15px}.category-rule-list span{display:grid;gap:2px;padding:9px 10px;border-radius:8px;background:#f7fafc;color:#71879a;font-size:8px;line-height:1.45}.category-rule-list b{color:#42617a;font-size:9px}.category-list-card{margin-top:12px}.category-list-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.category-admin-table-wrap{overflow:auto;border:1px solid #e0e8ee;border-radius:9px}.category-admin-table{width:100%;border-collapse:collapse;min-width:690px}.category-admin-table th{padding:10px 12px;background:#f5f8fb;color:#617a8f;font-size:8px;text-align:left;text-transform:uppercase;letter-spacing:.04em}.category-admin-table td{padding:12px;border-top:1px solid #e6edf2;color:#587087;font-size:9px}.category-admin-table td:nth-child(3),.category-admin-table td:nth-child(4),.category-admin-table td:nth-child(5){font-variant-numeric:tabular-nums}.category-admin-table td strong{display:block;color:#284f70;font-size:10px}.category-admin-table td small{display:block;margin-top:2px;color:#98a6b1;font-size:8px}.category-order-number{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#edf6ff;color:#0b6fc8;font-weight:900}.category-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900}.category-status.active{background:#edf8f1;color:#3f7756}.category-status.protected{background:#fff4db;color:#85641a}.category-admin-note{margin-top:12px;padding:15px 17px;border:1px solid #d8e5ee;border-radius:10px;background:#eef6fb}.category-admin-note strong{display:block;margin-bottom:4px;color:#315779;font-size:10px}@media(max-width:760px){.category-admin-main{padding:14px 10px}.category-admin-hero,.category-list-heading{flex-direction:column}.category-admin-grid,.category-admin-summary{grid-template-columns:1fr}.category-admin-hero>a,.category-list-heading>a{width:fit-content}}


/* Page 19 — Moderation Appeals */
.appeals-main{width:100%;min-width:0;padding:34px 38px 70px}
.appeals-page{max-width:1120px;margin:0 auto}
.appeals-hero{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;margin-bottom:24px}
.appeals-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#54708f;margin-bottom:7px}
.appeals-hero h1{margin:0 0 8px;font-size:2rem;color:#082d61}
.appeals-hero p{margin:0;max-width:720px;color:#60758d;line-height:1.6}
.appeals-rule-card{min-width:150px;background:#fff;border:1px solid #dbe6f0;border-radius:14px;padding:17px 20px;box-shadow:0 4px 16px rgba(20,54,89,.06);text-align:center}
.appeals-rule-card strong{display:block;font-size:1.55rem;color:#082d61}
.appeals-rule-card span{font-size:.82rem;color:#71839a}
.appeals-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 28px}
.appeals-info-grid>div{background:#f7fbff;border:1px solid #dce9f5;border-radius:13px;padding:16px}
.appeals-info-grid strong,.appeals-info-grid span{display:block}
.appeals-info-grid strong{color:#103d72;margin-bottom:6px}
.appeals-info-grid span{color:#61758c;font-size:.9rem;line-height:1.5}
.appeals-section{margin-top:28px}
.appeals-section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}
.appeals-section-heading h2{margin:0;color:#123962}
.appeals-section-heading p{margin:4px 0 0;color:#738399;font-size:.9rem}
.appeals-section-heading>span{background:#eaf2fb;color:#174b80;border-radius:999px;padding:5px 11px;font-weight:800}
.appeals-list{display:grid;gap:15px}
.appeal-card,.appeal-history-card,.appeal-review-card{background:#fff;border:1px solid #dbe5ef;border-radius:15px;padding:20px;box-shadow:0 4px 18px rgba(22,48,75,.055)}
.appeal-card-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:10px}
.appeal-card-head time{color:#8090a4;font-size:.8rem}
.appeal-type,.appeal-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.76rem;font-weight:800;background:#edf4fb;color:#174b80}
.appeal-status{background:#fff4d9;color:#805e00}
.status-approved .appeal-status{background:#e7f7ed;color:#22623a}
.status-rejected .appeal-status{background:#fdeaea;color:#8b3030}
.appeal-card h3,.appeal-history-card h3,.appeal-review-card h2{margin:0 0 8px;color:#113b69}
.appeal-card>p,.appeal-content-preview{color:#5c7188;line-height:1.5}
.appeal-form{margin-top:16px;padding-top:16px;border-top:1px solid #e4ecf3}
.appeal-form label{font-weight:700;color:#244a70;display:block;margin-bottom:8px}
.appeal-form textarea{width:100%;resize:vertical;border:1px solid #c9d7e5;border-radius:10px;padding:12px;font:inherit}
.appeal-form-footer{display:flex;justify-content:space-between;align-items:center;margin-top:9px}
.appeal-form-footer span{font-size:.78rem;color:#8795a7}
.appeal-form-footer button,.appeal-admin-actions button{border:0;border-radius:9px;background:#0a3b72;color:#fff;padding:10px 15px;font-weight:800;cursor:pointer}
.appeals-empty{background:#fff;border:1px dashed #cbd9e7;border-radius:14px;padding:26px;text-align:center;color:#657990}
.appeals-empty strong,.appeals-empty span{display:block}
.appeals-empty strong{color:#244a70;margin-bottom:5px}
.appeal-statement,.appeal-user-statement{background:#f7faff;border-radius:10px;padding:12px;color:#526a83;line-height:1.5}
.appeal-progress{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.appeal-progress>div{display:flex;align-items:center;gap:9px;padding:10px;background:#f3f6f9;border-radius:10px;color:#718195}
.appeal-progress strong{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#dce5ee}
.appeal-progress .complete{background:#edf8f1;color:#356948}
.appeal-progress .complete strong{background:#cdebd8}
.appeal-resolution{margin-top:12px;padding:11px 13px;border-left:3px solid #7795b4;background:#f6f9fc}
.appeal-resolution strong,.appeal-resolution span{display:block}
.appeal-resolution span{margin-top:3px;color:#61768c}
.appeal-open-link{display:inline-block;margin-top:12px;font-weight:800;color:#164f88}
.appeal-owner-notice{display:flex;gap:10px;align-items:center;background:#fff8df;border:1px solid #ead58b;color:#705d18;border-radius:11px;padding:12px 15px;margin-bottom:18px}
.appeal-owner-notice span{font-size:.88rem}
.appeal-review-meta{display:flex;gap:20px;color:#718096;font-size:.84rem;margin:8px 0 14px}
.appeal-user-statement strong{display:block;color:#24486c;margin-bottom:5px}
.appeal-user-statement p{margin:0}
.appeal-review-stage{margin-top:10px;display:flex;justify-content:space-between;padding:9px 12px;border-radius:9px;background:#f6f8fa;color:#5d7084}
.appeal-review-stage.approved{background:#edf8f1}
.appeal-review-stage.rejected{background:#fff0f0}
.appeal-admin-actions{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:end;margin-top:18px;padding-top:16px;border-top:1px solid #e1e9f1}
.appeal-admin-actions form{margin:0}
.appeal-reject-form{display:flex;justify-content:flex-end;align-items:end;gap:10px}
.appeal-reject-form label{flex:1;max-width:520px;color:#526b83;font-size:.8rem;font-weight:700}
.appeal-reject-form input{display:block;width:100%;margin-top:5px;border:1px solid #cbd8e5;border-radius:8px;padding:9px}
.appeal-admin-actions button.danger{background:#a73838}
.appeal-admin-actions button:disabled{opacity:.45;cursor:not-allowed}
.moderator-approved-note{display:inline-flex;align-items:center;gap:6px;margin:10px 0;background:#e8f7ee;border:1px solid #bfe4cc;color:#28633c;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:800}
.disabled-action{opacity:.65;cursor:default;text-decoration:none}
.appeal-review-card.status-approved{border-left:4px solid #5a9a70}
.appeal-review-card.status-rejected{border-left:4px solid #b45b5b}

@media(max-width:850px){
    .appeals-main{padding:22px 16px 60px}
    .appeals-hero{flex-direction:column}
    .appeals-rule-card{width:100%}
    .appeals-info-grid{grid-template-columns:1fr}
    .appeal-progress{grid-template-columns:1fr}
    .appeal-admin-actions{grid-template-columns:1fr}
    .appeal-reject-form{flex-direction:column;align-items:stretch}
    .appeal-reject-form label{max-width:none}
    .appeal-card-head{align-items:flex-start}
    .appeal-review-stage{flex-direction:column;gap:3px}
}


/* Page 20 — Audit & Security */
.audit-main{width:100%;min-width:0;padding:34px 38px 70px}
.audit-page{max-width:1220px;margin:0 auto}
.audit-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:20px}
.audit-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.audit-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.audit-hero p{margin:0;max-width:760px;color:#657991;line-height:1.55}
.audit-role-pill{background:#edf4fb;border:1px solid #cfdfee;color:#174a7a;border-radius:999px;padding:8px 13px;font-size:.82rem;font-weight:800;white-space:nowrap}
.audit-privacy-note{display:flex;gap:13px;align-items:flex-start;background:#f4f9ff;border:1px solid #d5e5f4;border-radius:13px;padding:16px 18px;margin-bottom:20px}
.audit-shield{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#dceeff;color:#174d80;font-weight:900;flex:0 0 auto}
.audit-privacy-note strong{display:block;color:#153f69;margin-bottom:3px}
.audit-privacy-note p{margin:0;color:#687d92;font-size:.9rem;line-height:1.5}
.audit-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:22px}
.audit-summary article{background:#fff;border:1px solid #dbe5ef;border-radius:13px;padding:16px;box-shadow:0 4px 16px rgba(18,51,85,.045)}
.audit-summary span,.audit-summary small{display:block;color:#71849a}
.audit-summary span{font-size:.82rem;font-weight:700}
.audit-summary strong{display:block;color:#0b396b;font-size:1.7rem;margin:4px 0}
.audit-summary small{font-size:.76rem}
.audit-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:13px}
.audit-tabs,.audit-ranges{display:flex;gap:6px;flex-wrap:wrap}
.audit-tabs a,.audit-ranges a{display:inline-flex;padding:8px 11px;border-radius:8px;text-decoration:none;color:#536c85;font-size:.83rem;font-weight:750;background:#f4f7fa;border:1px solid transparent}
.audit-tabs a.active,.audit-ranges a.active{background:#0b3d73;color:#fff}
.audit-card{background:#fff;border:1px solid #d9e4ee;border-radius:15px;box-shadow:0 4px 18px rgba(22,48,75,.055);overflow:hidden}
.audit-card-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:19px 20px;border-bottom:1px solid #e3ebf2}
.audit-card-heading h2{margin:0;color:#123d69}
.audit-card-heading p{margin:4px 0 0;color:#74879b;font-size:.88rem}
.audit-export-links{display:flex;gap:8px;flex-wrap:wrap}
.audit-export-links a{border:1px solid #bfd0e1;background:#f8fbff;color:#164c82;border-radius:8px;text-decoration:none;padding:8px 11px;font-size:.8rem;font-weight:800}
.audit-table-wrap{overflow:auto}
.audit-table{width:100%;border-collapse:collapse;min-width:860px}
.audit-table th{background:#f6f9fc;color:#54708d;text-align:left;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;padding:11px 13px;border-bottom:1px solid #dee7ef}
.audit-table td{padding:13px;border-bottom:1px solid #e8eef4;color:#536a82;font-size:.86rem;vertical-align:top}
.audit-table td strong,.audit-table td small{display:block}
.audit-table td strong{color:#244a70}
.audit-table td small{margin-top:3px;color:#8795a5;font-size:.75rem}
.audit-action-label{display:inline-flex;background:#edf4fb;color:#1a4d7e;border-radius:999px;padding:4px 8px;font-size:.74rem;font-weight:800;white-space:nowrap}
.audit-login-status{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:.75rem;font-weight:850}
.audit-login-status.success{background:#e8f6ed;color:#2b6940}
.audit-login-status.failure{background:#fdeaea;color:#8d3434}
.audit-empty{padding:26px!important;text-align:center!important;color:#7f8fa0!important}
.active-admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:18px}
.active-admin-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border:1px solid #e0e8f0;border-radius:12px;padding:14px;background:#fbfdff}
.active-admin-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#dceafa;color:#154d81;font-weight:900}
.active-admin-card strong,.active-admin-card span,.active-admin-card small{display:block}
.active-admin-card strong{color:#173f68}
.active-admin-card span{color:#5d748b;font-size:.82rem;margin:2px 0}
.active-admin-card small{color:#8695a5;font-size:.73rem;line-height:1.4}
.active-admin-card i{width:10px;height:10px;border-radius:50%;background:#4da56c;box-shadow:0 0 0 4px #e6f4eb}
.audit-footnote{margin-top:16px;padding:14px 16px;border-left:3px solid #7f9bb7;background:#f7f9fc;color:#677b90}
.audit-footnote strong{display:block;color:#284e73;margin-bottom:3px}
.audit-footnote p{margin:0;font-size:.86rem;line-height:1.5}
@media(max-width:950px){
    .audit-main{padding:24px 17px 60px}
    .audit-summary{grid-template-columns:repeat(2,1fr)}
    .audit-toolbar{align-items:flex-start;flex-direction:column}
    .active-admin-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
    .audit-hero{flex-direction:column}
    .audit-summary{grid-template-columns:1fr}
    .audit-card-heading{flex-direction:column}
}


/* Page 21 — Account Status & Deletion */
.lifecycle-main{width:100%;min-width:0;padding:34px 38px 70px}
.lifecycle-page{max-width:980px;margin:0 auto}
.lifecycle-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}
.lifecycle-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.lifecycle-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.lifecycle-hero p{margin:0;max-width:670px;color:#667a90;line-height:1.55}
.lifecycle-back{white-space:nowrap;border:1px solid #cbd9e6;background:#fff;color:#174d81;border-radius:9px;padding:9px 12px;text-decoration:none;font-weight:800;font-size:.83rem}
.account-status-card{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dce6ef;border:1px solid #dce6ef;border-radius:14px;overflow:hidden;margin-bottom:18px}
.account-status-card>div{background:#fff;padding:17px}
.account-status-card span,.account-status-card strong{display:block}
.account-status-card span{font-size:.78rem;color:#7a8ca0;margin-bottom:4px}
.account-status-card strong{color:#173f69}
.lifecycle-card{background:#fff;border:1px solid #dbe5ef;border-radius:15px;padding:21px;margin-top:16px;box-shadow:0 4px 18px rgba(22,48,75,.05)}
.lifecycle-card-heading{display:flex;gap:13px;align-items:flex-start}
.lifecycle-card-heading h2{margin:0 0 5px;color:#123d69}
.lifecycle-card-heading p{margin:0;color:#708399;line-height:1.5}
.lifecycle-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:900;flex:0 0 auto}
.lifecycle-icon.danger{background:#fdeaea;color:#9a3434}
.lifecycle-icon.safe{background:#e8f7ee;color:#2e6c43}
.lifecycle-icon.neutral{background:#eaf2fa;color:#25527f}
.lifecycle-facts{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:18px 0}
.lifecycle-facts>div{border:1px solid #e1e9f0;background:#f9fbfd;border-radius:11px;padding:13px}
.lifecycle-facts strong,.lifecycle-facts span{display:block}
.lifecycle-facts strong{color:#244a70;margin-bottom:4px}
.lifecycle-facts span{font-size:.86rem;color:#6d8094;line-height:1.45}
.deletion-form{border-top:1px solid #e5ebf1;margin-top:17px;padding-top:17px}
.deletion-form label{display:block;color:#385875;font-weight:700;margin-bottom:7px}
.deletion-form input{display:block;width:100%;max-width:340px;border:1px solid #c8d6e4;border-radius:9px;padding:11px;font:inherit;margin-bottom:12px}
.lifecycle-danger,.lifecycle-primary{border:0;border-radius:9px;padding:11px 15px;color:#fff;font-weight:850;cursor:pointer}
.lifecycle-danger{background:#a63838}
.lifecycle-primary{background:#0a447d;margin-top:16px}
.deletion-countdown{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:#fff6e5;border:1px solid #ecd69f;border-radius:15px;padding:20px;margin-bottom:18px}
.deletion-countdown-number{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:#fff;border:5px solid #e5bd5f;color:#7a5710;font-size:2rem;font-weight:900}
.deletion-countdown-label{display:block;color:#8b6c29;font-size:.77rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.deletion-countdown h2{margin:3px 0 5px;color:#62490f}
.deletion-countdown p{margin:0;color:#7a682f}
.lifecycle-two-column{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:17px}
.lifecycle-two-column>div{background:#f8fbfe;border:1px solid #e0e8ef;border-radius:11px;padding:14px}
.lifecycle-two-column strong{color:#234a70}
.lifecycle-two-column p{color:#6b7f93;font-size:.87rem;line-height:1.5}
.lifecycle-two-column a{font-weight:800;color:#174f86}
.lifecycle-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:20px;position:relative}
.lifecycle-timeline:before{content:"";position:absolute;top:17px;left:12%;right:12%;height:2px;background:#d7e1ea}
.lifecycle-timeline>div{position:relative;text-align:center;padding-top:37px}
.lifecycle-timeline>div:before{content:"";position:absolute;top:10px;left:50%;transform:translateX(-50%);width:16px;height:16px;border-radius:50%;background:#b9c9d8;border:4px solid #fff;box-shadow:0 0 0 1px #b9c9d8}
.lifecycle-timeline>div.active:before{background:#1f5a91}
.lifecycle-timeline strong,.lifecycle-timeline span{display:block}
.lifecycle-timeline strong{color:#234b73}
.lifecycle-timeline span{color:#7a8b9d;font-size:.8rem;margin-top:3px}
.lifecycle-note{margin:20px 0 0;background:#f6f8fa;border-radius:9px;padding:11px;color:#708296;font-size:.84rem;line-height:1.5}
@media(max-width:760px){
    .lifecycle-main{padding:23px 16px 60px}
    .lifecycle-hero{flex-direction:column}
    .account-status-card{grid-template-columns:1fr}
    .lifecycle-facts,.lifecycle-two-column{grid-template-columns:1fr}
    .deletion-countdown{grid-template-columns:1fr;text-align:center}
    .deletion-countdown-number{margin:auto}
}


/* Page 22 — Site Announcements */
.announcement-main{width:100%;min-width:0;padding:34px 38px 70px}
.announcement-page{max-width:1120px;margin:0 auto}
.announcement-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:22px}
.announcement-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#5b728b;margin-bottom:7px}
.announcement-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.announcement-hero p{margin:0;max-width:760px;color:#667b91;line-height:1.55}
.announcement-archive-link{white-space:nowrap;border:1px solid #c7d7e6;background:#fff;color:#174c80;border-radius:9px;padding:9px 12px;text-decoration:none;font-size:.83rem;font-weight:800}
.announcement-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:17px}
.announcement-summary article{background:#fff;border:1px solid #dce6ef;border-radius:13px;padding:15px;box-shadow:0 4px 15px rgba(21,53,86,.045)}
.announcement-summary span,.announcement-summary strong{display:block}
.announcement-summary span{font-size:.79rem;color:#718499}
.announcement-summary strong{font-size:1.7rem;color:#113e6e;margin-top:3px}
.announcement-editor-card,.announcement-list-card{background:#fff;border:1px solid #dbe5ef;border-radius:15px;box-shadow:0 4px 18px rgba(22,48,75,.05);margin-top:16px;overflow:hidden}
.announcement-card-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:19px 20px;border-bottom:1px solid #e4ebf2}
.announcement-card-heading h2{margin:0;color:#123d69}
.announcement-card-heading p{margin:4px 0 0;color:#74879b;font-size:.88rem}
.announcement-card-heading>a{color:#174d83;text-decoration:none;font-weight:800;font-size:.82rem}
.announcement-form{padding:20px}
.announcement-form>label,.announcement-form-grid label{display:block;color:#355875;font-weight:750;margin-bottom:15px}
.announcement-form input,.announcement-form textarea,.announcement-form select{display:block;width:100%;margin-top:7px;border:1px solid #c9d7e4;border-radius:9px;padding:11px;font:inherit;background:#fff}
.announcement-form textarea{resize:vertical;line-height:1.5}
.announcement-form small{display:block;margin-top:5px;color:#8695a5;font-weight:400}
.announcement-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.announcement-delivery-note{background:#f5f9fd;border:1px solid #dbe8f3;border-radius:10px;padding:12px 14px;margin:3px 0 16px}
.announcement-delivery-note strong,.announcement-delivery-note span{display:block}
.announcement-delivery-note strong{color:#234c74;margin-bottom:3px}
.announcement-delivery-note span{font-size:.84rem;color:#6b8095}
.announcement-form-actions{display:flex;justify-content:flex-end}
.announcement-form-actions button{border:0;background:#0a4079;color:#fff;font-weight:850;border-radius:9px;padding:11px 16px;cursor:pointer}
.announcement-hidden{display:none!important}
.announcement-admin-list{display:grid}
.announcement-admin-item{padding:18px 20px;border-bottom:1px solid #e6edf3}
.announcement-admin-item:last-child{border-bottom:0}
.announcement-admin-item.status-cancelled{opacity:.7}
.announcement-item-top{display:flex;justify-content:space-between;gap:15px;align-items:center}
.announcement-status,.announcement-audience{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:.73rem;font-weight:800;background:#edf4fb;color:#174b80}
.status-scheduled .announcement-status{background:#fff3d9;color:#785900}
.status-sent .announcement-status{background:#e8f6ed;color:#2e6741}
.status-cancelled .announcement-status{background:#f0f1f3;color:#606b76}
.announcement-audience{background:#f4f6f8;color:#627184;margin-left:5px}
.announcement-item-top time{font-size:.77rem;color:#8493a3}
.announcement-admin-item h3{margin:10px 0 6px;color:#143f6c}
.announcement-admin-item>p{margin:0;color:#60758b;line-height:1.55}
.announcement-item-meta{display:flex;gap:15px;flex-wrap:wrap;margin-top:12px;color:#7d8d9e;font-size:.76rem}
.announcement-item-actions{display:flex;gap:8px;align-items:center;margin-top:13px}
.announcement-item-actions>a,.announcement-item-actions button{border:1px solid #c7d7e5;background:#f9fbfd;color:#184e82;border-radius:8px;padding:7px 10px;text-decoration:none;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}
.announcement-item-actions form{margin:0}
.announcement-item-actions button{color:#993b3b;border-color:#e1c6c6;background:#fffafa}
.announcement-empty{padding:28px;text-align:center;color:#7a8b9c}
.announcement-user-list{display:grid;gap:13px}
.announcement-user-item{display:grid;grid-template-columns:auto 1fr;gap:14px;background:#fff;border:1px solid #dbe5ef;border-radius:14px;padding:18px;box-shadow:0 4px 16px rgba(22,48,75,.045)}
.announcement-user-icon{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#e9f2fb;color:#174f84;font-weight:900}
.announcement-user-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.announcement-user-heading h2{margin:0;color:#123f6c;font-size:1.08rem}
.announcement-user-heading time{color:#8594a4;font-size:.78rem;white-space:nowrap}
.announcement-user-item p{color:#60758b;line-height:1.58;margin:8px 0 10px}
.announcement-empty-user{text-align:center;background:#fff;border:1px dashed #cbd9e5;border-radius:15px;padding:40px 20px;color:#728599}
.announcement-empty-user>div{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#eaf3fb;color:#174e82;margin:0 auto 12px;font-weight:900}
.announcement-empty-user h2{margin:0 0 6px;color:#214b73}
.announcement-empty-user p{margin:0}
.announcement-retention-note{margin-top:16px;color:#8190a0;font-size:.8rem;text-align:center}
@media(max-width:760px){
    .announcement-main{padding:23px 16px 60px}
    .announcement-hero{flex-direction:column}
    .announcement-summary{grid-template-columns:repeat(2,1fr)}
    .announcement-form-grid{grid-template-columns:1fr}
    .announcement-item-top,.announcement-user-heading{align-items:flex-start;flex-direction:column}
}


/* Page 23 — Site Activity */
.site-activity-main{width:100%;min-width:0;padding:34px 38px 70px}
.site-activity-page{max-width:1220px;margin:0 auto}
.site-activity-hero{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:18px}
.site-activity-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.site-activity-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.site-activity-hero p{margin:0;max-width:790px;color:#667b91;line-height:1.55}
.site-activity-actions{display:flex;gap:8px;flex-wrap:wrap}
.site-activity-actions a{border:1px solid #c7d7e6;background:#fff;color:#174d81;border-radius:9px;padding:9px 12px;text-decoration:none;font-size:.82rem;font-weight:800}
.site-activity-ranges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}
.site-activity-ranges a{display:inline-flex;padding:8px 11px;border-radius:8px;text-decoration:none;color:#536c85;font-size:.82rem;font-weight:800;background:#f3f6f9}
.site-activity-ranges a.active{background:#0b3d73;color:#fff}
.site-activity-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.site-activity-kpis article{background:#fff;border:1px solid #dce6ef;border-radius:13px;padding:15px;box-shadow:0 4px 15px rgba(21,53,86,.045)}
.site-activity-kpis span,.site-activity-kpis small,.site-activity-kpis strong{display:block}
.site-activity-kpis>article>span{font-size:.79rem;color:#718499;font-weight:750}
.site-activity-kpis strong{font-size:1.65rem;color:#113e6e;margin:4px 0}
.site-activity-kpis small{font-size:.75rem;color:#8795a5}
.activity-change{font-size:.72rem!important;font-weight:800!important;margin-top:3px}
.activity-change.up{color:#2e7447!important}
.activity-change.down{color:#a03c3c!important}
.activity-change.neutral{color:#7a8a9b!important}
.site-activity-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;margin-bottom:14px}
.site-activity-card{background:#fff;border:1px solid #dbe5ef;border-radius:15px;box-shadow:0 4px 18px rgba(22,48,75,.05);padding:19px;min-width:0}
.site-activity-card-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:15px}
.site-activity-card-heading h2{margin:0;color:#123d69;font-size:1.08rem}
.site-activity-card-heading p{margin:4px 0 0;color:#74879b;font-size:.84rem}
.site-activity-empty{padding:26px 10px;text-align:center;color:#7c8c9d}
.site-bar-list{display:grid;gap:11px}
.site-bar-row>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:5px;color:#536d86;font-size:.83rem}
.site-bar-row strong{color:#214a73}
.site-bar-track{height:8px;border-radius:999px;background:#edf2f6;overflow:hidden}
.site-bar-track span{display:block;height:100%;border-radius:999px;background:#4d78a4}
.traffic-bars{height:245px;display:flex;align-items:flex-end;gap:7px;padding:12px 4px 0;overflow-x:auto}
.traffic-day{height:100%;min-width:24px;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}
.traffic-day-bar{width:70%;min-height:3px;background:#4c79a7;border-radius:5px 5px 0 0}
.traffic-day small{font-size:.65rem;color:#8795a5;white-space:nowrap}
.activity-privacy-ring{width:170px;height:170px;margin:18px auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#356c9f 0 var(--public-pct),#d8e1e9 var(--public-pct) 100%)}
.activity-privacy-ring>div{width:118px;height:118px;background:#fff;border-radius:50%;display:grid;place-content:center;text-align:center}
.activity-privacy-ring strong{font-size:1.6rem;color:#123f6c}
.activity-privacy-ring span{font-size:.78rem;color:#7c8c9c}
.activity-privacy-legend{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;color:#667a90;font-size:.8rem}
.activity-privacy-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}
.activity-privacy-legend i.public{background:#356c9f}
.activity-privacy-legend i.private{background:#d8e1e9}
.activity-simple-list{display:grid;gap:8px}
.activity-simple-list>div{display:flex;justify-content:space-between;gap:16px;padding:9px 11px;border-radius:9px;background:#f7f9fb;color:#5b7187;font-size:.84rem}
.activity-simple-list strong{color:#244b73}
.peak-time-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}
.peak-time-grid>div{border:1px solid #e0e8ef;border-radius:10px;background:#f9fbfd;padding:13px;text-align:center}
.peak-time-grid strong,.peak-time-grid span{display:block}
.peak-time-grid strong{color:#234b73}
.peak-time-grid span{font-size:.74rem;color:#8190a0;margin-top:3px}
.site-activity-note{margin-top:14px;padding:14px 16px;border-left:3px solid #809ab5;background:#f7f9fc;color:#687c91}
.site-activity-note strong{display:block;color:#294e72;margin-bottom:4px}
.site-activity-note p{margin:0;font-size:.84rem;line-height:1.5}
.analytics-full-link{display:inline-block;margin-top:7px;color:#174d82;text-decoration:none;font-size:.8rem;font-weight:800}
@media(max-width:1050px){
    .site-activity-kpis{grid-template-columns:repeat(2,1fr)}
    .site-activity-grid{grid-template-columns:1fr}
    .peak-time-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:680px){
    .site-activity-main{padding:23px 16px 60px}
    .site-activity-hero{flex-direction:column}
    .site-activity-kpis{grid-template-columns:1fr}
    .peak-time-grid{grid-template-columns:repeat(2,1fr)}
}


/* Page 24 — Custom Reports */
.report-builder-main{width:100%;min-width:0;padding:34px 38px 70px}
.report-builder-page{max-width:1220px;margin:0 auto}
.report-builder-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}
.report-builder-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.report-builder-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.report-builder-hero p{margin:0;max-width:800px;color:#667b91;line-height:1.55}
.report-builder-link{white-space:nowrap;border:1px solid #c8d7e5;background:#fff;color:#174d81;border-radius:9px;padding:9px 12px;text-decoration:none;font-size:.82rem;font-weight:800}
.report-builder-card{background:#fff;border:1px solid #dbe5ef;border-radius:15px;box-shadow:0 4px 18px rgba(22,48,75,.05);margin-bottom:15px;overflow:hidden}
.report-builder-card-heading{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid #e4ebf2}
.report-builder-card-heading h2{margin:0;color:#123d69;font-size:1.08rem}
.report-builder-card-heading p{margin:4px 0 0;color:#74879b;font-size:.84rem}
.report-loaded-pill{display:inline-flex;border-radius:999px;padding:5px 9px;background:#eaf3fb;color:#174e81;font-size:.75rem;font-weight:800}
.report-builder-form{padding:20px}
.report-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.report-builder-form label,.identifiable-form label{display:block;color:#355875;font-weight:750}
.report-builder-form input,.report-builder-form select,.report-builder-form textarea,.identifiable-form input,.identifiable-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #c9d7e4;border-radius:9px;padding:10px 11px;font:inherit;background:#fff}
.report-filter-panels{margin-top:18px}
.report-filter-panels section{background:#f8fbfe;border:1px solid #e0e9f1;border-radius:11px;padding:14px}
.report-filter-panels h3{margin:0 0 12px;color:#244c74;font-size:.92rem}
.report-builder-actions{display:flex;gap:9px;align-items:center;margin-top:17px;flex-wrap:wrap}
.report-builder-actions button,.report-builder-actions a,.report-export-buttons a{border:0;border-radius:9px;padding:9px 12px;text-decoration:none;font:inherit;font-size:.8rem;font-weight:850;cursor:pointer}
.report-builder-actions button{background:#0b427b;color:#fff}
.report-builder-actions button.secondary,.report-builder-actions a,.report-export-buttons a{background:#f5f8fb;color:#184d80;border:1px solid #c8d7e5}
.report-builder-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:14px}
.report-export-buttons{display:flex;gap:7px;flex-wrap:wrap}
.report-filter-summary{display:flex;gap:8px;flex-wrap:wrap;padding:13px 20px;background:#f7f9fb;border-bottom:1px solid #e6edf3}
.report-filter-summary span{background:#fff;border:1px solid #dde6ee;border-radius:999px;padding:5px 9px;color:#60758b;font-size:.75rem}
.report-table-wrap{overflow:auto}
.report-table{width:100%;border-collapse:collapse;min-width:720px}
.report-table th{background:#f6f9fc;color:#55708c;text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;border-bottom:1px solid #dee7ef}
.report-table td{padding:11px 12px;border-bottom:1px solid #e8eef4;color:#566c82;font-size:.82rem;vertical-align:top}
.report-table td strong{color:#234a70}
.report-builder-empty{padding:28px;text-align:center;color:#7a8b9d}
.report-preview-note{padding:10px 18px;margin:0;color:#7c8b9a;font-size:.76rem;background:#fafbfd}
.identifiable-warning{margin:18px 18px 0;padding:13px;background:#fff7e8;border:1px solid #ead69f;border-radius:10px;color:#705a22}
.identifiable-warning strong{display:block;margin-bottom:4px}
.identifiable-warning p{margin:0;font-size:.82rem;line-height:1.5}
.identifiable-form{padding:18px}
.identifiable-form label{margin-bottom:13px}
.report-checkbox{display:flex!important;gap:9px;align-items:flex-start}
.report-checkbox input{width:auto!important;margin:3px 0 0!important}
.identifiable-form button.danger{border:0;border-radius:9px;background:#9b3737;color:#fff;padding:10px 13px;font-weight:850;cursor:pointer}
.saved-report-list{display:grid}
.saved-report-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 18px;border-bottom:1px solid #e6edf3}
.saved-report-row:last-child{border-bottom:0}
.saved-report-row strong,.saved-report-row span{display:block}
.saved-report-row strong{color:#234a70}
.saved-report-row span{color:#8291a0;font-size:.75rem;margin-top:3px}
.saved-report-actions{display:flex;gap:7px;align-items:center}
.saved-report-actions a,.saved-report-actions button{border:1px solid #cbd9e6;background:#f8fbfd;color:#174d80;border-radius:8px;padding:7px 9px;text-decoration:none;font:inherit;font-size:.76rem;font-weight:800;cursor:pointer}
.saved-report-actions form{margin:0}
.saved-report-actions button{color:#913939;border-color:#e0c8c8;background:#fffafa}
.report-export-history{display:grid}
.report-export-history>div{padding:13px 16px;border-bottom:1px solid #e6edf3}
.report-export-history>div:last-child{border-bottom:0}
.report-export-history strong,.report-export-history span,.report-export-history small{display:block}
.report-export-history strong{color:#234a70}
.report-export-history span{font-size:.77rem;color:#60758a;margin:3px 0}
.report-export-history small{font-size:.7rem;color:#8795a4}
@media(max-width:950px){
    .report-builder-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
    .report-builder-main{padding:23px 16px 60px}
    .report-builder-hero{flex-direction:column}
    .report-form-grid{grid-template-columns:1fr}
    .saved-report-row{align-items:flex-start;flex-direction:column}
}


/* Page 25 — Help & Policies */
.help-main{width:100%;min-width:0;padding:34px 38px 70px}
.help-page{max-width:1160px;margin:0 auto}
.help-hero{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:19px}
.help-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.help-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.help-hero p{margin:0;max-width:790px;color:#667b91;line-height:1.55}
.help-contact-button,.help-inline-action,.help-action-row a{display:inline-flex;border:1px solid #c7d7e6;background:#fff;color:#174d81;border-radius:9px;padding:9px 12px;text-decoration:none;font-size:.82rem;font-weight:800}
.help-search-card{background:#fff;border:1px solid #dbe5ef;border-radius:14px;padding:16px 18px;margin-bottom:18px;box-shadow:0 4px 16px rgba(22,48,75,.045)}
.help-search-card label{display:block;color:#244c73;font-weight:800;margin-bottom:7px}
.help-search-wrap{display:flex;align-items:center;gap:9px;border:1px solid #cbd9e6;border-radius:9px;padding:0 11px;background:#fbfdff}
.help-search-wrap input{width:100%;border:0;outline:0;background:transparent;padding:11px 0;font:inherit}
.help-search-card p{margin:7px 0 0;color:#8291a1;font-size:.78rem}
.help-layout{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:start}
.help-section-nav{position:sticky;top:18px;display:grid;gap:5px;background:#fff;border:1px solid #dbe5ef;border-radius:13px;padding:10px}
.help-section-nav a{padding:9px 10px;border-radius:8px;text-decoration:none;color:#536d86;font-size:.82rem;font-weight:800}
.help-section-nav a:hover{background:#edf4fb;color:#174d80}
.help-content{display:grid;gap:14px}
.help-topic{background:#fff;border:1px solid #dbe5ef;border-radius:15px;padding:20px;box-shadow:0 4px 17px rgba(22,48,75,.045)}
.help-topic-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:15px}
.help-topic-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:#eaf3fb;color:#174f84;font-weight:900;flex:0 0 auto}
.help-topic-heading h2{margin:0;color:#123f6c;font-size:1.14rem}
.help-topic-heading p{margin:4px 0 0;color:#7a8b9c;font-size:.83rem}
.help-faq-list{display:grid;gap:8px}
.help-faq-list details{border:1px solid #e0e8ef;border-radius:10px;background:#fbfdff;overflow:hidden}
.help-faq-list summary{cursor:pointer;padding:12px 14px;color:#244b72;font-weight:800}
.help-faq-list details p{margin:0;padding:0 14px 13px;color:#60758b;line-height:1.58;font-size:.87rem}
.help-policy-callout,.help-emergency-note{margin-bottom:13px;border-radius:10px;padding:13px 14px}
.help-policy-callout{background:#f3f8fd;border:1px solid #d7e6f3;color:#2a547b}
.help-emergency-note{background:#fff5e7;border:1px solid #ead39a;color:#725820}
.help-policy-callout strong,.help-policy-callout span{display:block}
.help-policy-callout span{font-size:.84rem;margin-top:4px;line-height:1.5}
.help-emergency-note p{margin:5px 0 0;line-height:1.5;font-size:.86rem}
.community-rule-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.community-rule-grid article{border:1px solid #e1e9f0;border-radius:10px;background:#f9fbfd;padding:13px}
.community-rule-grid strong{color:#254d74}
.community-rule-grid p{margin:5px 0 0;color:#687d92;font-size:.84rem;line-height:1.5}
.help-paragraph{color:#60758b;line-height:1.58}
.help-action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.help-inline-action{margin-top:13px}
.help-legal-note{border-left:3px solid #809bb5;background:#f6f9fc;padding:14px 16px;color:#677c91;border-radius:0 10px 10px 0}
.help-legal-note strong{display:block;color:#294f74;margin-bottom:4px}
.help-legal-note p{margin:0;font-size:.84rem;line-height:1.5}

/* Page 25 — Owner Launch Checklist */
.launch-main{width:100%;min-width:0;padding:34px 38px 70px}
.launch-page{max-width:1120px;margin:0 auto}
.launch-hero{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:19px}
.launch-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.launch-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.launch-hero p{margin:0;max-width:760px;color:#667b91;line-height:1.55}
.launch-help-link{white-space:nowrap;border:1px solid #c7d7e6;background:#fff;color:#174d81;border-radius:9px;padding:9px 12px;text-decoration:none;font-size:.82rem;font-weight:800}
.launch-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.launch-summary article{background:#fff;border:1px solid #dce6ef;border-radius:13px;padding:15px}
.launch-summary span,.launch-summary strong{display:block}
.launch-summary span{font-size:.78rem;color:#74879a}
.launch-summary strong{font-size:1.65rem;color:#113e6e;margin-top:4px}
.launch-card{background:#fff;border:1px solid #dbe5ef;border-radius:15px;box-shadow:0 4px 18px rgba(22,48,75,.045);margin-bottom:14px;overflow:hidden}
.launch-card-heading{padding:17px 19px;border-bottom:1px solid #e4ebf2}
.launch-card-heading h2{margin:0;color:#123d69;font-size:1.08rem}
.launch-card-heading p{margin:4px 0 0;color:#74879b;font-size:.83rem}
.launch-check-list{display:grid}
.launch-check{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:center;padding:13px 18px;border-bottom:1px solid #e7edf3}
.launch-check:last-child{border-bottom:0}
.launch-check-icon{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;font-weight:900}
.launch-check.ready .launch-check-icon{background:#e7f6ec;color:#2d6b42}
.launch-check.attention .launch-check-icon{background:#fff1dd;color:#835f15}
.launch-check strong,.launch-check span{display:block}
.launch-check strong{color:#244b72}
.launch-check div span{font-size:.78rem;color:#8190a0;margin-top:2px}
.launch-table-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:16px}
.launch-table-grid>div{display:flex;gap:7px;align-items:center;border:1px solid #e0e8ef;border-radius:9px;padding:9px;background:#fafcfe}
.launch-table-grid .ready span{color:#338153}
.launch-table-grid .attention span{color:#a56820}
.launch-table-grid code{font-size:.75rem;color:#4d647b}
.launch-known-list{display:grid}
.launch-known-list article{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:14px 18px;border-bottom:1px solid #e7edf3}
.launch-known-list article:last-child{border-bottom:0}
.launch-known-list article>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:900}
.launch-known-list article.attention>span{background:#fff1dd;color:#8a6213}
.launch-known-list article.planned>span{background:#eaf2fa;color:#365e85}
.launch-known-list strong{color:#244b72}
.launch-known-list p{margin:4px 0 0;color:#697e93;font-size:.83rem;line-height:1.5}
.launch-manual-list{display:grid;padding:8px 18px 15px}
.launch-manual-list label{display:flex;gap:9px;align-items:flex-start;padding:9px 0;border-bottom:1px solid #edf1f5;color:#5e748a;font-size:.85rem}
.launch-manual-list label:last-child{border-bottom:0}
.launch-manual-list input{margin-top:3px}
.launch-finish-note{border-radius:13px;padding:16px 18px;background:#edf7f1;border:1px solid #cee6d7;color:#39624a}
.launch-finish-note strong{display:block;margin-bottom:4px;color:#2e6441}
.launch-finish-note p{margin:0;line-height:1.5;font-size:.86rem}
@media(max-width:900px){
    .help-layout{grid-template-columns:1fr}
    .help-section-nav{position:static;grid-template-columns:repeat(2,1fr)}
    .launch-table-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
    .help-main,.launch-main{padding:23px 16px 60px}
    .help-hero,.launch-hero{flex-direction:column}
    .community-rule-grid{grid-template-columns:1fr}
    .help-section-nav{grid-template-columns:1fr}
    .launch-summary{grid-template-columns:1fr}
    .launch-table-grid{grid-template-columns:1fr}
}


/* Integration phase — public categories */
.category-browser-main{width:100%;min-width:0;padding:34px 38px 70px}
.category-browser-page{max-width:1080px;margin:0 auto}
.category-browser-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:19px}
.category-browser-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.category-browser-hero h1{margin:0 0 8px;color:#082d61;font-size:2rem}
.category-browser-hero p{margin:0;color:#667b91}
.category-browser-back{border:1px solid #c7d7e6;background:#fff;color:#174d81;border-radius:9px;padding:9px 12px;text-decoration:none;font-size:.82rem;font-weight:800}
.category-browser-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.category-browser-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid #dbe5ef;border-radius:13px;padding:16px;text-decoration:none;box-shadow:0 4px 15px rgba(21,53,86,.04)}
.category-browser-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#eaf3fb;color:#174f84;font-weight:900}
.category-browser-card strong,.category-browser-card small{display:block}
.category-browser-card strong{color:#173f69}
.category-browser-card small{color:#8190a0;margin-top:3px}
.category-browser-arrow{color:#174f84;font-weight:900}
.category-sort-tabs{display:flex;gap:7px;margin-bottom:14px}
.category-sort-tabs a{padding:8px 11px;border-radius:8px;text-decoration:none;background:#f3f6f9;color:#536c85;font-size:.82rem;font-weight:800}
.category-sort-tabs a.active{background:#0b3d73;color:#fff}
.category-browser-feed{display:grid;gap:12px}
.category-browser-complaint{display:grid;grid-template-columns:70px 1fr;gap:16px;background:#fff;border:1px solid #dbe5ef;border-radius:14px;padding:17px}
.category-browser-score{text-align:center;border-right:1px solid #e5ebf1;padding-right:14px}
.category-browser-score strong,.category-browser-score span{display:block}
.category-browser-score strong{font-size:1.35rem;color:#154a7c}
.category-browser-score span{font-size:.7rem;color:#8594a4}
.category-browser-meta{display:flex;gap:10px;flex-wrap:wrap;color:#8291a1;font-size:.75rem}
.category-browser-complaint h2{margin:7px 0 6px;font-size:1.06rem}
.category-browser-complaint h2 a{color:#123f6c;text-decoration:none}
.category-browser-complaint p{margin:0;color:#61758b;line-height:1.5}
.category-browser-empty{background:#fff;border:1px dashed #cad8e5;border-radius:13px;padding:28px;text-align:center;color:#73869a}
.category-browser-empty strong,.category-browser-empty span{display:block}
.category-browser-empty strong{color:#244b72;margin-bottom:4px}

/* Integration phase — recent searches */
.recent-searches{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.recent-searches>strong{color:#4c6680;font-size:.8rem}
#recentSearchesList{display:flex;gap:7px;flex-wrap:wrap}
#recentSearchesList a{display:inline-flex;border:1px solid #d6e1eb;border-radius:999px;background:#f7fafd;color:#315879;text-decoration:none;padding:5px 9px;font-size:.75rem;font-weight:750}

/* Integration phase — account restorations */
.restoration-main{width:100%;min-width:0;padding:34px 38px 70px}
.restoration-page{max-width:960px;margin:0 auto}
.restoration-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}
.restoration-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:#58718c;margin-bottom:7px}
.restoration-hero h1{margin:0 0 8px;color:#082d61}
.restoration-hero p{margin:0;color:#667b91}
.restoration-hero>a{border:1px solid #c7d7e6;background:#fff;color:#174d81;border-radius:9px;padding:9px 12px;text-decoration:none;font-size:.82rem;font-weight:800}
.restoration-card{background:#fff;border:1px solid #dbe5ef;border-radius:14px;overflow:hidden}
.restoration-card-heading{padding:17px 19px;border-bottom:1px solid #e5ecf2}
.restoration-card-heading h2{margin:0;color:#123d69}
.restoration-card-heading p{margin:4px 0 0;color:#75879a;font-size:.83rem}
.restoration-list article{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 18px;border-bottom:1px solid #e8eef4}
.restoration-list article:last-child{border-bottom:0}
.restoration-list strong,.restoration-list span,.restoration-list small{display:block}
.restoration-list strong{color:#244b72}
.restoration-list span{color:#61768c;font-size:.82rem;margin:3px 0}
.restoration-list small{color:#8795a4;font-size:.74rem}
.restoration-list button{border:0;border-radius:8px;background:#0b427b;color:#fff;padding:9px 12px;font-weight:800;cursor:pointer}
.restoration-empty{padding:28px;text-align:center;color:#7a8b9d}

@media(max-width:760px){
    .category-browser-main,.restoration-main{padding:23px 16px 60px}
    .category-browser-grid{grid-template-columns:1fr}
    .category-browser-hero,.restoration-hero{flex-direction:column}
    .category-browser-complaint{grid-template-columns:1fr}
    .category-browser-score{border-right:0;border-bottom:1px solid #e5ebf1;padding:0 0 10px;text-align:left}
    .restoration-list article{align-items:flex-start;flex-direction:column}
}


/* Full QA fixes */
.suspended-account-banner{padding:10px 16px;background:#fff2d7;border-bottom:1px solid #e6cf98;color:#6b5118;text-align:center;font-weight:700}
.vote-button.active{background:#dfeeff;border-radius:6px;color:#075baf}.profile-deleted-badge{display:inline-block;background:#f1f1f1;color:#666;border-radius:999px;padding:4px 8px;font-size:.75rem}.danger-link{color:#9d3030!important}.translation-controls{margin-top:10px}.translate-button{border:1px solid #c8d7e5;background:#fff;color:#174d81;border-radius:7px;padding:6px 9px;font-size:.75rem;font-weight:700}.translation-label{margin-left:8px;font-size:.72rem;color:#5e7489;font-weight:800}.translated-text{margin-top:8px;padding:10px;border-left:3px solid #7da1c3;background:#f5f9fd;color:#405a72;white-space:pre-wrap}.similar-after-post{display:grid;gap:4px;margin-top:10px}.qa-admin-main{width:100%;padding:32px}.qa-admin-page{max-width:900px;margin:0 auto}.qa-inline-form{display:flex;gap:8px;margin:15px 0}.qa-inline-form input{flex:1;padding:10px;border:1px solid #ccd9e6;border-radius:8px}.qa-inline-form button,.qa-list button,.mini-admin-button{border:0;border-radius:7px;background:#0b4d86;color:#fff;padding:7px 10px;cursor:pointer}.qa-list{display:grid;background:#fff;border:1px solid #dbe5ef;border-radius:12px;overflow:hidden}.qa-list>div{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #e8eef4}.qa-list small{display:block;color:#7d8d9d}.analytics-location-filter{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:0 0 16px}.analytics-location-filter label{color:#45617d;font-size:.8rem}.analytics-location-filter input{display:block;margin-top:4px;padding:8px;border:1px solid #cbd8e5;border-radius:8px}.analytics-location-filter button,.analytics-location-filter a{padding:8px 10px;border:1px solid #c8d7e5;border-radius:8px;background:#fff;color:#174d81;text-decoration:none}.report-archive-download{display:inline-block;margin-top:5px;color:#174d81;font-size:.74rem;font-weight:800}
[data-user-theme="dark"] body,[data-user-theme="dark"] .app-shell,[data-user-theme="dark"] main{background:#121820!important;color:#dbe6f0!important}[data-user-theme="dark"] .panel,[data-user-theme="dark"] .complaint-card,[data-user-theme="dark"] .thread-card,[data-user-theme="dark"] .settings-card,[data-user-theme="dark"] .admin-card,[data-user-theme="dark"] .site-activity-card,[data-user-theme="dark"] .report-builder-card,[data-user-theme="dark"] .profile-card,[data-user-theme="dark"] .help-topic,[data-user-theme="dark"] .launch-card,[data-user-theme="dark"] .contact-form-card,[data-user-theme="dark"] .category-browser-card,[data-user-theme="dark"] .category-browser-complaint,[data-user-theme="dark"] .restoration-card,[data-user-theme="dark"] .qa-list{background:#1b2430!important;border-color:#354454!important;color:#dbe6f0!important}[data-user-theme="dark"] h1,[data-user-theme="dark"] h2,[data-user-theme="dark"] h3,[data-user-theme="dark"] strong,[data-user-theme="dark"] a:not(.primary-submit):not(.new-complaint-button){color:#b9dcff}[data-user-theme="dark"] input,[data-user-theme="dark"] textarea,[data-user-theme="dark"] select{background:#111820!important;color:#e7eef6!important;border-color:#455566!important}[data-user-theme="dark"] .sidebar,[data-user-theme="dark"] .topbar{background:#0d141c!important;border-color:#303e4c!important}


/* ---------- v3.3 profile dropdown ---------- */
.profile-menu {
    position: relative;
}

.profile-menu-trigger {
    max-width: min(280px, 30vw);
}

.profile-menu-trigger .profile-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-menu.open .chevron {
    transform: rotate(180deg);
}

.profile-menu .chevron {
    transition: transform .16s ease;
}

.profile-menu-dropdown {
    position: absolute;
    z-index: 120;
    top: calc(100% + 9px);
    right: 0;
    width: 180px;
    overflow: hidden;
    border: 1px solid #d5e1ed;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(5, 38, 79, .18);
}

.profile-menu-dropdown[hidden] {
    display: none;
}

.profile-menu-dropdown a {
    display: block;
    padding: 11px 14px;
    color: #173f70;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

.profile-menu-dropdown a:hover,
.profile-menu-dropdown a:focus {
    background: #edf6ff;
    color: #087cf0;
    outline: 0;
}

.profile-menu-dropdown a + a {
    border-top: 1px solid #e6edf4;
}

#profileMenuLogout {
    color: #9a4040;
}

/* ---------- v3.3 explicit Settings apply controls ---------- */
.settings-save-status[data-state="pending"] {
    background: #eef3f8;
    color: #5f7488;
}

.settings-apply-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 12px;
    padding: 12px 14px;
    border: 1px solid #dbe6ef;
    border-radius: 9px;
    background: #f8fbfd;
}

.settings-apply-row span {
    color: #6d8397;
    font-size: 9px;
    line-height: 1.45;
}

.settings-apply-button {
    flex: 0 0 auto;
    padding: 10px 14px;
    border: 0;
    border-radius: 8px;
    background: #1477ee;
    color: #fff;
    font-size: 9px;
    font-weight: 900;
    cursor: pointer;
    white-space: nowrap;
}

.settings-apply-button:hover:not(:disabled) {
    filter: brightness(.96);
}

.settings-apply-button:disabled {
    opacity: .55;
    cursor: wait;
}

@media (max-width: 620px) {
    .settings-apply-row {
        align-items: stretch;
        flex-direction: column;
    }

    .settings-apply-button {
        width: 100%;
    }
}

/* Keep all five feed-tab labels intact at every viewport size.
   At small widths the row scrolls horizontally instead of clipping text. */
@media (max-width: 1180px) and (min-width: 981px) {
    .main-area {
        grid-template-columns: minmax(0, 1fr) 280px;
    }

    .new-complaint-button {
        flex-basis: 155px;
        padding-left: 12px;
        padding-right: 12px;
    }
}

@media (max-width: 760px) {
    .tab {
        flex: 0 0 auto;
        min-width: max-content;
    }

    .profile-menu-trigger {
        max-width: 160px;
    }
}

.profile-menu-trigger { font: inherit; }

.deletion-pending-banner{padding:10px 16px;border-bottom:1px solid #ead39a;background:#fff7df;color:#725719;font-size:11px;text-align:center}.deletion-pending-banner a{color:#0b6fc8;font-weight:800}

/* ---------- Page 9 refinement: approved Child / Parental Safety direction ---------- */
.safety-hero-featured {
    grid-template-columns: minmax(0, 1fr) 300px;
    padding: 34px 36px;
    background: linear-gradient(135deg, #f7fbff 0%, #eef7ff 100%);
    border-color: #cfe2f2;
    overflow: hidden;
}
.safety-hero-featured .safety-hero-copy { min-width: 0; }
.safety-hero-featured h1 { margin-top: 6px; font-size: 36px; }
.safety-hero-checks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 14px;
    margin-top: 20px;
}
.safety-hero-checks span {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: #456986;
    font-size: 11px;
    font-weight: 700;
}
.safety-hero-checks b {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    border-radius: 50%;
    background: #dff3e7;
    color: #2f7b50;
    font-size: 10px;
}
.safety-hero-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 21px;
}
.safety-hero-links a {
    padding: 9px 12px;
    border-radius: 8px;
    background: #1477ee;
    color: #fff;
    font-size: 10px;
    font-weight: 850;
    text-decoration: none;
}
.safety-hero-links a.secondary {
    border: 1px solid #b9d3e9;
    background: #fff;
    color: #1768ac;
}
.safety-public-note {
    display: block;
    margin-top: 11px;
    color: #7f96aa;
    font-size: 9px;
}
.safety-family-visual {
    position: relative;
    min-height: 240px;
    display: grid;
    align-content: end;
    justify-items: center;
    padding: 28px 18px 22px;
    border: 1px solid rgba(20,119,238,.12);
    border-radius: 22px;
    background: rgba(255,255,255,.72);
    box-shadow: 0 16px 36px rgba(29,79,119,.08);
    text-align: center;
}
.safety-visual-shield {
    position: absolute;
    top: 20px;
    right: 24px;
    display: grid;
    place-items: center;
    width: 62px;
    height: 70px;
    border-radius: 18px 18px 28px 28px;
    background: #1477ee;
    color: #fff;
    font-size: 27px;
    font-weight: 900;
    box-shadow: 0 10px 22px rgba(20,119,238,.18);
}
.safety-family-figures {
    position: relative;
    width: 190px;
    height: 125px;
    margin-bottom: 10px;
}
.safety-person {
    position: absolute;
    bottom: 0;
    border-radius: 52px 52px 18px 18px;
    background: #76aee0;
}
.safety-person::before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    background: #f0bf91;
}
.safety-person span {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 12px;
    width: 55%;
    height: 36%;
    border-radius: 18px 18px 10px 10px;
    background: rgba(255,255,255,.28);
}
.safety-person-adult {
    left: 22px;
    width: 86px;
    height: 92px;
}
.safety-person-adult::before {
    top: -42px;
    width: 58px;
    height: 58px;
}
.safety-person-child {
    right: 19px;
    width: 66px;
    height: 72px;
    background: #91c7a5;
}
.safety-person-child::before {
    top: -34px;
    width: 46px;
    height: 46px;
}
.safety-family-visual strong { color: #174b7e; font-size: 14px; }
.safety-family-visual > span { margin-top: 3px; color: #7890a8; font-size: 10px; }
#safety-guide { scroll-margin-top: 78px; }
@media (max-width: 820px) {
    .safety-hero-featured { grid-template-columns: 1fr; }
    .safety-family-visual { min-height: 200px; }
}
@media (max-width: 620px) {
    .safety-hero-featured { padding: 22px 18px; }
    .safety-hero-featured h1 { font-size: 28px; }
    .safety-hero-checks { grid-template-columns: 1fr; }
    .safety-hero-links { flex-direction: column; align-items: stretch; }
    .safety-hero-links a { text-align: center; }
}
html[data-user-theme="dark"] .safety-hero-featured {
    background: linear-gradient(135deg, #162536 0%, #152c43 100%);
    border-color: #2d4b66;
}
html[data-user-theme="dark"] .safety-family-visual {
    border-color: #365873;
    background: rgba(25,44,61,.82);
}
html[data-user-theme="dark"] .safety-hero-links a.secondary {
    border-color: #426784;
    background: #1d3449;
    color: #8fc8f5;
}

/* v3.9 structured analytics */
.structured-analytics-main{width:100%;min-width:0;padding:24px}.structured-analytics-page{max-width:1240px;margin:0 auto;display:grid;gap:18px}.structured-analytics-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:26px;border-radius:16px;background:linear-gradient(135deg,#082d61,#0c4f91);color:#fff;box-shadow:0 10px 30px rgba(8,45,97,.14)}.structured-analytics-hero h1{margin:5px 0 8px;font-size:30px}.structured-analytics-hero p{max-width:760px;margin:0;line-height:1.55;color:rgba(255,255,255,.9)}.structured-analytics-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800;color:#9fd0ff}.structured-analytics-hero .button{border:0;border-radius:9px;padding:11px 15px;background:#fff;color:#082d61;font-weight:800;white-space:nowrap;cursor:pointer}.structured-analytics-privacy{padding:16px 18px;border:1px solid #b8d9f5;background:#eef8ff;border-radius:12px;color:#173e68}.structured-analytics-privacy p{margin:5px 0 0;line-height:1.55}.structured-analytics-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:14px 16px;border:1px solid #dbe7f2;border-radius:12px;background:#fff}.structured-analytics-filters label{display:grid;gap:5px;font-size:12px;font-weight:700}.structured-analytics-filters select,.structured-analytics-filters button{min-height:38px;border:1px solid #c7d8e8;border-radius:8px;background:#fff;padding:7px 10px;color:#123b66}.structured-analytics-filters button{background:#087cf0;color:#fff;border-color:#087cf0;font-weight:800;cursor:pointer}.structured-analytics-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.structured-analytics-kpis article{padding:16px;border:1px solid #dbe7f2;border-radius:12px;background:#fff}.structured-analytics-kpis span{display:block;color:#6b7f93;font-size:12px;font-weight:700}.structured-analytics-kpis strong{display:block;margin-top:5px;color:#082d61;font-size:24px}.structured-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.structured-analytics-market-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.structured-analytics-card{padding:18px;border:1px solid #dbe7f2;border-radius:14px;background:#fff}.structured-analytics-card h2{margin:0 0 4px;color:#082d61;font-size:17px}.structured-analytics-card>p{margin:0 0 14px;color:#6c8092;font-size:12px;line-height:1.45}.structured-analytics-list{display:grid;gap:10px}.structured-analytics-row>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:12px}.structured-analytics-row strong{color:#173e68}.structured-analytics-row span{color:#6b7f93}.structured-analytics-bar{height:7px;margin-top:5px;border-radius:999px;background:#e8f0f7;overflow:hidden}.structured-analytics-bar i{display:block;height:100%;border-radius:inherit;background:#087cf0}.analytics-empty{padding:14px;border-radius:8px;background:#f5f8fb;color:#718497!important}.structured-analytics-method{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.structured-analytics-method>div{padding:16px;border-radius:12px;background:#f5f9fd;border:1px solid #dfebf5}.structured-analytics-method h2{margin:0 0 5px;color:#082d61;font-size:15px}.structured-analytics-method p{margin:0;color:#60778c;font-size:12px;line-height:1.5}@media(max-width:900px){.structured-analytics-main{padding:14px}.structured-analytics-hero{display:grid}.structured-analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.structured-analytics-grid,.structured-analytics-market-grid,.structured-analytics-method{grid-template-columns:1fr}}@media(max-width:520px){.structured-analytics-kpis{grid-template-columns:1fr}.structured-analytics-hero{padding:20px}.structured-analytics-hero h1{font-size:25px}}
.structured-analytics-export{display:inline-flex;align-items:center;min-height:38px;padding:7px 11px;border-radius:8px;border:1px solid #b9cde0;color:#174d7f;background:#f7fbff;text-decoration:none;font-size:12px;font-weight:800}
.report-builder-hero-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.structured-analytics-trends>p{color:#6c8092;font-size:12px}.structured-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.structured-trend-grid>div{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 12px;border-radius:9px;background:#f5f9fd;border:1px solid #e0ebf5}.structured-trend-grid strong{color:#173e68}.structured-trend-grid span{color:#55728c;font-size:12px;text-align:right}@media(max-width:700px){.structured-trend-grid{grid-template-columns:1fr}}

/* ==========================================================================
   OPTION #1 REDESIGN — "SEE THE PROBLEM CLEARLY"
   Surreal-to-clear editorial direction. Functional selectors are preserved.
   ========================================================================== */
:root {
    --ink: #181817;
    --ink-soft: #34322f;
    --paper: #f5f0e8;
    --paper-bright: #fbf8f2;
    --paper-deep: #e8dfd2;
    --stone: #847d72;
    --copper: #b46245;
    --copper-soft: #d88969;
    --sage: #6f7969;
    --clarity-blue: #788e96;
    --navy: #1c2426;
    --navy-deep: #101516;
    --blue: #a45238;
    --blue-soft: #f2e6dc;
    --page: var(--paper);
    --surface: rgba(251,248,242,.94);
    --line: #d9d0c4;
    --text: #211f1c;
    --muted: #746d64;
    --yellow-bg: #f6efe3;
    --yellow-line: #c9aa7c;
    --shadow: 0 15px 40px rgba(41,34,26,.06), 0 1px 1px rgba(41,34,26,.05);
}
html { background: var(--paper); }
body {
    color: var(--ink);
    background:
        radial-gradient(circle at 16% 10%, rgba(164,82,56,.08), transparent 24rem),
        radial-gradient(circle at 90% 3%, rgba(120,142,150,.08), transparent 30rem),
        linear-gradient(180deg, #faf7f1 0%, #f4eee6 48%, #eee7dd 100%);
    letter-spacing: .003em;
}
body, button, input, select, textarea { font-family: var(--user-font-family, Arial, Helvetica, sans-serif); }
h1,h2,h3,.brand-copy strong,.hero-feature strong,.panel-heading h2,.featured-heading h2,.auth h1,
.post-heading h1,.thread-post h1,.safety-main h1,.help-main h1,.admin-main h1,
.structured-analytics-main h1,.production-main h1,.page-heading-row h1 {
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: 500;
    letter-spacing: -.025em;
}

.topbar.option1-topbar {
    height: 78px;
    grid-template-columns: minmax(220px, 285px) auto minmax(260px, 1fr) auto;
    gap: 22px;
    padding: 0 clamp(18px,3vw,52px);
    background: rgba(250,247,241,.93);
    color: var(--ink);
    border-bottom: 1px solid rgba(69,61,51,.16);
    box-shadow: 0 8px 30px rgba(38,31,24,.04);
    backdrop-filter: blur(16px);
}
.option1-brand .brand-mark {
    width: 34px; height: 34px; border: 1px solid var(--ink); border-radius: 50%;
    background: transparent; color: var(--ink); font-family: Georgia,serif; font-size: 18px;
}
.option1-brand .brand-copy strong { font-size: 28px; line-height: .95; }
.option1-brand .brand-copy small { margin-top: 6px; color: var(--stone); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.editorial-nav { display:flex; align-items:center; gap:clamp(12px,1.5vw,25px); white-space:nowrap; font-size:13px; }
.editorial-nav a { position:relative; padding:28px 0 26px; color:#4f4a44; }
.editorial-nav a:hover { color:var(--ink); }
.editorial-nav a:hover::after { content:''; position:absolute; left:0; right:0; bottom:18px; height:1px; background:var(--copper); }
.option1-topbar .search-wrap { height:42px; border-radius:999px; background:rgba(255,255,255,.68); border:1px solid #d8d0c5; color:var(--ink); }
.option1-topbar .search-wrap:focus-within { outline:none; border-color:#9c8f80; background:#fff; box-shadow:0 0 0 3px rgba(180,98,69,.08); }
.option1-topbar .search-wrap input { color:var(--ink); }
.option1-topbar .search-wrap input::placeholder { color:#91897f; }
.option1-topbar .search-icon { font-size:20px; color:#4d4944; }
.option1-topbar .global-search-submit { border:0; background:transparent; color:#6d655d; font-size:12px; cursor:pointer; }
.option1-topbar .account-area { gap:10px; }
.option1-topbar .notification-button,.option1-topbar .profile-button,.option1-topbar .icon-button { color:var(--ink); }
.option1-topbar .avatar { background:#e7dfd4; color:#4c4741; }
.option1-topbar .profile-button { border:1px solid #d3cabf; border-radius:999px; padding:8px 12px; }
.option1-topbar .login-link { padding:10px 16px; }
.header-signup { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:0 18px; border-radius:999px; background:var(--ink); color:#fff; font-weight:700; font-size:13px; }
.header-signup:hover { background:var(--copper); }

.clarity-hero {
    position:relative; width:min(1540px, calc(100% - 36px)); min-height:430px; margin:22px auto 0;
    display:grid; grid-template-columns:minmax(300px,.95fr) 68px minmax(460px,1.25fr);
    overflow:hidden; border:1px solid rgba(52,46,39,.18); border-radius:22px; background:#ede6dc;
    box-shadow:0 28px 80px rgba(42,34,27,.10);
}
.clarity-chaos { position:relative; overflow:hidden; min-height:430px; background:
        radial-gradient(ellipse at 85% 45%, rgba(180,98,69,.88) 0 6%, transparent 6.5%),
        radial-gradient(ellipse at 67% 78%, rgba(102,117,107,.66) 0 12%, transparent 12.5%),
        radial-gradient(ellipse at 24% 26%, #8b573e 0 9%, transparent 10%),
        conic-gradient(from 220deg at 52% 56%, #111514, #4a382e, #263332, #8a5139, #191817, #756052, #111514); }
.clarity-chaos::before,.clarity-chaos::after { content:''; position:absolute; border-radius:48% 52% 62% 38%; filter:blur(1px); }
.clarity-chaos::before { width:340px; height:520px; left:-82px; top:-52px; border:2px solid rgba(246,237,224,.34); transform:rotate(28deg); box-shadow:56px 50px 0 rgba(174,113,78,.12), 105px -20px 0 rgba(90,109,104,.14); }
.clarity-chaos::after { width:270px; height:270px; right:-72px; bottom:-80px; border:32px solid rgba(18,19,17,.35); transform:skew(-14deg); }
.melt-clock { position:absolute; top:46px; left:42px; width:86px; height:86px; display:grid; place-items:center; border:2px solid rgba(250,240,224,.76); border-radius:50% 50% 44% 56%; color:#f7ead7; font:italic 22px Georgia,serif; transform:rotate(-11deg) skewY(7deg); z-index:2; }
.chaos-word { position:absolute; z-index:2; color:rgba(255,244,226,.78); font:italic 700 14px/1 Georgia,serif; letter-spacing:.18em; }
.chaos-word-one { left:18%; bottom:23%; transform:rotate(-17deg); }
.chaos-word-two { right:19%; top:29%; transform:rotate(15deg); }
.chaos-word-three { left:50%; top:53%; transform:rotate(-7deg); font-size:22px; }
.surreal-orbit { position:absolute; display:block; border:1px solid rgba(238,222,199,.35); border-radius:50%; }
.orbit-one { width:240px;height:90px;left:70px;top:165px;transform:rotate(38deg); }
.orbit-two { width:170px;height:310px;right:30px;top:36px;transform:rotate(-31deg); }
.surreal-door { position:absolute; width:78px;height:150px;left:35%;bottom:-16px;border:2px solid rgba(244,230,210,.45);border-bottom:0;transform:skew(-6deg); }
.clarity-transition { position:relative; z-index:3; margin:-1px; background:linear-gradient(90deg,rgba(23,22,20,.78),#ece5db 82%); clip-path:polygon(0 0,100% 7%,72% 24%,100% 35%,66% 53%,100% 64%,64% 83%,100% 100%,0 100%); }
.clarity-transition span { position:absolute; inset:0; background:repeating-linear-gradient(18deg,transparent 0 17px,rgba(255,255,255,.18) 18px 19px); }
.clarity-clear { position:relative; display:flex; flex-direction:column; justify-content:center; padding:54px clamp(32px,5vw,86px) 48px; background:linear-gradient(90deg,rgba(248,245,238,.94),rgba(251,249,244,.98)); }
.clarity-clear::after { content:''; position:absolute; width:130px;height:130px;right:5%;top:9%;border:1px solid #d2c7b8;border-radius:50%;opacity:.45; }
.hero-eyebrow,.section-kicker { margin:0 0 14px; color:var(--copper); font-size:10px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.clarity-clear h1 { max-width:700px; margin:0; color:#1d1b18; font:500 clamp(48px,5vw,82px)/.91 Georgia,'Times New Roman',serif; letter-spacing:-.055em; }
.clarity-clear h1 em { color:var(--copper); font-weight:400; }
.hero-deck { max-width:650px; margin:22px 0 24px; color:#655f57; font:16px/1.6 Georgia,'Times New Roman',serif; }
.hero-actions { display:flex; flex-wrap:wrap; gap:10px; }
.hero-primary,.hero-secondary { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:20px; padding:0 22px; border-radius:3px; font-weight:700; font-size:13px; transition:.18s ease; }
.hero-primary { background:var(--ink); color:white; border:1px solid var(--ink); }
.hero-primary:hover { background:var(--copper); border-color:var(--copper); transform:translateY(-1px); }
.hero-secondary { border:1px solid #bcb0a1; background:rgba(255,255,255,.45); color:var(--ink); }
.hero-secondary:hover { background:#fff; }
.hero-feature { width:min(520px,100%); margin-top:28px; padding-top:17px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; border-top:1px solid #d8cfc3; }
.hero-feature span { color:#9d725e; font-size:9px; letter-spacing:.15em; font-weight:800; }
.hero-feature strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; }
.hero-feature small { color:#7b736a; font-size:11px; }
.clarity-manifesto { position:absolute; z-index:5; top:28px; right:26px; display:grid; gap:4px; color:#7c746b; font-size:9px; letter-spacing:.18em; text-transform:uppercase; writing-mode:vertical-rl; }
.clarity-strip { width:min(1540px,calc(100% - 36px)); margin:0 auto 18px; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #d4cabe; border-top:0; background:rgba(250,247,241,.88); }
.clarity-strip span { min-height:54px; display:flex; align-items:center; gap:12px; padding:0 18px; border-right:1px solid #ddd3c7; color:#554f48; font:13px Georgia,serif; }
.clarity-strip span:last-child { border-right:0; }
.clarity-strip b { color:var(--copper); font:700 9px Arial,sans-serif; letter-spacing:.14em; }

.app-shell { min-height:calc(100vh - 78px); }
.sidebar { background:rgba(246,241,234,.86); border-right:1px solid #d8cec1; padding-top:20px; }
.nav-list { gap:3px; }
.nav-item,.collapse-button { min-height:45px; border-radius:3px; color:#514b44; }
.nav-item:hover,.collapse-button:hover { background:#ece4d9; }
.nav-item.active { color:#201d1a; background:#e6dbce; box-shadow:inset 3px 0 var(--copper); }
.nav-icon { font-size:19px; color:#8b6f60; }
.clarity-sidebar-card { margin:22px 10px 8px; padding:16px; min-height:122px; border:1px solid #cbc0b2; background:linear-gradient(145deg,#272724,#4a4038); color:#f5eee4; position:relative; overflow:hidden; }
.clarity-sidebar-card::after { content:''; position:absolute; width:90px;height:90px;right:-26px;bottom:-28px;border:1px solid rgba(239,215,190,.34);border-radius:50%; }
.clarity-sidebar-card span { display:block; margin-bottom:12px; color:#d7a990; font-size:9px; letter-spacing:.17em; }
.clarity-sidebar-card strong { font:500 16px/1.15 Georgia,serif; }
.clarity-sidebar-card i { display:block;width:32px;height:1px;margin-top:12px;background:#d4b29e; }
.main-area { gap:18px; padding:22px clamp(14px,2vw,30px) 40px; }
.option1-home-main { padding-top:14px; }
.page-heading-row h1 { color:var(--ink); font-size:34px; }
.editorial-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:0 0 12px; padding-bottom:10px; border-bottom:1px solid #d9cfc3; }
.editorial-heading h1 { margin:0; }
.section-kicker { margin-bottom:5px; }
.section-note { color:#8a8177; font:italic 12px Georgia,serif; }
.toolbar { gap:12px; }
.tabs { border-color:#d8cec1; border-radius:3px; background:rgba(251,248,242,.85); }
.tab { height:46px; background:transparent; color:#615a52; border-right-color:#ddd4c8; font-family:Georgia,serif; }
.tab:hover { background:#f0e9df; }
.tab.active { color:var(--ink); box-shadow:inset 0 -2px var(--copper); }
.new-complaint-button { border-radius:3px; background:var(--ink); box-shadow:none; }
.new-complaint-button:hover { background:var(--copper); filter:none; }
.feed { gap:12px; }
.complaint-card { min-height:126px; border-color:#d9cfc3; border-radius:4px; background:rgba(252,249,244,.92); box-shadow:0 8px 22px rgba(54,44,35,.035); padding:14px 12px 14px 8px; }
.complaint-card:hover { border-color:#bca999; box-shadow:0 12px 30px rgba(54,44,35,.07); transform:translateY(-1px); }
.vote-button { color:#9b8e81; }
.vote-button:hover,.vote-button.active { color:var(--copper); }
.category-pill { padding:4px 9px; border-radius:999px; color:#3b352f; background:#e9dfd3 !important; border:1px solid #d5c7b7; font-size:10px; letter-spacing:.05em; text-transform:uppercase; }
.complaint-content h2 { margin:7px 0 5px; font:500 19px/1.18 Georgia,serif; }
.complaint-content h2 a:hover { color:var(--copper); }
.complaint-content p { color:#71695f; line-height:1.48; }
.complaint-meta { color:#91877c; }
.more-button { color:#7a6b61; font:700 12px Arial,sans-serif; align-self:center; }
.panel { border-color:#d9cfc3; border-radius:4px; background:rgba(251,248,242,.91); box-shadow:0 10px 28px rgba(49,40,32,.04); }
.panel-heading,.featured-heading { border-bottom-color:#ded4c8; }
.panel-heading a { color:var(--copper); }
.category-list li { border-bottom-color:#e6ded4; }
.category-filter { color:#4b453f; }
.category-filter:hover { background:#f0e8de; }
.category-dot { border-radius:2px; filter:saturate(.4); }
.featured-panel { border-color:#cab99f; background:#f5eee3; }
.featured-heading { border-bottom-color:#ddccb3; }
.star { color:#a66345; }
.featured-list li { border-bottom-color:#e3d5c2; }
.rank { border-radius:50%; background:#3a3732; }
.featured-list a:hover { color:var(--copper); }

.complaint-form,.thread-post,.comment-card,.reply-form,.settings-card,.profile-card,.admin-card,.metric-card,
.safety-card,.help-card,.contact-card,.moderation-card,.announcement-card,.report-card,.analytics-card,
.structured-card,.production-card,.technical-card,.auth,.panel-card,.status-card {
    border-color:#d8cec1 !important; border-radius:5px !important; background:rgba(251,248,242,.95) !important;
    box-shadow:0 12px 34px rgba(48,39,31,.045) !important;
}
.form-group > label,.label-row label,.visibility-fieldset legend { color:#413b35; }
.form-group input,.form-group select,.form-group textarea,.auth input,
input[type='text'],input[type='email'],input[type='password'],input[type='search'],select,textarea {
    border-color:#cfc4b6; border-radius:3px; background:#fffdf9; color:#2e2a26;
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.auth input:focus,input:focus,select:focus,textarea:focus { border-color:#aa755d; box-shadow:0 0 0 3px rgba(164,82,56,.09); outline:none; }
.primary-submit,.auth button,.button-primary,.btn-primary { border-color:var(--ink) !important; border-radius:3px !important; background:var(--ink) !important; color:#fff !important; }
.primary-submit:hover,.auth button:hover,.button-primary:hover,.btn-primary:hover { background:var(--copper) !important; border-color:var(--copper) !important; }
.secondary-button,.button-secondary,.btn-secondary { border-color:#bfb3a4 !important; border-radius:3px !important; background:#faf6f0 !important; color:#3b3732 !important; }
.private-default-note { border-left-color:var(--copper); background:#f2e9df; color:#665e55; }
.visibility-option { border-color:#d3c8ba; border-radius:4px; background:#fbf8f3; }
.visibility-option.selected { border-color:#ab735c; background:#f2e6dc; box-shadow:inset 0 0 0 1px #ab735c; }
.visibility-option input { accent-color:var(--copper); }
.success-alert { border-color:#aab59f; background:#edf1e9; color:#4d5c45; }
.error-alert { border-color:#c9a194; background:#f5e8e3; color:#794637; }
.suspended-account-banner,.deletion-pending-banner { background:#3d342f; color:#f8efe7; border-color:#5c4a40; }
.suspended-account-banner a,.deletion-pending-banner a { color:#efc1a7; }

.auth { max-width:520px !important; margin:70px auto !important; padding:42px !important; border:1px solid #d3c8bb !important; position:relative; overflow:hidden; }
.auth::before { content:'SEE THE PROBLEM CLEARLY'; display:block; margin-bottom:18px; color:var(--copper); font-size:9px; font-weight:800; letter-spacing:.18em; }
.auth h1 { margin-top:0; font-size:42px; }
.auth button { min-height:46px; }
.auth a { color:var(--copper); }

:root[data-user-theme='dark'] body { background:#181817; color:#eee7dd; }
:root[data-user-theme='dark'] .topbar.option1-topbar { background:rgba(25,24,22,.95); color:#eee7dd; border-bottom-color:#403a34; }
:root[data-user-theme='dark'] .option1-topbar .search-wrap,
:root[data-user-theme='dark'] .complaint-card,
:root[data-user-theme='dark'] .panel,
:root[data-user-theme='dark'] .complaint-form { background:#24221f !important; border-color:#49433c !important; color:#eee7dd; }
:root[data-user-theme='dark'] .editorial-nav a,
:root[data-user-theme='dark'] .option1-topbar .notification-button,
:root[data-user-theme='dark'] .option1-topbar .profile-button { color:#eee7dd; }

@media (max-width:1260px) {
    .topbar.option1-topbar { grid-template-columns:220px minmax(260px,1fr) auto; }
    .editorial-nav { display:none; }
    .clarity-hero { grid-template-columns:minmax(260px,.8fr) 52px minmax(420px,1.3fr); }
}
@media (max-width:980px) {
    .clarity-hero { grid-template-columns:.7fr 40px 1.3fr; min-height:390px; }
    .clarity-chaos { min-height:390px; }
    .clarity-clear { padding:40px 34px; }
    .clarity-clear h1 { font-size:52px; }
    .clarity-strip { grid-template-columns:1fr 1fr; }
    .clarity-strip span:nth-child(2) { border-right:0; }
    .clarity-strip span:nth-child(-n+2) { border-bottom:1px solid #ddd3c7; }
}
@media (max-width:760px) {
    .topbar.option1-topbar { min-height:70px; grid-template-columns:auto 1fr auto; padding:10px 12px; }
    .option1-brand .brand-mark { display:none; }
    .option1-brand .brand-copy strong { font-size:22px; }
    .option1-brand .brand-copy small { display:block; font-size:8px; }
    .header-signup { display:none; }
    .clarity-hero { width:calc(100% - 20px); grid-template-columns:1fr; min-height:0; border-radius:12px; }
    .clarity-chaos { min-height:210px; }
    .clarity-transition { display:none; }
    .clarity-clear { padding:30px 24px 32px; }
    .clarity-clear h1 { font-size:46px; }
    .hero-deck { font-size:14px; }
    .hero-feature { grid-template-columns:1fr; gap:4px; }
    .hero-feature small { display:none; }
    .clarity-manifesto { display:none; }
    .clarity-strip { width:calc(100% - 20px); grid-template-columns:1fr 1fr; }
    .clarity-sidebar-card { display:none; }
    .sidebar { top:70px; background:#f5efe6; }
    .editorial-heading { align-items:start; flex-direction:column; gap:3px; }
}
@media (max-width:480px) {
    .clarity-clear h1 { font-size:39px; }
    .hero-actions { display:grid; }
    .hero-primary,.hero-secondary { width:100%; }
    .clarity-strip { grid-template-columns:1fr; }
    .clarity-strip span { border-right:0; border-bottom:1px solid #ddd3c7; }
    .clarity-strip span:last-child { border-bottom:0; }
}

/* Option #1 continuation: secondary pages and Page 8 mobile */
.post-main,.profile-main,.search-main,.admin-main,.settings-main,.notifications-main,.help-main,.contact-main,
.safety-main,.moderation-main,.announcement-main,.appeals-main,.audit-main,.category-admin-main,
.category-browser-main,.contact-admin-main,.edit-profile-main,.launch-main,.lifecycle-main,.report-builder-main,
.report-main,.restoration-main,.site-activity-main,.structured-analytics-main,.technical-main,.thread-layout,
.account-security-main,.qa-admin-main,.auth-page {
    background: transparent !important;
}
.post-heading h1,.profile-main h1,.search-main h1,.admin-main h1,.settings-main h1,.notifications-main h1,
.help-main h1,.contact-main h1,.safety-main h1,.moderation-main h1,.announcement-main h1,.appeals-main h1,
.category-browser-main h1,.site-activity-main h1,.structured-analytics-main h1,.technical-main h1 {
    color: var(--ink) !important;
}

/* Re-skin common blue gradient hero blocks without changing their content or controls. */
.safety-hero,.structured-analytics-hero,.site-activity-hero,.report-builder-hero,.technical-hero,
.launch-hero,.admin-hero,.production-hero,.category-browser-hero,.help-hero,.contact-hero {
    border:1px solid #cfc3b5 !important;
    border-radius:8px !important;
    background:
        radial-gradient(circle at 85% 15%, rgba(178,98,69,.22), transparent 20rem),
        linear-gradient(135deg,#242321,#494039) !important;
    color:#f8f1e7 !important;
    box-shadow:0 18px 45px rgba(42,34,27,.10) !important;
}
.safety-hero h1,.structured-analytics-hero h1,.site-activity-hero h1,.report-builder-hero h1,
.technical-hero h1,.launch-hero h1,.admin-hero h1,.production-hero h1,.category-browser-hero h1,
.help-hero h1,.contact-hero h1 { color:#f8f1e7 !important; }
.structured-analytics-kicker,.safety-kicker,.site-activity-kicker,.report-builder-kicker,.technical-kicker,
.launch-kicker,.admin-kicker { color:#e1ad91 !important; }
.structured-analytics-privacy { border-color:#ccb9a5 !important; background:#f2e8dd !important; color:#53483f !important; }
.structured-analytics-filters,.structured-analytics-kpis article,.structured-analytics-card,
.structured-analytics-method>div,.site-activity-card,.report-builder-card,.admin-summary-card {
    border-color:#d8cec1 !important; border-radius:5px !important; background:rgba(251,248,242,.95) !important;
}
.structured-analytics-card h2,.structured-analytics-kpis strong,.structured-analytics-method h2,
.structured-analytics-row strong { color:#3e3832 !important; }
.structured-analytics-bar { background:#e6ddd2 !important; }
.structured-analytics-bar i { background:var(--copper) !important; }

/* Preserve customization: the user's explicit light-theme colors still win. */
html[data-user-theme='light'] body {
    color: var(--user-font-color);
    background: var(--user-background);
}

/* Page 8 mobile gets the same paper-and-ink identity while keeping its locked layout. */
.mobile-demo-body { background:#ded6ca; font-family:var(--user-font-family,Arial,Helvetica,sans-serif); }
.mobile-site-shell { background:#f7f2ea; border-color:#cabfb1; box-shadow:0 24px 70px rgba(45,37,30,.14); }
.mobile-topbar { background:#1f1f1d; border-bottom:1px solid #3d3934; }
.mobile-brand { font:500 22px Georgia,'Times New Roman',serif; letter-spacing:-.02em; }
.mobile-icon-link,.mobile-menu-toggle { border:1px solid rgba(255,255,255,.18); border-radius:50%; background:transparent; }
.mobile-menu-panel { border-color:#cfc4b7; border-radius:5px; background:#fbf8f2; box-shadow:0 15px 35px rgba(41,34,27,.15); }
.mobile-menu-panel a { border-radius:2px; color:#554d45; }
.mobile-menu-panel a:hover,.mobile-menu-panel a:focus-visible { background:#ece3d8; color:#2b2824; }
.mobile-content { background:linear-gradient(#f8f3eb,#f1e9df); }
.mobile-feed-heading span { color:var(--copper); letter-spacing:.14em; }
.mobile-feed-heading strong { color:#25211e; font:500 20px Georgia,serif; }
.mobile-feed-heading > a { color:var(--copper); }
.mobile-complaint-card,.mobile-empty-card { border-color:#d5c9ba; border-radius:4px; background:#fffaf3; box-shadow:0 7px 18px rgba(48,39,31,.04); }
.mobile-complaint-card.is-featured { border-color:#b68d73; }
.mobile-category-tag { background:#eadfd3; color:#624d40; }
.mobile-featured-badge { background:#2e2b27; color:#f5eee4; }
.mobile-card-title { color:#292521; font-family:Georgia,'Times New Roman',serif; font-weight:600; }
.mobile-score { color:#7d6c5f; }
.mobile-card-bottomline { color:#92877b; }
.mobile-card-bottomline > a { border-radius:50%; background:#eee5da; color:#6d6258; }
.mobile-bottom-nav { border-top-color:#d3c7b8; background:rgba(250,246,239,.98); }
.mobile-bottom-nav a { color:#8b8074; }
.mobile-bottom-nav a.active { color:var(--copper); }

@media (max-width:760px) {
    html[data-user-theme='light'] body { background:var(--user-background); }
}

/* OPTION #1 HERO AUTO-COLLAPSE — v3.11.1 */
.clarity-hero {
    transition:min-height .38s ease, height .38s ease, margin .28s ease, border-radius .28s ease, box-shadow .28s ease;
}
.clarity-hero-toggle {
    position:absolute; z-index:8; right:20px; bottom:16px; min-height:34px;
    display:inline-flex; align-items:center; gap:9px; padding:0 12px;
    border:1px solid rgba(86,74,63,.28); border-radius:999px;
    background:rgba(250,247,241,.88); color:#4f4942;
    font:700 10px/1 Arial,sans-serif; letter-spacing:.04em; cursor:pointer;
    box-shadow:0 5px 18px rgba(42,34,27,.08); backdrop-filter:blur(6px);
    transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.clarity-hero-toggle:hover { background:#fff; border-color:#aa8c78; color:var(--copper); }
.clarity-hero-toggle:focus-visible { outline:3px solid rgba(181,96,63,.24); outline-offset:3px; }
.clarity-hero-toggle-icon { font-size:13px; line-height:1; }
.clarity-strip { transition:opacity .2s ease, margin .28s ease; }

.clarity-hero.is-collapsed {
    min-height:52px !important; height:52px; margin-top:10px;
    grid-template-columns:1fr; border-radius:12px; box-shadow:0 8px 24px rgba(42,34,27,.06);
    overflow:hidden; background:rgba(250,247,241,.96);
}
.clarity-hero.is-collapsed .clarity-chaos,
.clarity-hero.is-collapsed .clarity-transition,
.clarity-hero.is-collapsed .hero-eyebrow,
.clarity-hero.is-collapsed .hero-deck,
.clarity-hero.is-collapsed .hero-actions,
.clarity-hero.is-collapsed .hero-feature,
.clarity-hero.is-collapsed .clarity-manifesto { display:none !important; }
.clarity-hero.is-collapsed .clarity-clear {
    grid-column:1 / -1; min-height:52px; padding:0 154px 0 18px;
    display:flex; flex-direction:row; align-items:center; justify-content:flex-start;
    background:linear-gradient(90deg,rgba(248,245,238,.98),rgba(251,249,244,.98));
}
.clarity-hero.is-collapsed .clarity-clear::after { display:none; }
.clarity-hero.is-collapsed .clarity-clear h1 {
    max-width:none; margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
    font:500 18px/1 Georgia,'Times New Roman',serif; letter-spacing:-.02em;
}
.clarity-hero.is-collapsed .clarity-clear h1 em { font-size:inherit; }
.clarity-hero.is-collapsed .clarity-hero-toggle {
    top:50%; right:10px; bottom:auto; transform:translateY(-50%); min-height:32px;
    background:transparent; box-shadow:none;
}
.clarity-strip.is-hero-collapsed { display:none !important; }

@media (max-width:760px) {
    .clarity-hero-toggle { right:12px; bottom:10px; }
    .clarity-hero.is-collapsed { width:calc(100% - 20px); height:48px; min-height:48px !important; }
    .clarity-hero.is-collapsed .clarity-clear { min-height:48px; padding-left:14px; padding-right:132px; }
    .clarity-hero.is-collapsed .clarity-clear h1 { font-size:16px; }
    .clarity-hero.is-collapsed .clarity-hero-toggle { min-height:30px; font-size:9px; }
}
@media (max-width:480px) {
    .clarity-hero.is-collapsed .clarity-clear h1 { font-size:15px; }
    .clarity-hero.is-collapsed .clarity-clear { padding-right:116px; }
    .clarity-hero-toggle-label { white-space:nowrap; }
}
@media (prefers-reduced-motion:reduce) {
    .clarity-hero,.clarity-strip,.clarity-hero-toggle { transition:none !important; }
}

/* ========================================================================== 
   OPTION #1 INTERIOR POLISH — v3.11.2
   Categories + Help use the same paper/ink/copper language as the homepage.
   ========================================================================== */
.category-browser-main,
.help-main {
    padding: 34px clamp(18px, 3vw, 44px) 72px;
    background:
        radial-gradient(circle at 92% 5%, rgba(120,142,150,.055), transparent 24rem),
        linear-gradient(180deg, rgba(250,247,241,.52), rgba(244,238,230,.35)) !important;
}
.category-browser-page,
.help-page {
    max-width: 1180px;
}

/* Interior page intros are editorial, not mini homepage heroes. */
.category-browser-hero,
.help-hero {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 26px;
    margin: 0 0 24px;
    padding: 4px 0 22px;
    border: 0 !important;
    border-bottom: 1px solid #d7ccbe !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--ink) !important;
    box-shadow: none !important;
}
.category-browser-kicker,
.help-kicker {
    display: block;
    margin: 0 0 8px;
    color: var(--copper) !important;
    font: 800 10px/1.2 Arial, Helvetica, sans-serif;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.category-browser-hero h1,
.help-hero h1 {
    margin: 0 0 8px;
    color: var(--ink) !important;
    font: 500 clamp(36px, 4vw, 52px)/.98 Georgia, 'Times New Roman', serif;
    letter-spacing: -.045em;
}
.category-browser-hero p,
.help-hero p {
    max-width: 760px;
    margin: 0;
    color: #756d64 !important;
    font: 15px/1.55 Georgia, 'Times New Roman', serif;
}
.category-browser-back,
.help-contact-button {
    flex: 0 0 auto;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border: 1px solid #bfb2a3 !important;
    border-radius: 3px !important;
    background: rgba(251,248,242,.9) !important;
    color: #302c28 !important;
    font: 700 12px/1 Arial, Helvetica, sans-serif;
    text-decoration: none;
    box-shadow: none !important;
}
.category-browser-back:hover,
.help-contact-button:hover {
    border-color: var(--copper) !important;
    color: var(--copper) !important;
    background: #fffaf3 !important;
}

/* Categories */
.category-browser-grid {
    gap: 14px;
}
.category-browser-card {
    min-height: 92px;
    padding: 18px 19px;
    border: 1px solid #d7ccbf !important;
    border-radius: 4px !important;
    background: rgba(251,248,242,.94) !important;
    box-shadow: 0 9px 24px rgba(48,39,31,.035) !important;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.category-browser-card:hover {
    transform: translateY(-2px);
    border-color: #b99b88 !important;
    background: #fffaf3 !important;
    box-shadow: 0 14px 30px rgba(48,39,31,.075) !important;
}
.category-browser-icon {
    width: 44px;
    height: 44px;
    border: 1px solid #d6b7a4;
    border-radius: 50%;
    background: #efe3d8 !important;
    color: var(--copper) !important;
    font-size: 14px;
}
.category-browser-card strong {
    color: #2a2723 !important;
    font: 500 20px/1.15 Georgia, 'Times New Roman', serif;
}
.category-browser-card small {
    margin-top: 5px;
    color: #8a8177 !important;
    font-size: 12px;
}
.category-browser-arrow {
    color: var(--copper) !important;
    font-size: 19px;
    font-weight: 400;
}
.category-sort-tabs {
    gap: 0;
    margin: 0 0 16px;
    border-bottom: 1px solid #d8cdc0;
}
.category-sort-tabs a {
    padding: 10px 14px;
    border-radius: 0;
    background: transparent !important;
    color: #756d64 !important;
    font: 700 12px/1 Arial, Helvetica, sans-serif;
}
.category-sort-tabs a.active {
    color: #2b2723 !important;
    box-shadow: inset 0 -2px var(--copper);
}
.category-browser-feed { gap: 12px; }
.category-browser-complaint {
    padding: 18px;
    border: 1px solid #d8cec1 !important;
    border-radius: 4px !important;
    background: rgba(251,248,242,.94) !important;
    box-shadow: 0 8px 22px rgba(48,39,31,.035);
}
.category-browser-score {
    border-right-color: #ddd2c5;
}
.category-browser-score strong { color: var(--copper) !important; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; }
.category-browser-score span,
.category-browser-meta { color: #91877c !important; }
.category-browser-complaint h2 { font: 500 20px/1.2 Georgia, 'Times New Roman', serif; }
.category-browser-complaint h2 a { color: #28241f !important; }
.category-browser-complaint h2 a:hover { color: var(--copper) !important; }
.category-browser-complaint p { color: #746c63 !important; }
.category-browser-empty {
    border-color: #cdbfaf !important;
    border-radius: 4px !important;
    background: rgba(251,248,242,.8) !important;
    color: #81786e !important;
}
.category-browser-empty strong { color: #3f3933 !important; font-family: Georgia, 'Times New Roman', serif; }

/* Help */
.help-search-card {
    padding: 18px 20px;
    margin-bottom: 18px;
    border: 1px solid #d8cec1 !important;
    border-radius: 4px !important;
    background: rgba(251,248,242,.94) !important;
    box-shadow: 0 9px 24px rgba(48,39,31,.035) !important;
}
.help-search-card label {
    margin-bottom: 8px;
    color: #3d3833 !important;
    font: 500 20px/1.2 Georgia, 'Times New Roman', serif;
}
.help-search-wrap {
    border-color: #cfc3b5 !important;
    border-radius: 3px !important;
    background: #fffdf9 !important;
}
.help-search-wrap:focus-within {
    border-color: #aa755d !important;
    box-shadow: 0 0 0 3px rgba(164,82,56,.08);
}
.help-search-card p { color: #8a8177 !important; }
.help-layout {
    grid-template-columns: 230px minmax(0,1fr);
    gap: 18px;
}
.help-section-nav {
    top: 18px;
    gap: 2px;
    padding: 9px;
    border: 1px solid #d8cec1 !important;
    border-radius: 4px !important;
    background: rgba(247,241,233,.94) !important;
    box-shadow: 0 8px 22px rgba(48,39,31,.025);
}
.help-section-nav a {
    padding: 10px 11px;
    border-radius: 2px;
    color: #5d554d !important;
    font-size: 12px;
}
.help-section-nav a:hover,
.help-section-nav a:focus-visible {
    background: #eae0d5 !important;
    color: #2c2824 !important;
}
.help-content { gap: 14px; }
.help-topic {
    padding: 22px;
    border: 1px solid #d8cec1 !important;
    border-radius: 4px !important;
    background: rgba(251,248,242,.95) !important;
    box-shadow: 0 10px 27px rgba(48,39,31,.035) !important;
}
.help-topic-heading { margin-bottom: 16px; }
.help-topic-icon {
    width: 42px;
    height: 42px;
    border: 1px solid #d6b7a4;
    border-radius: 50%;
    background: #efe3d8 !important;
    color: var(--copper) !important;
}
.help-topic-heading h2 {
    color: #2d2925 !important;
    font: 500 24px/1.08 Georgia, 'Times New Roman', serif;
    letter-spacing: -.025em;
}
.help-topic-heading p { color: #8b8278 !important; }
.help-faq-list { gap: 7px; }
.help-faq-list details {
    border: 1px solid #ddd3c7 !important;
    border-radius: 3px !important;
    background: #fffaf4 !important;
}
.help-faq-list details[open] { background: #f8f1e8 !important; }
.help-faq-list summary {
    color: #37322d !important;
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: 600;
}
.help-faq-list details p { color: #6e665e !important; }
.help-policy-callout {
    border: 1px solid #dec4b3 !important;
    border-radius: 3px !important;
    background: #f1e3d8 !important;
    color: #5a4438 !important;
}
.help-emergency-note {
    border-color: #d4bd91 !important;
    border-radius: 3px !important;
    background: #f6eddd !important;
    color: #665334 !important;
}
.community-rule-grid article {
    border-color: #ddd3c7 !important;
    border-radius: 3px !important;
    background: #fffaf4 !important;
}
.community-rule-grid strong { color: #37322d !important; font-family: Georgia, 'Times New Roman', serif; }
.community-rule-grid p,
.help-paragraph { color: #716960 !important; }
.help-inline-action,
.help-action-row a {
    border-color: #bfb2a3 !important;
    border-radius: 3px !important;
    background: #fffaf3 !important;
    color: #3a342f !important;
}
.help-inline-action:hover,
.help-action-row a:hover { border-color: var(--copper) !important; color: var(--copper) !important; }
.help-legal-note {
    border-left-color: var(--copper) !important;
    border-radius: 0 3px 3px 0 !important;
    background: #f5ece2 !important;
    color: #746a61 !important;
}
.help-legal-note strong { color: #3e3832 !important; }

@media (max-width: 760px) {
    .category-browser-main,
    .help-main { padding: 24px 16px 60px; }
    .category-browser-hero,
    .help-hero { align-items: flex-start; flex-direction: column; gap: 14px; }
    .category-browser-hero h1,
    .help-hero h1 { font-size: 38px; }
    .category-browser-grid,
    .help-layout { grid-template-columns: 1fr; }
    .help-section-nav { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 480px) {
    .help-section-nav { grid-template-columns: 1fr; }
    .category-browser-card { min-height: 82px; padding: 15px; }
    .help-topic { padding: 17px; }
}


/* OPTION #1 HOME LAYOUT POLISH — v3.11.3 */
.home-feed-toolbar {
    display:grid;
    grid-template-columns:minmax(0, 1fr);
    align-items:start;
    gap:12px;
}
.home-feed-toolbar .tabs {
    width:100%;
    flex:none;
}
.home-feed-toolbar .new-complaint-button {
    width:100%;
    min-height:68px;
    flex:none;
}

@media (min-width:761px) {
    .home-feed-toolbar .tabs {
        overflow-x:visible;
    }
    .home-feed-toolbar .tab {
        flex:1 1 auto;
        min-width:max-content;
        padding:0 clamp(8px, 1vw, 14px);
        overflow:visible;
        text-overflow:clip;
        text-align:center;
    }
}

@media (min-width:761px) and (max-width:1180px) {
    .topbar.option1-topbar {
        height:auto;
        min-height:0;
        grid-template-columns:minmax(220px, 1fr) auto;
        grid-template-areas:
            'brand account'
            'search search';
        gap:10px 16px;
        padding:12px 18px 14px;
        align-items:center;
    }
    .option1-brand { grid-area:brand; }
    .option1-topbar .search-wrap {
        grid-area:search;
        width:100%;
        min-width:0;
    }
    .option1-topbar .account-area {
        grid-area:account;
        justify-self:end;
    }
}

@media (max-width:760px) {
    .home-feed-toolbar .new-complaint-button { min-height:52px; }
}


/* OPTION #1 MEMBER AREA + CATEGORY EXPANSION — v3.11.4 */
.profile-main,.notifications-main,.announcement-main,.appeals-main,.lifecycle-main {
    background:transparent !important;
}
.profile-page,.notifications-page,.announcement-page,.appeals-page,.lifecycle-page {
    width:min(1120px,100%);
}

/* Shared editorial intros for signed-in member pages. */
.notifications-hero,.announcement-hero,.appeals-hero,.lifecycle-hero {
    padding:0 0 18px !important;
    margin-bottom:20px;
    border:0 !important;
    border-bottom:1px solid #d7ccbf !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.notifications-kicker,.announcement-kicker,.appeals-kicker,.lifecycle-kicker {
    color:var(--copper) !important;
    letter-spacing:.14em;
}
.notifications-hero h1,.announcement-hero h1,.appeals-hero h1,.lifecycle-hero h1 {
    color:var(--ink) !important;
    font-family:Georgia,'Times New Roman',serif;
    font-weight:500;
    letter-spacing:-.025em;
}
.notifications-hero p,.announcement-hero p,.appeals-hero p,.lifecycle-hero p {
    color:var(--muted) !important;
}

/* My Profile */
.profile-hero {
    border:1px solid #d8cdc0 !important;
    border-radius:7px !important;
    background:rgba(251,248,242,.96) !important;
    box-shadow:0 12px 32px rgba(41,34,26,.06) !important;
}
.profile-avatar-large {
    background:linear-gradient(145deg,#252421,#705345) !important;
    color:#f7efe5 !important;
    border:1px solid #bda999;
}
.profile-name-row h1,.profile-toolbar h2,.profile-about-card h2,.profile-details-card h2 {
    color:var(--ink) !important;
    font-family:Georgia,'Times New Roman',serif;
    font-weight:500;
}
.profile-member-since,.profile-stats,.profile-toolbar p,.profile-card-meta,
.profile-about-card p,.profile-details-card dt,.profile-details-card dd {
    color:var(--muted) !important;
}
.profile-stats strong { color:#4d443c !important; }
.profile-owner-badge {
    background:#efe3d8 !important;
    color:#8b4d38 !important;
}
.profile-hero .secondary-button {
    border:1px solid #cdbdab !important;
    border-radius:3px !important;
    background:#faf6ef !important;
    color:var(--ink) !important;
    box-shadow:none !important;
}
.profile-hero .secondary-button:hover { border-color:var(--copper) !important; color:var(--copper) !important; }
.profile-tabs {
    border-color:#d8cdc0 !important;
    border-radius:5px !important;
    background:rgba(251,248,242,.96) !important;
    box-shadow:none !important;
}
.profile-tabs a { border-radius:2px !important; color:#6d6359 !important; }
.profile-tabs a:hover,.profile-tabs a.active {
    background:#efe3d8 !important;
    color:#7f4634 !important;
    box-shadow:inset 0 -2px var(--copper);
}
.profile-sort {
    border-color:#d8cdc0 !important;
    border-radius:4px !important;
    background:#fbf8f2 !important;
}
.profile-sort a { color:#756b61 !important; border-radius:2px !important; }
.profile-sort a.active,.profile-sort a:hover { background:#efe3d8 !important; color:#7f4634 !important; }
.profile-complaint-card,.profile-about-card,.profile-details-card,.profile-empty {
    border-color:#d8cdc0 !important;
    border-radius:6px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.04) !important;
}
.profile-complaint-card h3,.profile-complaint-card h3 a { color:#312b26 !important; font-family:Georgia,'Times New Roman',serif; }
.profile-complaint-card h3 a:hover { color:var(--copper) !important; }
.profile-complaint-card p { color:#665e55 !important; }
.profile-private-badge { background:#eee8e0 !important; color:#665b51 !important; }
.profile-public-badge { background:#edf1e9 !important; color:#52624e !important; }
.profile-details-card dl>div { border-color:#e1d8cd !important; }

/* Notifications */
.notifications-unread-summary {
    border:1px solid #d4c6b7;
    border-radius:5px !important;
    background:#f0e5da !important;
}
.notifications-unread-summary span { color:#7d7065 !important; }
.notifications-unread-summary strong { color:var(--copper) !important; font-family:Georgia,'Times New Roman',serif; }
.notifications-toolbar,.notification-row,.notifications-empty {
    border-color:#d8cdc0 !important;
    border-radius:5px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:none !important;
}
.notifications-toolbar button {
    border:1px solid #d3c5b7 !important;
    border-radius:3px !important;
    background:#f3ece3 !important;
    color:#5f554c !important;
}
.notifications-toolbar button:hover:not(:disabled) { border-color:var(--copper) !important; color:var(--copper) !important; }
.notification-row.unread {
    border-color:#c9b5a7 !important;
    background:#fbf6ef !important;
    box-shadow:inset 3px 0 0 var(--copper) !important;
}
.notification-type-icon,.notifications-empty-icon {
    border-radius:50% !important;
    background:#efe3d8 !important;
    color:#8a4d39 !important;
}
.notification-row-heading strong,.notifications-empty h2 { color:#3b342e !important; }
.notification-row-copy p,.notification-row-copy time,.notifications-empty p,.notifications-retention-note,
.notification-mute-control>span { color:#7c7167 !important; }
.notification-unread-dot { background:var(--copper) !important; }
.notification-open-form button,.notifications-muted-banner button {
    border-radius:3px !important;
    background:var(--ink) !important;
    color:#fff !important;
}
.notifications-muted-banner { border-color:#d9c39f !important; border-radius:5px !important; background:#f7efe0 !important; }

/* Announcements */
.announcement-archive-link,.lifecycle-back {
    border-color:#d0c1b2 !important;
    border-radius:3px !important;
    background:#fbf8f2 !important;
    color:#5b5148 !important;
}
.announcement-user-item,.announcement-empty-user,.announcement-editor-card,.announcement-list-card,.announcement-summary article {
    border-color:#d8cdc0 !important;
    border-radius:6px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.04) !important;
}
.announcement-user-icon,.announcement-empty-user>div {
    background:#efe3d8 !important;
    color:#8b4d38 !important;
}
.announcement-user-heading h2,.announcement-empty-user h2,.announcement-card-heading h2,
.announcement-admin-item h3 { color:#322c27 !important; font-family:Georgia,'Times New Roman',serif; font-weight:500; }
.announcement-user-item p,.announcement-user-heading time,.announcement-retention-note,
.announcement-card-heading p,.announcement-admin-item>p { color:#746a61 !important; }
.announcement-audience,.announcement-status { background:#eee6dd !important; color:#665b52 !important; }

/* Appeals */
.appeals-rule-card,.appeals-info-grid>div,.appeal-card,.appeal-history-card,.appeals-empty {
    border-color:#d8cdc0 !important;
    border-radius:6px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.04) !important;
}
.appeals-rule-card strong,.appeals-info-grid strong,.appeals-section-heading h2,
.appeal-card h3,.appeal-history-card h3,.appeals-empty strong {
    color:#352f29 !important;
}
.appeals-info-grid span,.appeals-section-heading p,.appeal-card>p,.appeal-card-head time,
.appeals-empty span { color:#776c62 !important; }
.appeals-section-heading>span,.appeal-type { background:#efe3d8 !important; color:#864b38 !important; }
.appeal-statement,.appeal-user-statement,.appeal-progress>div,.appeal-resolution {
    background:#f2ebe2 !important;
    color:#655b52 !important;
}
.appeal-form { border-color:#ded4c9 !important; }
.appeal-form label { color:#4d443d !important; }
.appeal-form textarea { border-color:#d4c5b6 !important; border-radius:4px !important; background:#fffaf4 !important; }
.appeal-form-footer button { border-radius:3px !important; background:var(--ink) !important; }
.appeal-open-link { color:var(--copper) !important; }

/* Account Status */
.account-status-card {
    gap:1px !important;
    border-color:#d8cdc0 !important;
    border-radius:6px !important;
    background:#d8cdc0 !important;
}
.account-status-card>div,.lifecycle-card {
    border-color:#d8cdc0 !important;
    border-radius:6px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.04) !important;
}
.account-status-card span,.lifecycle-card-heading p,.lifecycle-facts span,.lifecycle-two-column p,
.lifecycle-timeline span,.lifecycle-note { color:#786e64 !important; }
.account-status-card strong,.lifecycle-card-heading h2,.lifecycle-facts strong,.lifecycle-two-column strong,
.lifecycle-timeline strong { color:#37312b !important; }
.lifecycle-icon.neutral { background:#eee5dc !important; color:#725d50 !important; }
.lifecycle-facts>div,.lifecycle-two-column>div,.lifecycle-note {
    border-color:#ded4c9 !important;
    border-radius:5px !important;
    background:#f4eee6 !important;
}
.lifecycle-primary { border-radius:3px !important; background:var(--ink) !important; }
.lifecycle-timeline:before { background:#d5c8ba !important; }
.lifecycle-timeline>div:before { background:#b8a899 !important; border-color:#f9f4ed !important; box-shadow:0 0 0 1px #b8a899 !important; }
.lifecycle-timeline>div.active:before { background:var(--copper) !important; }

/* Categories: recognizable symbols instead of the generic grid glyph. */
.category-browser-icon {
    width:54px !important;
    height:54px !important;
    border:1px solid #d7c8b9 !important;
    border-radius:50% !important;
    background:#efe3d8 !important;
    color:#6f4e3f !important;
    font-family:Arial,'Segoe UI Symbol','Segoe UI Emoji',sans-serif !important;
    font-size:22px !important;
    font-weight:700 !important;
}
.category-browser-card[data-category-slug='environment'] .category-browser-icon,
.category-browser-card[data-category-slug='society'] .category-browser-icon { background:#e8ece3 !important; color:#58634f !important; }
.category-browser-card[data-category-slug='politics'] .category-browser-icon,
.category-browser-card[data-category-slug='corporation'] .category-browser-icon { background:#e9e5df !important; color:#4f4b46 !important; }
.category-browser-card[data-category-slug='technology'] .category-browser-icon,
.category-browser-card[data-category-slug='websites'] .category-browser-icon { background:#e7ecec !important; color:#52656a !important; }
.category-browser-card[data-category-slug='entertainment'] .category-browser-icon { background:#f1e5df !important; color:#8b4c3a !important; }
.category-browser-card[data-category-slug='finances'] .category-browser-icon { background:#eee9dc !important; color:#70613d !important; }

@media(max-width:760px){
    .profile-main,.notifications-main,.announcement-main,.appeals-main,.lifecycle-main { padding:18px 12px 48px !important; }
    .notifications-hero,.announcement-hero,.appeals-hero,.lifecycle-hero { gap:12px; }
}


/* v3.11.5: keep desktop feed labels readable while retaining the stacked action button. */
@media (min-width:761px) {
    .home-feed-toolbar .tab { white-space:nowrap; }
}


/* OPTION #1 CONSOLIDATED POLISH — v3.11.6 */
/* Homepage proportions */
.hero-eyebrow { font-size:12px !important; letter-spacing:.17em; }
.clarity-clear h1 { font-size:clamp(44px,4.45vw,72px) !important; }
.hero-deck { max-width:720px; }
.chaos-word-four { left:9%; top:57%; transform:rotate(11deg); font-size:12px; }
.chaos-word-five { right:12%; bottom:17%; transform:rotate(-12deg); font-size:17px; }
.home-feed-toolbar { gap:8px; }
.home-feed-toolbar .tab { height:42px !important; }
.home-feed-toolbar .new-complaint-button { min-height:46px !important; height:46px; }
.home-feed-toolbar .new-complaint-button span { font-size:20px; }

/* One consistent category color travels with the category everywhere. */
.category-dot { background:var(--category-color, #7b8796) !important; filter:none !important; }
.category-browser-icon {
    background:var(--category-color, #7b8796) !important;
    color:#fff !important;
    border-color:color-mix(in srgb,var(--category-color, #7b8796) 72%,#fff) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
}
/* Remove older per-slug icon overrides now that PHP supplies the canonical color. */
.category-browser-card[data-category-slug] .category-browser-icon { background:var(--category-color, #7b8796) !important; color:#fff !important; }

/* Contact: quiet editorial paper/ink treatment instead of the legacy app-blue UI. */
.option1-contact-page .contact-hero {
    padding:0 0 20px !important;
    margin-bottom:20px;
    border:0 !important;
    border-bottom:1px solid #d7ccbf !important;
    border-radius:0 !important;
    background:transparent !important;
    color:var(--ink) !important;
    box-shadow:none !important;
}
.option1-contact-page .contact-kicker { color:var(--copper) !important; letter-spacing:.14em; }
.option1-contact-page .contact-hero h1 { color:var(--ink) !important; font:500 42px/1 Georgia,'Times New Roman',serif; }
.option1-contact-page .contact-hero p { color:var(--muted) !important; max-width:760px; font-size:13px; }
.option1-contact-page .contact-form-card,
.option1-contact-page .contact-info-card {
    border:1px solid #d8cdc0 !important;
    border-radius:6px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.04) !important;
}
.option1-contact-page .contact-form-card h2,
.option1-contact-page .contact-info-card h2 { color:#352f29 !important; font-family:Georgia,'Times New Roman',serif; font-weight:500; }
.option1-contact-page .contact-form-intro,
.option1-contact-page .contact-info-card p { color:#766c62 !important; }
.option1-contact-page .contact-form label>span { color:#50473f !important; }
.option1-contact-page .contact-form input,
.option1-contact-page .contact-form select,
.option1-contact-page .contact-form textarea {
    border-color:#d2c3b4 !important; border-radius:4px !important; background:#fffaf4 !important; color:var(--ink) !important;
}
.option1-contact-page .contact-form input:focus,
.option1-contact-page .contact-form select:focus,
.option1-contact-page .contact-form textarea:focus { border-color:var(--copper) !important; box-shadow:0 0 0 3px rgba(180,98,69,.10) !important; }
.option1-contact-page .contact-privacy-note { border-color:#ddc9b8 !important; background:#f5ece2 !important; color:#75685e !important; }
.option1-contact-page .contact-actions button { border-radius:3px !important; background:var(--ink) !important; color:#fff !important; }
.option1-contact-page .contact-actions button:hover { background:var(--copper) !important; }
.option1-contact-page .contact-actions a,
.option1-contact-page .contact-info-card a { color:var(--copper) !important; }
.option1-contact-page .contact-side-icon { background:#efe3d8 !important; color:#8b4d38 !important; }
.option1-contact-page .contact-urgent-card { border-color:#cda98e !important; background:#f7eee4 !important; }
.option1-contact-page .contact-success { border-color:#b8c8b0 !important; background:#edf2e9 !important; color:#485645 !important; }
.option1-contact-page .contact-errors { border-color:#d9b7a4 !important; background:#f7ebe4 !important; color:#7b4938 !important; }

/* Safety hero readability: retain the approved dark Option #1 art direction, increase contrast. */
.safety-hero.safety-hero-featured {
    background:linear-gradient(135deg,#292724 0%,#4b4039 100%) !important;
    border-color:#75675b !important;
}
.safety-hero-featured .safety-kicker { color:#f0b08d !important; font-size:12px; }
.safety-hero-featured h1 { color:#fff8ef !important; }
.safety-hero-featured .safety-hero-copy>p { color:#eee3d7 !important; font-size:13px; line-height:1.7; }
.safety-hero-featured .safety-hero-checks span { color:#f0e7de !important; font-size:11px; }
.safety-hero-featured .safety-hero-checks b { background:#e9f4ea !important; color:#2f704c !important; }
.safety-hero-featured .safety-public-note { color:#d9cbbf !important; }
.safety-hero-featured .safety-hero-links a { background:#fff7ef !important; color:#2b2824 !important; }
.safety-hero-featured .safety-hero-links a:first-child { background:var(--copper) !important; color:#fff !important; }
.safety-hero-featured .safety-hero-links a.secondary { border-color:#dac6b5 !important; }
.safety-family-visual {
    border-color:#cfc2b7 !important;
    background:#f4efe9 !important;
    box-shadow:0 16px 36px rgba(18,14,11,.20) !important;
}
.safety-family-visual strong { color:#302b27 !important; font-size:15px !important; }
.safety-family-visual>span { color:#665e57 !important; font-size:11px !important; }
.safety-visual-shield { background:#536f9f !important; }

/* Account Administration: real management functionality with the same Option #1 visual language. */
.account-admin-main { flex:1 1 auto; min-width:0; padding:26px 28px 60px; background:transparent !important; }
.account-admin-page { width:min(1180px,100%); margin:0 auto; }
.account-admin-hero { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; padding:0 0 20px; border-bottom:1px solid #d7ccbf; }
.account-admin-kicker { color:var(--copper); font-size:10px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.account-admin-hero h1 { margin:5px 0 8px; color:var(--ink); font:500 40px/1 Georgia,'Times New Roman',serif; }
.account-admin-hero p { max-width:760px; margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
.account-admin-links { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.account-admin-links a { padding:9px 11px; border:1px solid #cdbfb0; border-radius:3px; background:#fbf8f2; color:#5a5048; font-size:11px; font-weight:700; }
.account-admin-links a:hover { border-color:var(--copper); color:var(--copper); }
.account-admin-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:18px 0 12px; }
.account-admin-summary>div { padding:14px 16px; border:1px solid #d8cdc0; border-radius:5px; background:rgba(251,248,242,.97); }
.account-admin-summary span { display:block; color:#7d7268; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.account-admin-summary strong { display:block; margin-top:4px; color:#39322c; font:500 24px Georgia,'Times New Roman',serif; }
.account-admin-search { display:grid; grid-template-columns:minmax(220px,1fr) 190px auto auto; gap:10px; align-items:end; margin-bottom:18px; padding:14px; border:1px solid #d8cdc0; border-radius:5px; background:#fbf8f2; }
.account-admin-search label { display:grid; gap:5px; color:#554c44; font-size:10px; font-weight:700; }
.account-admin-search input,.account-admin-search select { min-height:40px; border:1px solid #d1c3b5; border-radius:3px; background:#fffaf4; color:var(--ink); padding:8px 10px; }
.account-admin-search button,.account-admin-search>a { min-height:40px; display:inline-flex; align-items:center; justify-content:center; padding:0 15px; border:1px solid var(--ink); border-radius:3px; background:var(--ink); color:#fff; font-weight:700; cursor:pointer; }
.account-admin-search>a { border-color:#cdbfb0; background:#f7f0e8; color:#5b5148; }
.account-admin-results-head { display:flex; align-items:center; justify-content:space-between; margin:0 0 8px; }
.account-admin-results-head h2 { margin:0; color:#322c27; font:500 24px Georgia,'Times New Roman',serif; }
.account-admin-results-head span { color:#84796e; font-size:11px; }
.account-admin-list { display:grid !important; gap:8px; padding:0 !important; border:0 !important; background:transparent !important; }
.account-admin-row { display:grid; grid-template-columns:minmax(240px,1.8fr) minmax(170px,.75fr) 135px 120px; gap:16px; align-items:center; padding:14px 16px; border:1px solid #d8cdc0; border-radius:5px; background:rgba(251,248,242,.97); }
.account-admin-identity { display:grid; gap:3px; min-width:0; }
.account-admin-identity strong { color:#342e29; font-family:Georgia,'Times New Roman',serif; font-size:17px; font-weight:500; }
.account-admin-identity span { overflow:hidden; text-overflow:ellipsis; color:#6f655c; font-size:11px; }
.account-admin-identity small { color:#92867a; font-size:9px; }
.account-admin-activity { display:flex; gap:12px; color:#786e64; font-size:10px; }
.account-admin-activity b { color:#403831; }
.account-status-chip { display:inline-flex; justify-content:center; min-width:105px; padding:6px 8px; border-radius:999px; background:#eee6dd; color:#655b52; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.account-status-chip.status-active { background:#e7efe5; color:#4b654a; }
.account-status-chip.status-suspended { background:#f4e6dd; color:#8a4c38; }
.account-status-chip.status-deletion_pending { background:#f4edda; color:#7a6331; }
.account-status-chip.status-deleted { background:#e8e5e2; color:#69635d; }
.account-admin-action form { margin:0; }
.account-admin-action button { width:100%; min-height:36px; border:1px solid #cdbfb0; border-radius:3px; background:#f8f1e8; color:#564d45; font-weight:700; cursor:pointer; }
.account-admin-action .account-suspend-button:hover { border-color:#ad6b55; color:#8a4c38; }
.account-admin-action .account-restore-button { border-color:#aebea8; background:#edf2e9; color:#50674c; }
.account-admin-managed-elsewhere { display:block; color:#8c8177; font-size:9px; text-align:center; }
.account-admin-empty { padding:24px; border:1px dashed #cdbfb0; color:#786e64; text-align:center; background:#fbf8f2; }

@media(max-width:900px){
    .account-admin-main { padding:18px 14px 50px; }
    .account-admin-hero { align-items:flex-start; flex-direction:column; }
    .account-admin-links { justify-content:flex-start; }
    .account-admin-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .account-admin-search { grid-template-columns:1fr 1fr; }
    .account-admin-row { grid-template-columns:1fr 1fr; }
}
@media(max-width:620px){
    .clarity-clear h1 { font-size:40px !important; }
    .hero-eyebrow { font-size:11px !important; }
    .account-admin-summary,.account-admin-search,.account-admin-row { grid-template-columns:1fr; }
    .account-admin-activity { justify-content:flex-start; }
    .account-admin-action button { width:auto; min-width:120px; }
}


/* OPTION #1 PROFILE + SETTINGS + COLLAPSED HERO POLISH — v3.11.7 */
/* More words in the surreal/problem side of the homepage. */
.chaos-word-six { left:5%; top:40%; transform:rotate(-9deg); font-size:10px; }
.chaos-word-seven { left:31%; top:17%; transform:rotate(8deg); font-size:10px; }
.chaos-word-eight { right:7%; top:48%; transform:rotate(-7deg); font-size:10px; }
.chaos-word-nine { left:29%; bottom:10%; transform:rotate(7deg); font-size:11px; }
.chaos-word-ten { right:29%; bottom:8%; transform:rotate(-5deg); font-size:10px; }
.chaos-word-eleven { left:54%; top:14%; transform:rotate(-10deg); font-size:9px; }
.chaos-word-twelve { right:5%; bottom:42%; transform:rotate(10deg); font-size:11px; }

/* Collapsed intro: still compact, but tall enough for the actual serif glyphs/italics. */
.clarity-hero.is-collapsed {
    min-height:60px !important;
    height:60px !important;
    overflow:hidden;
}
.clarity-hero.is-collapsed .clarity-clear {
    min-height:60px !important;
    height:60px;
    padding:0 154px 0 20px !important;
    overflow:visible;
}
.clarity-hero.is-collapsed .clarity-clear h1 {
    display:block;
    margin:0 !important;
    padding:5px 0 7px !important;
    font:500 22px/1.18 Georgia,'Times New Roman',serif !important;
    letter-spacing:-.025em !important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.clarity-hero.is-collapsed .clarity-clear h1 em {
    display:inline;
    font-size:inherit !important;
    line-height:inherit !important;
}

/* Edit Profile: same paper / ink / copper editorial system as the approved site. */
.option1-edit-profile-page { width:min(1040px,100%); }
.option1-edit-profile-page .edit-profile-hero {
    padding:4px 0 22px !important;
    border:0 !important;
    border-bottom:1px solid #d7ccbf !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.option1-edit-profile-page .edit-profile-kicker {
    color:var(--copper) !important;
    font-size:10px !important;
    letter-spacing:.16em !important;
}
.option1-edit-profile-page .edit-profile-hero h1 {
    margin:6px 0 8px !important;
    color:var(--ink) !important;
    font:500 42px/1 Georgia,'Times New Roman',serif !important;
}
.option1-edit-profile-page .edit-profile-hero p { color:var(--muted) !important; font-size:12px !important; }
.option1-edit-profile-page .edit-profile-hero>a {
    border:1px solid #cdbfb0 !important;
    border-radius:3px !important;
    background:#fbf8f2 !important;
    color:#594f47 !important;
    padding:9px 12px !important;
}
.option1-edit-profile-page .edit-profile-form { gap:14px; margin-top:18px; }
.option1-edit-profile-page .edit-profile-card {
    padding:22px !important;
    border-color:#d8cdc0 !important;
    border-radius:6px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.04) !important;
}
.option1-edit-profile-page .edit-profile-card-heading { padding-bottom:12px; margin-bottom:16px; border-bottom:1px solid #e2d8cc; }
.option1-edit-profile-page .edit-profile-card-heading h2 {
    color:#352f29 !important;
    font:500 23px/1.15 Georgia,'Times New Roman',serif !important;
}
.option1-edit-profile-page .edit-profile-avatar-preview {
    background:#39342f !important;
    border:3px solid #eee3d7;
    box-shadow:0 0 0 1px #cdbdad;
}
.option1-edit-profile-page .edit-profile-upload span,
.option1-edit-profile-page .edit-profile-actions button {
    border-radius:3px !important;
    background:var(--ink) !important;
    color:#fff !important;
}
.option1-edit-profile-page .edit-profile-upload span:hover,
.option1-edit-profile-page .edit-profile-actions button:hover { background:var(--copper) !important; }
.option1-edit-profile-page .edit-profile-avatar-controls small,
.option1-edit-profile-page .edit-profile-fields small,
.option1-edit-profile-page .edit-profile-readonly small,
.option1-edit-profile-page .edit-profile-privacy-options small { color:#8a7e73 !important; }
.option1-edit-profile-page .edit-profile-remove { color:#8a5543 !important; }
.option1-edit-profile-page .edit-profile-fields>label>span,
.option1-edit-profile-page .edit-profile-readonly>span { color:#5a5047 !important; }
.option1-edit-profile-page .edit-profile-fields input[type='text'],
.option1-edit-profile-page .edit-profile-fields input[type='tel'],
.option1-edit-profile-page .edit-profile-fields textarea,
.option1-edit-profile-page .edit-profile-location-row input {
    border-color:#d2c3b4 !important;
    border-radius:4px !important;
    background:#fffaf4 !important;
    color:var(--ink) !important;
}
.option1-edit-profile-page .edit-profile-fields input:focus,
.option1-edit-profile-page .edit-profile-fields textarea:focus {
    outline:none !important;
    border-color:var(--copper) !important;
    box-shadow:0 0 0 3px rgba(180,98,69,.10) !important;
}
.option1-edit-profile-page .edit-profile-fields input:disabled { background:#eee8df !important; color:#7c7369 !important; }
.option1-edit-profile-page .edit-profile-checkbox,
.option1-edit-profile-page .edit-profile-readonly {
    border:1px solid #ded3c6;
    border-radius:5px !important;
    background:#f3ece4 !important;
}
.option1-edit-profile-page .edit-profile-checkbox strong,
.option1-edit-profile-page .edit-profile-readonly strong,
.option1-edit-profile-page .edit-profile-privacy-options strong { color:#403831 !important; }
.option1-edit-profile-page .edit-profile-readonly a { color:var(--copper) !important; }
.option1-edit-profile-page .edit-profile-privacy-options label {
    border-color:#d8cdc0 !important;
    border-radius:5px !important;
    background:#fffaf4 !important;
}
.option1-edit-profile-page .edit-profile-privacy-options label:has(input:checked) {
    border-color:#b98a72 !important;
    background:#f5ebe1 !important;
    box-shadow:inset 3px 0 var(--copper);
}
.option1-edit-profile-page .edit-profile-privacy-facts span {
    background:#eee5dc !important;
    color:#655b52 !important;
}
.option1-edit-profile-page .edit-profile-detect-location {
    border-color:#cdbfb0 !important;
    border-radius:3px !important;
    background:#f3e9df !important;
    color:#6d4e3e !important;
}
.option1-edit-profile-page .edit-profile-detect-location:hover:not(:disabled) { background:#ead9cb !important; }
.option1-edit-profile-page .edit-profile-actions a {
    border:1px solid #d2c5b7;
    border-radius:3px !important;
    background:#f1e9df !important;
    color:#625850 !important;
}
.option1-edit-profile-page .edit-profile-success { border-color:#b8c8b0 !important; background:#edf2e9 !important; color:#485645 !important; }
.option1-edit-profile-page .edit-profile-errors { border-color:#d9b7a4 !important; background:#f7ebe4 !important; color:#7b4938 !important; }

/* Settings: same editorial interior treatment, preserving every existing control. */
.option1-settings-page { width:min(1180px,100%); }
.option1-settings-page .settings-hero {
    padding:4px 0 22px !important;
    border:0 !important;
    border-bottom:1px solid #d7ccbf !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    align-items:flex-end !important;
}
.option1-settings-page .settings-kicker {
    color:var(--copper) !important;
    font-size:10px !important;
    letter-spacing:.16em !important;
}
.option1-settings-page .settings-hero h1 {
    margin:6px 0 8px !important;
    color:var(--ink) !important;
    font:500 42px/1 Georgia,'Times New Roman',serif !important;
}
.option1-settings-page .settings-hero p { color:var(--muted) !important; font-size:12px !important; }
.option1-settings-page .settings-save-status {
    min-width:78px;
    border:1px solid #bdcbb8;
    border-radius:999px !important;
    background:#edf2e9 !important;
    color:#52674d !important;
}
.option1-settings-page .settings-save-status[data-state='saving'] { border-color:#d7c19d; background:#f7efe0 !important; color:#7f6432 !important; }
.option1-settings-page .settings-save-status[data-state='error'] { border-color:#d9b7a4; background:#f7ebe4 !important; color:#7b4938 !important; }
.option1-settings-page .settings-layout { grid-template-columns:190px minmax(0,1fr); gap:18px; margin-top:18px; }
.option1-settings-page .settings-section-nav {
    top:94px;
    gap:2px;
    padding:7px !important;
    border-color:#d8cdc0 !important;
    border-radius:5px !important;
    background:rgba(251,248,242,.95) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.035);
}
.option1-settings-page .settings-section-nav a {
    padding:10px 11px !important;
    border-radius:3px !important;
    color:#625950 !important;
}
.option1-settings-page .settings-section-nav a:hover { background:#ece2d7 !important; color:var(--copper) !important; }
.option1-settings-page .settings-sections { gap:14px; }
.option1-settings-page .settings-card,
.option1-settings-page .settings-reset-card {
    border-color:#d8cdc0 !important;
    border-radius:6px !important;
    background:rgba(251,248,242,.97) !important;
    box-shadow:0 8px 24px rgba(41,34,26,.04) !important;
}
.option1-settings-page .settings-card { padding:22px !important; }
.option1-settings-page .settings-card-heading { padding-bottom:12px; margin-bottom:16px; border-bottom:1px solid #e2d8cc; }
.option1-settings-page .settings-card h2 {
    color:#352f29 !important;
    font:500 23px/1.15 Georgia,'Times New Roman',serif !important;
}
.option1-settings-page .settings-inline-link {
    border:1px solid #d2c5b7;
    border-radius:3px !important;
    background:#f1e9df !important;
    color:#6d4e3e !important;
}
.option1-settings-page .settings-account-summary>div,
.option1-settings-page .settings-notification-grid>div,
.option1-settings-page .settings-info-box {
    border:1px solid #ded4c9;
    border-radius:5px !important;
    background:#f3ece4 !important;
}
.option1-settings-page .settings-account-summary span { color:#897d72 !important; }
.option1-settings-page .settings-account-summary strong,
.option1-settings-page .settings-notification-grid strong,
.option1-settings-page .settings-reset-card strong { color:#403831 !important; }
.option1-settings-page .settings-notification-grid p,
.option1-settings-page .settings-info-box,
.option1-settings-page .settings-reset-card p { color:#7b7066 !important; }
.option1-settings-page .settings-info-box a { color:var(--copper) !important; }
.option1-settings-page .settings-radio-card {
    border-color:#d8cdc0 !important;
    border-radius:5px !important;
    background:#fffaf4 !important;
}
.option1-settings-page .settings-radio-card:has(input:checked) {
    border-color:#b98a72 !important;
    background:#f5ebe1 !important;
    box-shadow:inset 3px 0 var(--copper);
}
.option1-settings-page .settings-radio-card strong { color:#403831 !important; }
.option1-settings-page .settings-radio-card small { color:#80756b !important; }
.option1-settings-page .settings-privacy-facts span {
    background:#eee5dc !important;
    color:#655b52 !important;
}
.option1-settings-page .settings-control-grid label>span,
.option1-settings-page .settings-language-control>span { color:#5a5047 !important; }
.option1-settings-page .settings-control-grid select,
.option1-settings-page .settings-language-control select,
.option1-settings-page .settings-control-grid input[type='color'] {
    border-color:#d2c3b4 !important;
    border-radius:4px !important;
    background:#fffaf4 !important;
    color:var(--ink) !important;
}
.option1-settings-page .settings-appearance-preview {
    border-color:#d8cdc0 !important;
    border-radius:5px !important;
    background:#fffaf4;
}
.option1-settings-page .settings-apply-row { border-color:#ded4c9 !important; background:#f3ece4 !important; }
.option1-settings-page .settings-apply-row span { color:#776c62 !important; }
.option1-settings-page .settings-apply-button {
    border-radius:3px !important;
    border-color:var(--ink) !important;
    background:var(--ink) !important;
    color:#fff !important;
}
.option1-settings-page .settings-apply-button:hover:not(:disabled) { background:var(--copper) !important; border-color:var(--copper) !important; }
.option1-settings-page .settings-reset-card { border-color:#d9c1b4 !important; background:#f7eee7 !important; }
.option1-settings-page .settings-reset-card button {
    border-color:#c99e89 !important;
    border-radius:3px !important;
    background:#f4e3d9 !important;
    color:#7d4938 !important;
}

@media(max-width:850px){
    .option1-settings-page .settings-layout { grid-template-columns:1fr; }
}
@media(max-width:760px){
    .clarity-hero.is-collapsed { min-height:56px !important; height:56px !important; }
    .clarity-hero.is-collapsed .clarity-clear { min-height:56px !important; height:56px; padding:0 132px 0 14px !important; }
    .clarity-hero.is-collapsed .clarity-clear h1 { padding:5px 0 6px !important; font-size:17px !important; line-height:1.22 !important; }
    .option1-edit-profile-page .edit-profile-hero h1,
    .option1-settings-page .settings-hero h1 { font-size:34px !important; }
}
@media(max-width:480px){
    .clarity-hero.is-collapsed .clarity-clear { padding-right:116px !important; }
    .clarity-hero.is-collapsed .clarity-clear h1 { font-size:15px !important; }
}

/* Preserve the user's dark appearance preference on the newly polished pages. */
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-hero,
html[data-user-theme='dark'] .option1-settings-page .settings-hero { background:transparent !important; border-bottom-color:#514940 !important; }
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-hero h1,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-card-heading h2,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-checkbox strong,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-readonly strong,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-privacy-options strong,
html[data-user-theme='dark'] .option1-settings-page .settings-hero h1,
html[data-user-theme='dark'] .option1-settings-page .settings-card h2,
html[data-user-theme='dark'] .option1-settings-page .settings-account-summary strong,
html[data-user-theme='dark'] .option1-settings-page .settings-notification-grid strong,
html[data-user-theme='dark'] .option1-settings-page .settings-radio-card strong,
html[data-user-theme='dark'] .option1-settings-page .settings-reset-card strong { color:#f1e8dd !important; }
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-card,
html[data-user-theme='dark'] .option1-settings-page .settings-card,
html[data-user-theme='dark'] .option1-settings-page .settings-reset-card,
html[data-user-theme='dark'] .option1-settings-page .settings-section-nav { background:#1e1c1a !important; border-color:#4b443d !important; }
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-checkbox,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-readonly,
html[data-user-theme='dark'] .option1-settings-page .settings-account-summary>div,
html[data-user-theme='dark'] .option1-settings-page .settings-notification-grid>div,
html[data-user-theme='dark'] .option1-settings-page .settings-info-box,
html[data-user-theme='dark'] .option1-settings-page .settings-apply-row { background:#28241f !important; border-color:#4c443c !important; }
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-privacy-options label,
html[data-user-theme='dark'] .option1-settings-page .settings-radio-card,
html[data-user-theme='dark'] .option1-settings-page .settings-appearance-preview { background:#24211e !important; border-color:#514940 !important; }
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-privacy-options label:has(input:checked),
html[data-user-theme='dark'] .option1-settings-page .settings-radio-card:has(input:checked) { background:#382a23 !important; border-color:#9c6e57 !important; }
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-fields input[type='text'],
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-fields input[type='tel'],
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-fields textarea,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-location-row input,
html[data-user-theme='dark'] .option1-settings-page .settings-control-grid select,
html[data-user-theme='dark'] .option1-settings-page .settings-language-control select,
html[data-user-theme='dark'] .option1-settings-page .settings-control-grid input[type='color'] { background:#171513 !important; border-color:#544b43 !important; color:#f0e7dc !important; }
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-hero p,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-avatar-controls small,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-fields small,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-readonly small,
html[data-user-theme='dark'] .option1-edit-profile-page .edit-profile-privacy-options small,
html[data-user-theme='dark'] .option1-settings-page .settings-hero p,
html[data-user-theme='dark'] .option1-settings-page .settings-notification-grid p,
html[data-user-theme='dark'] .option1-settings-page .settings-info-box,
html[data-user-theme='dark'] .option1-settings-page .settings-reset-card p,
html[data-user-theme='dark'] .option1-settings-page .settings-radio-card small { color:#b5aa9f !important; }
html[data-user-theme='dark'] .option1-settings-page .settings-section-nav a { color:#c7bbb0 !important; }


/* OPTION #1 SURREAL WORD EXPANSION — v3.11.8 */
.chaos-word-thirteen { left:16%; top:28%; transform:rotate(-5deg); font-size:9px; opacity:.86; }
.chaos-word-fourteen { left:42%; top:35%; transform:rotate(7deg); font-size:9px; opacity:.82; }
.chaos-word-fifteen { right:3%; top:23%; transform:rotate(-8deg); font-size:8px; letter-spacing:.12em; opacity:.82; }
.chaos-word-sixteen { left:8%; bottom:34%; transform:rotate(8deg); font-size:9px; opacity:.82; }
.chaos-word-seventeen { left:38%; bottom:25%; transform:rotate(-7deg); font-size:9px; opacity:.80; }
.chaos-word-eighteen { right:26%; bottom:30%; transform:rotate(7deg); font-size:9px; opacity:.82; }
.chaos-word-nineteen { left:64%; top:8%; transform:rotate(5deg); font-size:8px; letter-spacing:.12em; opacity:.78; }
.chaos-word-twenty { left:3%; bottom:4%; transform:rotate(-10deg); font-size:9px; opacity:.78; }
.chaos-word-twenty-one { left:42%; top:5%; transform:rotate(-5deg); font-size:10px; opacity:.82; }
.chaos-word-twenty-two { right:2%; top:6%; transform:rotate(9deg); font-size:8px; letter-spacing:.12em; opacity:.78; }
.chaos-word-twenty-three { left:58%; bottom:2%; transform:rotate(6deg); font-size:10px; opacity:.84; }

/* Keep the denser surreal word field readable on smaller canvases. */
@media (max-width:760px) {
    .chaos-word-thirteen,
    .chaos-word-fourteen,
    .chaos-word-fifteen,
    .chaos-word-sixteen,
    .chaos-word-seventeen,
    .chaos-word-eighteen,
    .chaos-word-nineteen,
    .chaos-word-twenty,
    .chaos-word-twenty-one,
    .chaos-word-twenty-two,
    .chaos-word-twenty-three { display:none; }
}


/* GLOBAL SAVED APPEARANCE — v3.11.9
   A saved Customize Your View selection follows the signed-in user across pages. */
html[data-user-appearance='custom'] {
    --ink: var(--user-font-color);
    --text: var(--user-font-color);
    --page: var(--user-background);
    --paper: var(--user-background);
    --surface: color-mix(in srgb, var(--user-background) 88%, white 12%);
    --line: color-mix(in srgb, var(--user-font-color) 24%, transparent);
    --muted: color-mix(in srgb, var(--user-font-color) 72%, transparent);
    color: var(--user-font-color);
    background: var(--user-background);
}
html[data-user-appearance='custom'] body,
html[data-user-appearance='custom'] button,
html[data-user-appearance='custom'] input,
html[data-user-appearance='custom'] textarea,
html[data-user-appearance='custom'] select,
html[data-user-appearance='custom'] h1,
html[data-user-appearance='custom'] h2,
html[data-user-appearance='custom'] h3,
html[data-user-appearance='custom'] h4,
html[data-user-appearance='custom'] h5,
html[data-user-appearance='custom'] h6 {
    font-family: var(--user-font-family) !important;
}

html[data-user-appearance='custom'] body,
html[data-user-appearance='custom'] .app-shell,
html[data-user-appearance='custom'] main,
html[data-user-appearance='custom'] .main-area,
html[data-user-appearance='custom'] .category-browser-main,
html[data-user-appearance='custom'] .help-main,
html[data-user-appearance='custom'] .profile-main,
html[data-user-appearance='custom'] .settings-main,
html[data-user-appearance='custom'] .notifications-main,
html[data-user-appearance='custom'] .announcement-main,
html[data-user-appearance='custom'] .appeals-main,
html[data-user-appearance='custom'] .lifecycle-main,
html[data-user-appearance='custom'] .edit-profile-main,
html[data-user-appearance='custom'] .contact-main,
html[data-user-appearance='custom'] .safety-main,
html[data-user-appearance='custom'] .search-main,
html[data-user-appearance='custom'] .admin-main,
html[data-user-appearance='custom'] .technical-main,
html[data-user-appearance='custom'] .structured-analytics-main {
    background: var(--user-background) !important;
    color: var(--user-font-color) !important;
}
html[data-user-appearance='custom'] .topbar.option1-topbar,
html[data-user-appearance='custom'] .sidebar,
html[data-user-appearance='custom'] .mobile-topbar,
html[data-user-appearance='custom'] .mobile-bottom-nav {
    background: color-mix(in srgb, var(--user-background) 92%, white 8%) !important;
    border-color: var(--line) !important;
    color: var(--user-font-color) !important;
}
html[data-user-appearance='custom'] .option1-brand .brand-mark,
html[data-user-appearance='custom'] .option1-brand .brand-copy strong,
html[data-user-appearance='custom'] .option1-brand .brand-copy small,
html[data-user-appearance='custom'] .editorial-nav a,
html[data-user-appearance='custom'] .option1-topbar .notification-button,
html[data-user-appearance='custom'] .option1-topbar .profile-button,
html[data-user-appearance='custom'] .option1-topbar .icon-button,
html[data-user-appearance='custom'] .mobile-brand,
html[data-user-appearance='custom'] .mobile-bottom-nav a {
    color: var(--user-font-color) !important;
}
html[data-user-appearance='custom'] .option1-topbar .search-wrap,
html[data-user-appearance='custom'] input,
html[data-user-appearance='custom'] textarea,
html[data-user-appearance='custom'] select {
    background: color-mix(in srgb, var(--user-background) 82%, white 18%) !important;
    border-color: var(--line) !important;
    color: var(--user-font-color) !important;
}
html[data-user-appearance='custom'] :where([class$='-card'],[class*='-card '],.panel,.profile-hero,.profile-tabs,.profile-sort,.settings-hero,.settings-section-nav,.settings-reset-card,.notifications-toolbar,.notification-row,.category-browser-complaint,.help-topic,.help-search-card,.help-sidebar,.contact-form-card,.contact-info-card,.security-card,.qa-list) {
    background: color-mix(in srgb, var(--user-background) 88%, white 12%) !important;
    border-color: var(--line) !important;
    color: var(--user-font-color) !important;
}
html[data-user-appearance='custom'] :where(main,.sidebar,.topbar,.mobile-site-shell) :where(h1,h2,h3,h4,h5,h6,p,small,label,dt,dd,summary,strong,a) {
    color: var(--user-font-color) !important;
}
html[data-user-appearance='custom'] :where(main,.sidebar,.topbar,.mobile-site-shell) span:not(.category-dot):not(.category-browser-icon):not(.category-pill):not(.notification-badge):not(.featured-badge):not(.rank):not(.star) {
    color: var(--user-font-color) !important;
}
/* Preserve intentional action/button contrast and category identity. */
html[data-user-appearance='custom'] :where(.hero-primary,.new-complaint-button,.header-signup,.primary-submit,.settings-apply-button,.edit-profile-actions button,.account-admin-action-button) {
    color: #fff !important;
}
html[data-user-appearance='custom'] .category-browser-icon,
html[data-user-appearance='custom'] .category-dot,
html[data-user-appearance='custom'] .category-pill {
    color: inherit;
}
html[data-user-appearance='custom'] .mobile-site-shell,
html[data-user-appearance='custom'] .mobile-content {
    background: var(--user-background) !important;
    color: var(--user-font-color) !important;
}


/* CUSTOM FONT CASCADE FIX — v3.11.9 R1
   Keep Option #1 editorial typography as the default. When a signed-in user
   explicitly chooses a custom font, that saved choice must outrank page-specific
   editorial heading shorthands that use !important. The repeated attribute
   selectors intentionally raise cascade specificity without changing markup. */
html[data-user-appearance='custom'][data-user-appearance='custom'][data-user-appearance='custom']
:where(h1,h2,h3,h4,h5,h6) {
    font-family: var(--user-font-family) !important;
}


/* v3.12 public complaint sharing */
.complaint-share-button{border:1px solid #c8d8e8;background:#fff;color:#0b4f91;border-radius:999px;padding:7px 11px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.complaint-share-button:hover{background:#eef7ff}.complaint-meta .complaint-share-button{margin-left:auto;padding:4px 9px;font-size:.86rem}.share-modal-backdrop{position:fixed;inset:0;z-index:5000;background:rgba(3,25,48,.52);display:grid;place-items:center;padding:20px}.share-modal-backdrop[hidden]{display:none}.share-modal{position:relative;width:min(520px,100%);background:#fff;color:#102f4c;border-radius:18px;padding:26px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.share-modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:28px;cursor:pointer}.share-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:#52718c}.share-modal h2{margin:5px 36px 8px 0}.share-modal-complaint-title{font-weight:700}.share-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.share-grid a,.share-grid button{display:flex;justify-content:center;align-items:center;min-height:44px;border:1px solid #ccd9e5;border-radius:10px;background:#fff;color:#123f68;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.share-grid a:hover,.share-grid button:hover{background:#eef7ff}.share-note{font-size:.84rem;color:#60758a;margin:14px 0 0}.social-login-divider{display:flex;align-items:center;gap:10px;margin:22px 0;color:#64788b;font-size:.85rem}.social-login-divider:before,.social-login-divider:after{content:"";height:1px;background:#d7e2ec;flex:1}.social-login-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.social-login-button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px;border:1px solid #ccd9e5;border-radius:9px;text-decoration:none;color:#173a59;background:#fff;font-weight:700}.social-login-button:hover{background:#f4f8fc}.social-login-button.instagram{grid-column:1/-1}.social-login-note{font-size:.8rem;color:#667b8f;margin-top:10px}@media(max-width:520px){.share-grid,.social-login-grid{grid-template-columns:1fr}.social-login-button.instagram{grid-column:auto}}

.hero-share-button{margin-top:8px}.featured-share-button{padding:3px 7px;font-size:.75rem;margin-left:6px}

/* ---------- v3.14: Featured Share alignment ---------- */
.featured-list li{
    grid-template-columns:34px minmax(0,1fr) auto auto;
}
.featured-list .featured-share-button{
    justify-self:end;
    padding:4px 9px;
    min-height:30px;
    line-height:1;
    font-size:.86rem;
    border-radius:999px;
}

/* ---------- v3.14: Contact conversation threads ---------- */
.contact-admin-conversation{margin-top:16px}
.contact-admin-conversation-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}
.contact-admin-conversation-head h3{margin:0;color:#315779;font-size:11px}
.contact-admin-conversation-head span{color:#8799a7;font-size:8px;text-align:right}
.contact-conversation-list{display:grid;gap:9px}
.contact-conversation-entry{max-width:88%;padding:11px 12px;border:1px solid #dbe6ef;border-radius:10px;background:#f7fafc}
.contact-conversation-entry.from-admin{justify-self:end;background:#eef7ff;border-color:#c9def0}
.contact-conversation-entry.from-user{justify-self:start;background:#fffaf3;border-color:#eadfce}
.contact-conversation-entry>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.contact-conversation-entry strong{color:#315779;font-size:9px}
.contact-conversation-entry span{padding:2px 6px;border-radius:999px;background:#fff;color:#6d8294;font-size:7px;font-weight:700}
.contact-conversation-entry time{margin-left:auto;color:#98a7b4;font-size:7px}
.contact-conversation-entry p{margin:6px 0 0;color:#536f86;font-size:9px;line-height:1.55;overflow-wrap:anywhere}
.contact-admin-reply-form,.profile-message-reply-form{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e2eaf0}
.contact-admin-reply-form label,.profile-message-reply-form label{display:grid;gap:5px}
.contact-admin-reply-form label>span,.profile-message-reply-form label>span{color:#58758e;font-size:9px;font-weight:700}
.contact-admin-reply-form textarea,.profile-message-reply-form textarea{width:100%;box-sizing:border-box;padding:10px;border:1px solid #d0dfe9;border-radius:8px;background:#fff;font:inherit;resize:vertical}
.contact-admin-reply-form button,.profile-message-reply-form button{justify-self:start;padding:9px 13px;border:0;border-radius:7px;background:#1477ee;color:#fff;font-weight:800;cursor:pointer}
.contact-profile-flash{margin:0 0 12px;padding:10px 12px;border:1px solid #c9def0;border-radius:7px;background:#eef7ff;color:#315779}
.profile-message-layout{display:grid;grid-template-columns:minmax(230px,320px) minmax(0,1fr);gap:12px}
.profile-message-threads,.profile-message-detail{min-width:0}
.profile-message-threads{display:grid;align-content:start;gap:8px}
.profile-message-thread{display:grid;gap:6px;padding:12px;border:1px solid #d8e3eb;border-radius:5px;background:rgba(252,249,244,.92);text-decoration:none}
.profile-message-thread:hover,.profile-message-thread.active{border-color:#bca999;background:#fffaf3}
.profile-message-thread>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.profile-message-thread strong{color:#3d3832;font-size:12px;overflow-wrap:anywhere}
.profile-message-thread small{color:#8d8379;font-size:9px}
.profile-message-detail{padding:16px;border:1px solid #d8cec1;border-radius:5px;background:rgba(252,249,244,.92)}
.profile-message-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #ded4c8}
.profile-message-detail-head span:first-child{color:#a35e3d;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.profile-message-detail-head h3{margin:4px 0 0;color:#2e2924;font-size:20px}
.profile-conversation-list{margin-top:12px}
@media(max-width:780px){.profile-message-layout{grid-template-columns:1fr}.contact-conversation-entry{max-width:100%}.contact-admin-conversation-head{align-items:flex-start;flex-direction:column}.contact-admin-conversation-head span{text-align:left}}

/* ---------- v3.15: Contact Inbox user-reply synchronization ---------- */
.contact-admin-user-reply-badge{display:inline-flex;align-items:center;width:max-content;padding:3px 7px;border-radius:999px;background:#fff1f5;color:#c2185b;font-size:8px;font-weight:800;border:1px solid #f5bfd1}
.contact-live-updates{margin-top:10px;padding:9px 11px;border:1px solid #b8d9f4;border-radius:8px;background:#eef7ff;color:#315779;font-size:9px;font-weight:700}
.contact-live-updates a{color:#0b6fc8;text-decoration:underline;font-weight:800}
.contact-live-updates[hidden]{display:none!important}
/* v3.16: Appearance-only reset action */
.settings-appearance-actions {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.settings-appearance-reset-button {
    appearance:none;
    border:1px solid #b8c9dc;
    border-radius:10px;
    background:#fff;
    color:#163a61;
    font:inherit;
    font-weight:700;
    padding:10px 16px;
    cursor:pointer;
}
.settings-appearance-reset-button:hover:not(:disabled) {
    background:#eef5fb;
}
.settings-appearance-reset-button:disabled {
    opacity:.55;
    cursor:not-allowed;
}
.option1-settings-page .settings-appearance-reset-button {
    background:#fffaf5 !important;
    border-color:#cdbfb1 !important;
    color:#493f36 !important;
}
.option1-settings-page .settings-appearance-reset-button:hover:not(:disabled) {
    background:#f0e5da !important;
}
html[data-user-theme='dark'] .option1-settings-page .settings-appearance-reset-button {
    background:#302b26 !important;
    border-color:#5a5047 !important;
    color:#f1e8dd !important;
}
@media (max-width:700px) {
    .settings-appearance-actions { width:100%; justify-content:stretch; }
    .settings-appearance-actions button { flex:1 1 160px; }
}

