/* Party identity: official gold #c6a34f and charcoal #231f20.
   Keep status/error colors distinct from the navigation and brand palette. */
:root {
    --party-gold: #c6a34f;
    --party-gold-ink: #80621c;
    --party-charcoal: #231f20;
    --party-soft: #f3eddf;
    --forest: var(--party-charcoal);
    --green: var(--party-gold-ink);
    --lime: #e5c779;
    --ink: #302c29;
    --muted: #716c63;
    --line: #e7e1d7;
    --canvas: #f8f7f3;
    --cream: #faf8f2;
}
a:focus-visible, button:focus-visible, summary:focus-visible,
.member-shell a:focus-visible, .member-shell button:focus-visible {
    outline-color: var(--party-gold-ink);
}
input:focus, select:focus, textarea:focus,
.party-dialog input:focus, .party-dialog textarea:focus, .party-dialog select:focus, .party-search input:focus { outline-color: var(--party-gold-ink); }
.party-brand { gap: 12px; }
.party-logo-plate { display: grid; place-items: center; width: 68px; height: 65px; padding: 5px; border-radius: 10px; background: #0d0d0d; flex: 0 0 auto; }
.party-logo-plate img { width: 100%; height: 100%; object-fit: contain; }
.party-brand-copy { display: flex; flex-direction: column; gap: 2px; white-space: nowrap; }
.party-brand-copy strong { color: var(--ink); font-size: 20px; line-height: 1.6; font-weight: 600; }
.party-brand-copy small { color: var(--muted); font-size: 10px; font-weight: 400; }
.party-brand.light .party-brand-copy strong { color: #fff; }
.party-brand.light .party-brand-copy small { color: #e5d5ac; }
.sidebar-brand { padding-inline: 0; }
.sidebar .party-brand { gap: 8px; }
.sidebar .party-logo-plate { width: 53px; height: 52px; }
.sidebar .party-brand-copy strong { font-size: 16px; }
.sidebar .party-brand-copy small { font-size: 9px; }
.button.dark:hover { background: #42382a; box-shadow: 0 6px 20px #231f2020; }
.button.soft, .icon-button:hover { background: var(--party-soft); }
.button.outline { border-color: #ddd5c6; }
.announcement { color: #eee7d7; }
.announcement a { color: #ead294; }
.site-header { height: 110px; border-color: var(--line); }
.desktop-nav a:hover { color: var(--party-gold-ink); }
.brand-rule { width: 28px; height: 2px; background: var(--party-gold); display: inline-block; flex-shrink: 0; }
.party-landing .hero { gap: 65px; padding-block: 58px 62px; min-height: 610px; grid-template-columns: 1fr 1fr; }
.party-landing .hero h1 { font-size: clamp(40px, 4.2vw, 64px); line-height: 1.45; letter-spacing: -1.3px; margin: 20px 0; }
.highlight-word { color: var(--party-gold-ink); }
.highlight-word:after { background: #d8be7e; bottom: -3px; }
.party-landing .hero-copy>p { max-width: 490px; color: #6b655d; font-size: 16px; }
.hero-note, .hero-note>.icon { color: #766749; }
.party-hero-visual { margin: 0; position: relative; padding: 0 0 66px 20px; }
.party-photo-wrap { border-radius: 140px 140px 20px 20px; overflow: hidden; border: 1px solid #c6a34f66; background: #ddd5c8; }
.party-hero-photo { width: 100%; height: 450px; object-fit: cover; object-position: center; }
.party-photo-signature { position: absolute; bottom: 42px; left: 0; right: 44px; border: 1px solid #c6a34f80; border-radius: 13px; background: #151414; color: #f1dcaa; padding: 17px 25px; display: flex; align-items: center; gap: 23px; box-shadow: 0 12px 30px #231f201a; }
.party-photo-signature>img { width: 77px; height: 68px; object-fit: contain; }
.party-photo-signature span, .party-photo-signature small { display: block; }
.party-photo-signature span { font-size: 24px; font-weight: 500; }
.party-photo-signature small { color: #c3b9a4; font-size: 12px; margin-top: 3px; }
.party-hero-visual figcaption { position: absolute; bottom: 5px; right: 45px; color: #766c5b; font-size: 10px; display: flex; align-items: center; gap: 10px; }
.community-strip { border-color: var(--line); }
.community-strip>div, .community-strip p strong { color: #665c46; }
.community-strip .icon { color: var(--party-gold-ink); }
.community-strip p, .muted-heading { color: #81796a; }
.party-landing .features-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.feature-card { border-color: var(--line); }
.feature-card:hover { border-color: #c6a34f; }
.feature-card>p { color: var(--muted); }
.feature-icon, .stat-icon, .workspace-icon { background: #f1e9d6; color: var(--party-gold-ink); }
.feature-link { color: var(--party-gold-ink); }
.party-landing .feature-main { display: flex; grid-row: auto; grid-column: auto; background: #f2ead7; padding: 27px; }
.feature-main .feature-icon { background: #e7d6ac; }
.feature-main h3 { font-size: 23px; }
.portal-preview { display: grid; gap: 9px; margin-top: 24px; }
.portal-preview>div { display: flex; align-items: center; gap: 12px; background: #fffaf0; border: 1px solid #e4d8bd; border-radius: 8px; padding: 10px 12px; font-size: 12px; }
.portal-preview .icon { color: var(--party-gold-ink); }
.portal-preview .icon:last-child { margin-inline-start: auto; }
.possibility-title h2 span, .audience-number, .audience-list>a>.icon { color: var(--party-gold-ink); }
.audience-list>a { border-color: var(--line); }
.how-section { background: #f1ecdf; }
.step-number { color: #80621c; background: #faf7ef; border-color: #cdbc95; }
.steps p, .faq-section>div>p, .faq-list p { color: #6e685e; }
.cta-section { border: 1px solid #c6a34f55; }
.cta-section .eyebrow { color: #dfc887; }
.cta-section p { color: #d2cabe; }
.cta-section h2 { font-size: clamp(26px, 3vw, 38px); }
.site-footer>div, .site-footer>p, .copyright { color: #756c5b; }
.site-footer .copyright { font-size: 11px; }
.workspace-switch, .sidebar-note, .website-preview { background: #f6f2e9; border-color: var(--line); }
.workspace-switch strong { overflow-wrap: anywhere; }
.workspace-switch small, .sidebar-note, .nav-section-label { color: #817667; }
.sidebar-note strong, .sidebar-note>a, .sidebar-note>.icon { color: #80621c; }
.side-nav>a, .settings-link, .profile small { color: #70685b; }
.side-nav>a.active { background: #eee3c9; color: #674c17; }
.side-nav>a:hover { background: #f5f0e4; }
.nav-count, .avatar { background: #efe6cf; color: #755922; }
.admin-shell, .member-shell { background: var(--canvas); color: var(--ink); }
.admin-footer { color: #7c7466; }
.header-breadcrumb, .today-date, .staff-name { color: #766b57; }
.dashboard-welcome p { color: #d5ccbd; }
.welcome-label { color: #e7ce93; }
.welcome-symbol { color: #c6a34f33; }
.bar { background: #ceaf62; }
.key-dot { background: var(--party-gold); }
.key-dot.gray { background: #ece6d7; }
.progress-track { background: #ece6d7; }
.demo-banner, .party-notice, .notice { background: #f4efdf; border-color: #e6d9b5; color: #756039; }
.storage-refresh, .party-link, .party-actions button, .party-actions a { color: #80621c; }
.party-tabs a.active, .filter-tabs button.active, .recognition-tabs button.active { background: var(--party-charcoal); color: #fff; }
.party-tabs a:hover { background: #eee3c9; color: #674c17; }
.party-stats article>svg { color: #80621c; background: #f1e9d6; }
.party-stats article>span, .party-stats small, .party-masthead p { color: #756b58; }
.party-country { background: #f2ead6; color: #766037; }
.party-branch-summary article, .party-kanban>section, .party-consent, .detail-stats>div { background: #f5f1e7; border-color: var(--line); }
.party-task-branch, .party-branch-summary span, .party-resource p, .party-footnote { color: #756b58; }
.party-table th, .party-table tfoot { background: #f7f4ed; color: #756b58; }
.party-table td { border-color: #eee8db; }
.party-dialog { color: var(--ink); box-shadow: 0 24px 80px #231f2033; }
.party-dialog::backdrop, .modal-dialog::backdrop { background: #231f2080; }
.party-search input, .party-toolbar>select, .field input, .field select, .field textarea { color: var(--ink); border-color: #ddd5c7; }
.field { color: #6e6351; }
.party-check input { accent-color: #80621c; }
.login-page { background: radial-gradient(ellipse at 85% 15%, #e9d7a944, transparent 55%), var(--cream); }
.login-card { border-color: var(--line); box-shadow: 0 20px 60px #7960220d; }
.login-intro>p, .login-card>p { color: #746b5b; }
.login-card>a { color: #80621c; }
.login-intro>.brand { margin-bottom: 52px; }
.member-header, .member-footer { border-color: var(--line); }
.member-space-label, .member-header nav>a, .member-header nav>a.active, .member-footer { color: #766444; }
.member-welcome { background: #f0e9d8; border-color: #e2d7bc; }
.member-welcome p, .member-details dt, .member-password-card>p, .member-access-message p { color: #756b58; }
.recognition-page { --recognition-gold: #e5c779; --recognition-ink: #231f20; }
.recognition-hero { background: #231f20; }
.recognition-hero p, .recognition-back, .recognition-emblem small { color: #d8cfbd; }
.recognition-hero .eyebrow { color: #e1c578; }
.recognition-stats article { border-color: var(--line); }
.recognition-stats strong, .recognition-total strong, .recognition-activity-points strong { color: #51432a; }
.recognition-stats span, .recognition-stats small, .recognition-profile>p, .recognition-progress-label { color: #736856; }
.recognition-selected, .recognition-level, .recognition-level-steps>div { background: #f3ecd9; color: #80621c; }
.recognition-profile progress, .recognition-profile progress::-webkit-progress-bar { background: #ece6d7; }
.recognition-profile progress::-webkit-progress-value { background: #b08b35; }
.recognition-profile progress::-moz-progress-bar { background: #b08b35; }
.community-hero p, .community-local-note, .join-section>div>p, .join-success p { color: #756b58; }
.community-hero img { border: 1px solid #c6a34f66; border-radius: 90px 90px 14px 14px; }
.website-preview-body { background: #fffdf7; }
.website-preview-body p, .website-preview-top { color: #776c57; }
@media (max-width: 1200px) {
    .party-landing .hero { gap: 35px; }
    .party-brand-copy strong { font-size: 18px; }
    .desktop-nav { gap: 18px; }
    .party-hero-photo { height: 420px; }
    .sidebar .party-brand-copy strong { font-size: 14px; }
    .sidebar .party-logo-plate { width: 47px; height: 47px; }
}
@media (max-width: 1000px) {
    .party-landing .features-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .party-landing .hero-actions { gap: 16px; }
    .party-photo-signature { right: 15px; padding: 15px; gap: 14px; }
    .party-photo-signature span { font-size: 20px; }
    .community-page .site-header { flex-wrap: wrap; height: auto; min-height: 105px; padding-block: 14px; }
}
@media (max-width: 760px) {
    .site-header { height: 94px; gap: 12px; }
    .party-logo-plate { width: 52px; height: 51px; }
    .party-brand { gap: 9px; }
    .party-brand-copy strong { font-size: 16px; }
    .party-brand-copy small { font-size: 9px; }
    .party-landing .hero { grid-template-columns: 1fr; padding-block: 38px 40px; gap: 32px; }
    .party-landing .hero h1 { font-size: clamp(35px, 7vw, 51px); letter-spacing: -.8px; }
    .party-landing .hero-copy>p { font-size: 15px; }
    .login-intro>.brand { margin-bottom: 25px; }
    .party-hero-visual { width: min(460px, 100%); margin-inline: auto; padding-left: 12px; }
    .party-hero-photo { height: 400px; }
    .party-photo-signature { right: 25px; }
    .party-hero-visual figcaption { right: 25px; }
    .party-landing .feature-main { padding: 22px; }
    .party-landing .cta-section { align-items: center; text-align: center; }
    .sidebar .party-brand-copy strong { font-size: 16px; }
    .announcement { flex-wrap: wrap; column-gap: 16px; row-gap: 2px; }
}
@media (max-width: 480px) {
    .site-header .party-brand-copy { display: none; }
    .party-landing .hero h1 { font-size: 36px; }
    .party-hero-photo { height: 345px; }
    .party-landing .features-grid { grid-template-columns: 1fr; }
    .portal-preview { grid-template-columns: 1fr; }
    .party-photo-signature span { font-size: 19px; }
    .party-photo-signature>img { width: 65px; height: 58px; }
    .community-strip>div { font-size: 12px; }
    .member-header { gap: 13px; }
    .member-space-label { padding-right: 12px; }
    .member-footer { flex-wrap: wrap; }
    .site-footer .copyright { width: 100%; margin: 0; }
}

/* Keep long Arabic text and tables within the responsive workspace. */
.admin-shell,.admin-main,.dashboard-content{min-width:0;max-width:100%}.dashboard-content>.panel,.dashboard-content>section,.dashboard-content .party-table-wrap,.dashboard-content .table-wrap{min-width:0;max-width:100%}.dashboard-content .party-table-wrap,.dashboard-content .table-wrap{overflow-x:auto;overscroll-behavior-inline:contain}.admin-header{gap:18px;flex-wrap:wrap}.admin-header-actions{min-width:0;flex-wrap:wrap}.staff-name{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.administration-nav>a{gap:11px}.administration-nav .nav-section-label{font-size:10px;letter-spacing:.2px;color:#a09279}.administration-nav>a.active{box-shadow:inset -3px 0 #b48d32}.admin-header-search{display:flex;align-items:center;gap:9px;font-size:11px;padding:8px 14px;min-height:37px;background:#faf8f1;border:1px solid #eee6d8;border-radius:22px;color:#998b71}.admin-shell .sidebar{padding-top:21px}.admin-shell .sidebar-brand{padding-bottom:20px;margin-bottom:19px;border-bottom:1px solid var(--line)}.admin-shell .workspace-switch{margin-bottom:10px}.lucide-icon{stroke-width:1.8}.portal-shell .lucide-icon,.admin-shell .lucide-icon{flex-shrink:0}
@media(max-width:760px){.admin-header{gap:11px}.admin-header-search{padding:8px 10px}.admin-header-search>span{display:none}.staff-name{display:none}.dashboard-content .party-toolbar,.dashboard-content .party-panel-title{flex-wrap:wrap;min-width:0}.dashboard-content .party-search{min-width:0;max-width:100%}.dashboard-content .party-dialog,.dashboard-content .panel{max-width:100%;min-width:0}.dashboard-content .party-table{min-width:600px}.dashboard-content .page-heading,.dashboard-content .party-page-heading{overflow-wrap:anywhere}.admin-shell .button{max-width:100%}.dashboard-content .party-toolbar>select{min-width:0;max-width:100%}.admin-footer{gap:12px;flex-wrap:wrap}}

/* Scoped reporting and unified search. */
.platform-report-filters,.platform-search-panel,.platform-search-results{padding:25px;margin-bottom:22px;min-width:0;max-width:100%;border-radius:13px}.platform-report-filter-grid{display:grid;grid-template-columns:1.2fr 1.3fr 1fr 1fr 1fr;gap:15px;min-width:0}.platform-report-filter-grid .field{min-width:0}.platform-report-filter-grid select,.platform-report-filter-grid input{width:100%;min-width:0}.platform-report-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.platform-report-explanation{padding:4px 0 19px;line-height:1.9}.platform-search-panel form{display:flex;gap:12px;align-items:center;min-width:0}.platform-search-panel .party-search{flex:1;min-width:0;width:auto}.platform-search-panel>.party-footnote{padding:17px 0 0;font-size:11px}.platform-search-results ul{list-style:none;padding:0;margin:0;display:grid;gap:0}.platform-search-results li{display:flex;gap:15px;min-width:0;padding:21px 0;border-bottom:1px solid var(--line)}.platform-search-results li>div{min-width:0;flex:1}.platform-search-symbol{width:42px;height:42px;display:grid;place-items:center;background:#f5edd9;color:#98782c;flex-shrink:0;border-radius:11px}.platform-search-results li small{font-size:10px;color:#9b8d74}.platform-search-results li h3{font-size:16px;margin:5px 0 7px;overflow-wrap:anywhere}.platform-search-results li h3 a{display:flex;align-items:center;justify-content:space-between;gap:15px}.platform-search-results li p{font-size:12px;line-height:1.9;color:#93836a;overflow-wrap:anywhere}.platform-search-results .portal-section-heading>span{font-size:11px;color:#9b8b6d}
@media(max-width:1200px){.platform-report-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.platform-report-filters,.platform-search-panel,.platform-search-results{padding:20px 17px}.platform-report-filter-grid{grid-template-columns:1fr 1fr;gap:0 12px}.platform-report-filter-grid>.field:first-child,.platform-report-filter-grid>.field:nth-child(2){grid-column:1/-1}.platform-report-totals{grid-template-columns:1fr}.platform-search-panel form{flex-wrap:wrap}.platform-search-panel .party-search{flex-basis:100%}.platform-search-results li{gap:11px}.platform-search-symbol{width:35px;height:35px}.platform-search-results li h3{font-size:14px}.platform-search-results li p{font-size:11px}}
.platform-report-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.platform-print-heading { display: none; }
@media print {
    @page { size: A4 landscape; margin: 12mm; }
    body:has(.platform-printable) * { visibility: hidden; }
    body:has(.platform-printable) .platform-printable, body:has(.platform-printable) .platform-printable * { visibility: visible; }
    .platform-printable { position: absolute; inset: 0; width: 100%; color: #111; background: white; font-size: 10pt; }
    .platform-printable .platform-print-heading { display: block; margin: 0 0 12pt; }
    .platform-printable .platform-print-heading h1 { font-size: 18pt; margin: 0 0 6pt; }
    .platform-printable .recognition-pagination { display: none; }
    .platform-printable .party-table-wrap { overflow: visible; }
    .platform-printable .party-table { width: 100%; min-width: 0; font-size: 9pt; border-collapse: collapse; }
    .platform-printable .party-table td, .platform-printable .party-table th { white-space: normal; padding: 6pt; border: 1px solid #ccc; color: #111; }
    .platform-printable thead { display: table-header-group; }
    .platform-printable tr { break-inside: avoid; }
    .platform-printable .panel { box-shadow: none; padding: 0; border: 0; }
    .platform-printable .platform-report-totals { margin-bottom: 12pt; }
    .platform-printable svg { display: none; }
}
