:root {
    color-scheme: light;
    --ink: #10211e;
    --muted: #5d6f6b;
    --green-950: #052f29;
    --green-900: #06483d;
    --green-800: #075e4e;
    --green-700: #0a765f;
    --green-600: #0f8d70;
    --green-100: #dff3ed;
    --green-50: #f1faf7;
    --gold: #d8af50;
    --gold-soft: #faefd1;
    --surface: #ffffff;
    --canvas: #f6f8f7;
    --line: #dde7e3;
    --danger: #b42318;
    --shadow: 0 24px 70px rgba(5, 47, 41, .12);
    --radius: 24px;
    --shell: min(1160px, calc(100% - 40px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--surface); font-family: "SF Arabic", "Segoe UI", Tahoma, Arial, sans-serif; font-size: 17px; line-height: 1.7; text-rendering: optimizeLegibility; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
.shell { width: var(--shell); margin-inline: auto; }
.skip-link { position: fixed; inset-block-start: 10px; inset-inline-start: 10px; z-index: 999; padding: 10px 16px; border-radius: 10px; color: #fff; background: var(--green-900); transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid #e2b441; outline-offset: 3px; }

.site-header { position: sticky; inset-block-start: 0; z-index: 40; border-bottom: 1px solid rgba(221, 231, 227, .8); background: rgba(255, 255, 255, .9); backdrop-filter: blur(18px); }
.nav-wrap { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 11px; font-size: 24px; font-weight: 850; letter-spacing: -.5px; }
.brand img { box-shadow: 0 9px 22px rgba(7, 94, 78, .18); border-radius: 13px; }
.site-header nav, .site-footer nav { display: flex; align-items: center; gap: 28px; color: var(--muted); font-weight: 700; font-size: 15px; }
.site-header nav a, .site-footer nav a { transition: color .2s ease; }
.site-header nav a:hover, .site-footer nav a:hover { color: var(--green-700); }

.hero { position: relative; overflow: hidden; min-height: 720px; display: grid; place-items: center; background: linear-gradient(135deg, #f7fbf9 0%, #edf7f3 46%, #faf6eb 100%); }
.hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(42px, 7vw, 100px); padding-block: 80px 92px; position: relative; z-index: 2; }
.hero-glow { position: absolute; border-radius: 999px; filter: blur(2px); opacity: .72; }
.hero-glow-one { width: 430px; height: 430px; background: radial-gradient(circle, rgba(29, 157, 126, .18), transparent 70%); inset-inline-start: -110px; inset-block-start: -120px; }
.hero-glow-two { width: 520px; height: 520px; background: radial-gradient(circle, rgba(224, 184, 84, .17), transparent 68%); inset-inline-end: -90px; inset-block-end: -230px; }
.eyebrow, .section-kicker { margin: 0 0 12px; color: var(--green-700); font-size: 13px; font-weight: 900; letter-spacing: 1.4px; text-transform: uppercase; }
.eyebrow { display: flex; align-items: center; gap: 10px; }
.eyebrow span { width: 28px; height: 2px; background: var(--gold); }
.hero h1 { margin: 0; max-width: 700px; font-size: clamp(48px, 6.4vw, 82px); line-height: 1.08; letter-spacing: -3.5px; font-weight: 900; }
.hero h1 em { color: var(--green-700); font-style: normal; }
.hero-lead { max-width: 620px; margin: 25px 0 0; color: var(--muted); font-size: clamp(18px, 2vw, 21px); line-height: 1.9; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-block: 34px 26px; }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid transparent; border-radius: 15px; padding: 12px 24px; cursor: pointer; font-weight: 850; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: #fff; background: linear-gradient(135deg, var(--green-700), var(--green-900)); box-shadow: 0 14px 30px rgba(7, 94, 78, .22); }
.button-secondary { color: var(--green-900); border-color: #bfd9d1; background: rgba(255, 255, 255, .72); }
.trust-row { list-style: none; display: flex; flex-wrap: wrap; gap: 9px 22px; margin: 0; padding: 0; color: var(--muted); font-size: 14px; font-weight: 750; }
.trust-row li::before { content: "✓"; color: var(--green-600); margin-inline-end: 7px; font-weight: 950; }

.phone-stage { min-height: 580px; position: relative; display: grid; place-items: center; }
.orbit { position: absolute; border: 1px solid rgba(10, 118, 95, .18); border-radius: 999px; }
.orbit-one { width: 480px; height: 480px; }
.orbit-two { width: 380px; height: 380px; border-color: rgba(216, 175, 80, .25); }
.phone { width: min(330px, 84vw); min-height: 620px; position: relative; overflow: hidden; border: 9px solid #0a2420; border-radius: 43px; padding: 14px 18px 18px; color: #15302a; background: linear-gradient(#f8fbfa, #eef6f3); box-shadow: 0 45px 90px rgba(5, 47, 41, .28), inset 0 0 0 1px rgba(255,255,255,.4); transform: rotate(-2.2deg); }
.phone::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(120deg, rgba(255,255,255,.22), transparent 30%); }
.phone-top { display: flex; align-items: center; justify-content: space-between; color: #1d332e; font-size: 10px; font-weight: 900; direction: ltr; }
.camera { width: 67px; height: 19px; border-radius: 20px; background: #0a2420; }
.app-greeting { display: flex; justify-content: space-between; align-items: center; margin-block: 24px 16px; }
.app-greeting div { display: grid; gap: 1px; }
.app-greeting small { color: #6b7c78; font-size: 11px; }
.app-greeting strong { font-size: 15px; }
.avatar { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 13px; color: #fff; background: var(--green-700); font-weight: 900; }
.next-prayer { border-radius: 24px; padding: 20px; color: #fff; background: linear-gradient(145deg, #0d7b65, #06483d); box-shadow: 0 18px 32px rgba(6, 72, 61, .25); }
.prayer-meta { display: flex; justify-content: space-between; align-items: center; font-size: 11px; color: #d6eee8; }
.prayer-meta b { color: #fff; font-size: 15px; }
.prayer-time { margin-block: 12px 9px; direction: ltr; text-align: center; font-size: 40px; line-height: 1.2; font-weight: 850; letter-spacing: -1.5px; }
.prayer-time small { font-size: 12px; }
.countdown { width: max-content; margin: auto; border: 1px solid rgba(255,255,255,.2); border-radius: 20px; padding: 5px 11px; color: #e5f5f0; background: rgba(255,255,255,.08); font-size: 10px; }
.app-section-title { display: flex; align-items: end; justify-content: space-between; margin-block: 22px 11px; }
.app-section-title b { font-size: 14px; }.app-section-title span { color: #758580; font-size: 9px; }
.journey-list { display: grid; gap: 9px; }
.journey-list > div { min-height: 68px; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 10px; border: 1px solid #e0eae7; border-radius: 17px; padding: 9px 11px; background: rgba(255,255,255,.86); }
.journey-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: var(--green-600); font-size: 11px; font-weight: 900; }
.journey-icon.outline { color: var(--green-700); background: var(--green-100); }.journey-icon.gold { color: #6d5015; background: var(--gold-soft); }
.journey-list p { display: grid; margin: 0; line-height: 1.35; }.journey-list b { font-size: 11px; }.journey-list small { color: #778681; font-size: 8px; }.journey-list strong { color: var(--green-700); font-size: 10px; }
.app-nav { position: absolute; inset-inline: 17px; inset-block-end: 16px; display: flex; justify-content: space-around; border: 1px solid #e0eae7; border-radius: 18px; padding: 9px 6px; color: #8a9894; background: rgba(255,255,255,.94); }
.app-nav span { display: grid; place-items: center; gap: 1px; font-size: 15px; }.app-nav span:first-child { color: var(--green-700); }.app-nav small { font-size: 7px; }

.principles { padding-block: 105px; color: #fff; background: var(--green-950); }
.principles h2, .features-section h2, .reward-section h2, .final-cta h2, .legal-intro h1 { margin: 0; font-size: clamp(34px, 4.4vw, 55px); line-height: 1.25; letter-spacing: -1.8px; }
.principles .section-kicker, .section-kicker.light { color: #e8c86e; }
.principle-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-block-start: 48px; }
.principle-grid article { border-block-start: 1px solid rgba(255,255,255,.19); padding-block-start: 24px; }
.principle-grid span { color: #e8c86e; font-size: 12px; font-weight: 900; letter-spacing: 2px; }
.principle-grid h3 { margin: 18px 0 8px; font-size: 23px; }.principle-grid p { margin: 0; color: #b9ccc7; }

.features-section { padding-block: 110px; background: var(--canvas); }
.section-heading { display: grid; grid-template-columns: 1.2fr .8fr; align-items: end; gap: 50px; margin-block-end: 44px; }
.section-heading > p { margin: 0; color: var(--muted); }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.feature-card { min-height: 255px; border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; background: #fff; box-shadow: 0 12px 40px rgba(12, 54, 47, .04); transition: transform .22s ease, box-shadow .22s ease, border .22s ease; }
.feature-card:hover { transform: translateY(-5px); border-color: #a9d4c8; box-shadow: var(--shadow); }
.feature-icon { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 18px; color: var(--green-800); background: var(--green-100); font-size: 10px; font-weight: 950; }
.feature-card:nth-child(3n+2) .feature-icon { color: #795a16; background: var(--gold-soft); }
.feature-card h3 { margin: 25px 0 8px; font-size: 22px; }.feature-card p { margin: 0; color: var(--muted); font-size: 15px; }

.reward-section { overflow: hidden; padding-block: 110px; color: #fff; background: linear-gradient(140deg, #0b735f, #043a32); }
.reward-grid { display: grid; grid-template-columns: 1fr .9fr; align-items: center; gap: 90px; }
.reward-section p:not(.section-kicker) { color: #c8e0da; font-size: 18px; }.check-list { list-style: none; padding: 0; margin: 28px 0 0; display: grid; gap: 12px; }.check-list li::before { content: "✓"; display: inline-grid; place-items: center; width: 25px; height: 25px; margin-inline-end: 10px; border-radius: 9px; color: #123e35; background: #e7c875; font-weight: 950; }
.reward-cards { min-height: 400px; position: relative; perspective: 900px; }.reward-card { width: 250px; min-height: 150px; position: absolute; display: flex; flex-direction: column; justify-content: end; border: 1px solid rgba(255,255,255,.24); border-radius: 28px; padding: 24px; color: #173d35; background: linear-gradient(145deg, #fff, #dff3ed); box-shadow: 0 28px 55px rgba(0,0,0,.23); }.reward-card span { font-weight: 900; }.reward-card b { margin-block-start: 4px; color: var(--green-700); font-size: 13px; }.card-one { inset-inline-start: 30px; inset-block-start: 20px; transform: rotate(-7deg); }.card-two { inset-inline-end: 10px; inset-block-start: 115px; color: #533f18; background: linear-gradient(145deg, #fffdf5, #f7e8b9); transform: rotate(7deg); }.card-three { inset-inline-start: 70px; inset-block-end: 4px; color: #30294f; background: linear-gradient(145deg, #fdfcff, #ddd6fe); transform: rotate(-1deg); }

.final-cta { padding-block: 95px; background: #fff; }.final-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 28px; border: 1px solid var(--line); border-radius: 32px; padding: 36px 42px; background: linear-gradient(120deg, #fff, #f0f8f5); box-shadow: var(--shadow); }.final-card h2 { font-size: clamp(27px, 3vw, 39px); }.final-card p { margin: 6px 0 0; color: var(--muted); }.final-card .section-kicker { margin: 0; color: var(--green-700); }
.site-footer { padding-block: 55px 32px; color: #c1d0cc; background: #071e1b; }.footer-grid { display: grid; grid-template-columns: 1.2fr .8fr; align-items: start; gap: 30px; }.footer-brand { color: #fff; }.site-footer p { max-width: 500px; margin: 15px 0 0; font-size: 14px; }.site-footer nav { flex-direction: column; align-items: flex-start; gap: 9px; }.copyright { grid-column: 1 / -1; border-block-start: 1px solid rgba(255,255,255,.1); padding-block-start: 24px; }

.legal-hero { padding-block: 90px 75px; background: linear-gradient(145deg, #edf7f3, #fff9e9); }.legal-intro { max-width: 900px; }.legal-intro p:last-child { max-width: 780px; margin: 20px 0 0; color: var(--muted); font-size: 19px; }.legal-body { padding-block: 80px 110px; }.legal-grid { display: grid; grid-template-columns: 260px 1fr; align-items: start; gap: 70px; }.legal-grid aside { position: sticky; inset-block-start: 105px; border: 1px solid #cfe2dc; border-radius: 20px; padding: 22px; color: var(--green-950); background: var(--green-50); }.legal-grid aside strong { font-size: 18px; }.legal-grid aside ul { margin: 13px 0 0; padding-inline-start: 20px; color: var(--muted); font-size: 14px; }.prose { max-width: 780px; }.prose h2 { margin: 45px 0 10px; font-size: 27px; line-height: 1.35; }.prose h2:first-child { margin-block-start: 0; }.prose p, .prose li { color: #465b56; }.prose a { color: var(--green-700); text-decoration: underline; text-underline-offset: 4px; }.prose strong { color: var(--ink); }.support-section { padding-block: 80px 110px; background: var(--canvas); }.support-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }.support-grid article { border: 1px solid var(--line); border-radius: 24px; padding: 28px; background: #fff; }.support-grid article > span { color: var(--green-600); font-size: 12px; font-weight: 950; letter-spacing: 2px; }.support-grid h2 { margin: 20px 0 8px; font-size: 23px; }.support-grid p { color: var(--muted); font-size: 15px; }.support-grid b { color: var(--green-700); font-size: 13px; }.support-note { margin-block-start: 22px; border-radius: 24px; padding: 30px; color: #fff; background: var(--green-950); }.support-note h2 { margin: 0; }.support-note ul { margin-block-end: 0; color: #c6d7d3; }

/* Admin */
.admin-body { min-height: 100vh; background: #f2f5f4; }.admin-shell { min-height: 100vh; display: grid; grid-template-columns: 260px 1fr; }.admin-sidebar { position: sticky; inset-block-start: 0; height: 100vh; display: flex; flex-direction: column; padding: 24px 18px; color: #d7e5e1; background: #082c27; }.admin-brand { color: #fff; padding-inline: 8px; }.admin-sidebar nav { display: grid; gap: 6px; margin-block: 42px auto; }.admin-sidebar nav a, .admin-sidebar nav > span { min-height: 48px; display: grid; grid-template-columns: 24px 1fr auto; align-items: center; gap: 10px; border-radius: 13px; padding: 9px 12px; font-size: 14px; font-weight: 750; }.admin-sidebar nav a.active { color: #fff; background: rgba(255,255,255,.11); }.admin-sidebar .disabled { color: #78918b; cursor: not-allowed; }.admin-sidebar nav small { color: #d9b95f; font-size: 9px; }.admin-account { display: grid; grid-template-columns: 42px 1fr; align-items: center; gap: 10px; border-block-start: 1px solid rgba(255,255,255,.12); padding: 18px 6px 10px; }.admin-account > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; color: #173a32; background: #e7c875; font-weight: 900; }.admin-account div { display: grid; }.admin-account b { color: #fff; font-size: 13px; }.admin-account small { color: #8ca59f; font-size: 11px; }.logout-button { width: 100%; border: 0; padding: 8px; color: #a8bbb6; background: transparent; cursor: pointer; font-size: 12px; text-align: start; }.logout-button:hover { color: #fff; }.admin-content { min-width: 0; padding: 38px clamp(22px, 4vw, 58px) 70px; }.admin-topbar { display: flex; justify-content: space-between; align-items: start; gap: 20px; margin-block-end: 30px; }.admin-topbar p, .admin-topbar span { margin: 0; color: #71827e; font-size: 13px; }.admin-topbar h1 { margin: 4px 0 2px; font-size: 31px; letter-spacing: -.8px; }.system-pill { display: inline-flex; align-items: center; gap: 8px; border: 1px solid #c9e1da; border-radius: 30px; padding: 8px 13px; color: var(--green-700) !important; background: #ebf8f4; font-weight: 800; }.system-pill i { width: 8px; height: 8px; border-radius: 50%; background: #20a17f; box-shadow: 0 0 0 4px rgba(32,161,127,.13); }.metrics-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }.metric-card { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 20px; padding: 22px; background: #fff; }.metric-card::after { content: ""; position: absolute; width: 80px; height: 80px; border-radius: 50%; inset-inline-end: -25px; inset-block-start: -30px; opacity: .12; background: currentColor; }.metric-card > span, .metric-card small { display: block; color: #6b7c78; font-size: 12px; }.metric-card strong { display: block; margin-block: 8px 1px; color: var(--ink); font-size: 30px; line-height: 1.2; }.tone-emerald { color: #0f8d70; }.tone-blue { color: #3976d3; }.tone-amber { color: #c48721; }.tone-violet { color: #7b62bd; }.admin-grid-two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-block-start: 16px; }.admin-panel { border: 1px solid var(--line); border-radius: 22px; padding: 22px; background: #fff; }.admin-panel > header { display: flex; justify-content: space-between; align-items: start; gap: 12px; border-block-end: 1px solid #edf1ef; padding-block-end: 15px; }.admin-panel header h2 { margin: 1px 0 0; font-size: 20px; }.admin-panel header .section-kicker { margin: 0; font-size: 9px; }.admin-panel header > span { color: #81918d; font-size: 11px; }.empty-state { min-height: 190px; display: grid; place-content: center; text-align: center; }.empty-state b { font-size: 16px; }.empty-state p { margin: 3px 0 0; color: #80908c; font-size: 13px; }.admin-list { display: grid; }.admin-list > div { min-height: 64px; display: grid; grid-template-columns: 37px 1fr auto; align-items: center; gap: 10px; border-block-end: 1px solid #f0f3f2; }.admin-list > div:last-child { border: 0; }.list-avatar { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; color: #8a5d10; background: #f9eac5; font-weight: 900; }.list-avatar.user { color: var(--green-800); background: var(--green-100); }.admin-list p { display: grid; margin: 0; line-height: 1.35; }.admin-list b { font-size: 12px; }.admin-list small { color: #81908d; font-size: 10px; }.admin-list em { border-radius: 20px; padding: 4px 8px; color: #87621a; background: #fff4d6; font-size: 9px; font-style: normal; }.roadmap-panel { margin-block-start: 16px; }.roadmap-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-block-start: 20px; }.roadmap-row > div { display: grid; grid-template-columns: 35px 1fr; align-items: center; gap: 9px; border-radius: 15px; padding: 14px; background: #f4f6f5; }.roadmap-row span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; color: #677b76; background: #e3e9e7; font-size: 12px; font-weight: 900; }.roadmap-row .done span { color: #fff; background: var(--green-600); }.roadmap-row .current { background: #fff8e7; }.roadmap-row .current span { color: #694a0c; background: #eccb78; }.roadmap-row p { display: grid; margin: 0; line-height: 1.35; }.roadmap-row b { font-size: 11px; }.roadmap-row small { color: #7e8c89; font-size: 9px; }

.login-body { min-height: 100vh; background: #f3f7f5; }.login-layout { min-height: 100vh; display: grid; grid-template-columns: .9fr 1.1fr; }.login-message { display: flex; flex-direction: column; justify-content: space-between; padding: clamp(38px, 6vw, 80px); color: #fff; background: radial-gradient(circle at 15% 20%, rgba(231,200,117,.16), transparent 25%), linear-gradient(145deg, #0a5d4e, #052d28); }.light-brand { color: #fff; }.login-message h1 { max-width: 520px; margin: 13px 0; font-size: clamp(42px, 5vw, 68px); line-height: 1.14; letter-spacing: -2.2px; }.login-message p:not(.eyebrow) { max-width: 560px; color: #c1d8d2; }.login-message > small { color: #8eb0a8; }.login-panel { display: grid; place-items: center; padding: 35px; }.login-card { width: min(440px, 100%); border: 1px solid var(--line); border-radius: 28px; padding: clamp(28px, 5vw, 46px); background: #fff; box-shadow: var(--shadow); }.login-card > img { margin-block-end: 25px; }.login-card h2 { margin: 4px 0; font-size: 30px; }.login-card > p:not(.section-kicker) { margin: 0 0 28px; color: var(--muted); }.login-card form { display: grid; gap: 9px; }.login-card label { margin-block-start: 7px; font-size: 13px; font-weight: 850; }.login-card input { width: 100%; min-height: 51px; border: 1px solid #cad8d4; border-radius: 13px; padding: 10px 13px; color: var(--ink); background: #fbfdfc; }.login-card input:focus { border-color: var(--green-600); outline: 3px solid rgba(15,141,112,.13); }.form-error { border-radius: 12px; padding: 10px 12px; color: #8e1c13; background: #fee9e7; font-size: 12px; }.full-button { width: 100%; margin-block-start: 13px; }.back-link { display: block; margin-block-start: 20px; color: var(--green-700); font-size: 12px; text-align: center; }

.error-body { min-height: 100vh; display: grid; place-items: center; padding: 24px; text-align: center; background: linear-gradient(145deg, #edf7f3, #fff9e9); }.error-card { width: min(520px, 100%); border: 1px solid var(--line); border-radius: 28px; padding: clamp(30px, 7vw, 54px); background: #fff; box-shadow: var(--shadow); }.error-card img { margin: 0 auto 22px; }.error-code { margin: 0; color: var(--green-700); font-size: clamp(52px, 12vw, 82px); font-weight: 900; line-height: 1; }.error-card h1 { margin: 14px 0 7px; font-size: 28px; }.error-card > p:not(.error-code) { margin: 0 0 25px; color: var(--muted); }

@media (max-width: 1000px) {
    .hero-grid, .reward-grid { grid-template-columns: 1fr; }.hero-copy { text-align: center; }.eyebrow, .hero-actions, .trust-row { justify-content: center; }.hero-lead { margin-inline: auto; }.phone-stage { min-height: 670px; }.feature-grid { grid-template-columns: repeat(2, 1fr); }.principle-grid { grid-template-columns: 1fr; }.reward-grid { gap: 35px; }.reward-cards { width: min(520px, 100%); margin: auto; }.metrics-grid { grid-template-columns: repeat(2, 1fr); }.admin-grid-two { grid-template-columns: 1fr; }.roadmap-row { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 760px) {
    :root { --shell: min(100% - 28px, 1160px); }.site-header nav { gap: 14px; font-size: 12px; }.site-header nav a:first-child { display: none; }.hero { min-height: auto; }.hero-grid { padding-block: 60px; }.hero h1 { letter-spacing: -2px; }.phone-stage { min-height: 630px; }.orbit-one { width: 360px; height: 360px; }.orbit-two { width: 290px; height: 290px; }.principles, .features-section, .reward-section { padding-block: 75px; }.section-heading { grid-template-columns: 1fr; gap: 18px; }.feature-grid, .support-grid { grid-template-columns: 1fr; }.feature-card { min-height: 215px; }.final-card { grid-template-columns: 1fr; text-align: center; justify-items: center; padding: 30px 22px; }.footer-grid { grid-template-columns: 1fr; }.legal-hero { padding-block: 65px 55px; }.legal-grid { grid-template-columns: 1fr; gap: 35px; }.legal-grid aside { position: static; }.legal-body { padding-block: 55px 80px; }.admin-shell { grid-template-columns: 1fr; }.admin-sidebar { position: static; height: auto; padding: 16px; }.admin-sidebar nav { grid-template-columns: repeat(2, 1fr); margin-block: 20px; }.admin-sidebar nav > * { grid-template-columns: 20px 1fr !important; }.admin-sidebar nav small { display: none; }.admin-account, .admin-sidebar form { display: none; }.admin-content { padding: 24px 14px 50px; }.admin-topbar { flex-direction: column; }.metrics-grid { grid-template-columns: 1fr 1fr; }.roadmap-row { grid-template-columns: 1fr; }.login-layout { grid-template-columns: 1fr; }.login-message { min-height: 320px; padding: 32px 24px; }.login-message > small { display: none; }.login-message h1 { font-size: 39px; }.login-panel { padding: 24px 14px; }
}

@media (max-width: 430px) {
    body { font-size: 16px; }.brand { font-size: 21px; }.hero h1 { font-size: 45px; }.hero-actions { flex-direction: column; }.hero-actions .button { width: 100%; }.phone { transform: none; }.phone-stage { min-height: 610px; }.reward-cards { transform: scale(.85); transform-origin: center; }.metrics-grid { grid-template-columns: 1fr; }.admin-topbar h1 { font-size: 26px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; } *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

@media (prefers-contrast: more) {
    :root { --muted: #334943; --line: #829b94; }.button-secondary, .feature-card, .admin-panel, .metric-card { border-width: 2px; }
}

/* Admin community moderation */
.admin-text-link, .admin-secondary-link, .admin-breadcrumb, .admin-clear-link { color: var(--green-700); font-size: 12px; font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }
.admin-secondary-link { border: 1px solid #bed7d0; border-radius: 12px; padding: 9px 13px; background: #fff; text-decoration: none; }
.admin-list-link { min-height: 64px; display: grid; grid-template-columns: 37px 1fr auto; align-items: center; gap: 10px; border-block-end: 1px solid #f0f3f2; color: inherit; }.admin-list-link:last-child { border: 0; }.admin-list-link:hover { background: #f7fbf9; }.admin-list-link p { display: grid; margin: 0; line-height: 1.35; }.admin-list-link b { font-size: 12px; }.admin-list-link small { color: #81908d; font-size: 10px; }.admin-list-link em { border-radius: 20px; padding: 4px 8px; color: #87621a; background: #fff4d6; font-size: 9px; font-style: normal; }
.report-status-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-block-end: 16px; }.report-status-tabs a { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; border: 1px solid var(--line); border-radius: 13px; padding: 8px 13px; color: #52645f; background: #fff; font-size: 12px; font-weight: 800; }.report-status-tabs a.active { border-color: var(--green-700); color: #fff; background: var(--green-700); }.report-status-tabs span { min-width: 22px; border-radius: 20px; padding: 2px 6px; color: inherit; background: rgba(126,145,140,.15); text-align: center; }
.report-filter-panel { margin-block-end: 16px; }.report-filter-panel > h2 { margin: 0 0 16px; font-size: 17px; }.admin-filter-form { display: grid; grid-template-columns: minmax(220px, 1.5fr) repeat(2, minmax(160px, .8fr)) auto auto; align-items: end; gap: 12px; }.admin-filter-form label, .decision-panel form { display: grid; gap: 7px; }.admin-filter-form label > span, .decision-panel label { color: #40544f; font-size: 11px; font-weight: 850; }.admin-filter-form input, .admin-filter-form select, .decision-panel select, .decision-panel textarea { width: 100%; min-height: 45px; border: 1px solid #c7d6d2; border-radius: 11px; padding: 9px 11px; color: var(--ink); background: #fbfdfc; }.decision-panel textarea { min-height: 115px; resize: vertical; }.admin-filter-form .button { min-height: 45px; padding: 9px 17px; }.admin-clear-link { min-height: 45px; display: grid; place-items: center; }
.report-queue-panel { padding-block-end: 12px; }.report-queue { display: grid; }.report-row { min-height: 86px; display: grid; grid-template-columns: 72px 1fr auto 18px; align-items: center; gap: 14px; border-block-end: 1px solid #edf1ef; padding-block: 12px; color: inherit; }.report-row:last-child { border: 0; }.report-row:hover { background: #f7fbf9; }.report-kind { width: 64px; border-radius: 11px; padding: 8px 5px; color: var(--green-800); background: var(--green-100); font-size: 10px; font-weight: 900; text-align: center; }.report-row-copy { min-width: 0; display: grid; gap: 3px; }.report-row-copy b { font-size: 14px; }.report-row-copy small { overflow: hidden; color: #546963; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.report-row-copy em { color: #8a9894; font-size: 10px; font-style: normal; }.report-status { display: inline-flex; justify-content: center; border-radius: 20px; padding: 6px 10px; font-size: 10px; font-weight: 850; white-space: nowrap; }.status-pending { color: #815b12; background: #fff1ca; }.status-actioned { color: #136f5b; background: #def4ed; }.status-dismissed { color: #596965; background: #e9eeec; }.admin-pagination { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 15px; border-block-start: 1px solid #edf1ef; padding-block: 16px 5px; font-size: 12px; }.admin-pagination a:last-child, .admin-pagination span:last-child { text-align: end; }.admin-pagination a { color: var(--green-700); font-weight: 850; }.admin-pagination span { color: #a2aeaa; }
.admin-flash { margin-block-end: 16px; border-radius: 14px; padding: 13px 16px; font-size: 13px; font-weight: 800; }.admin-flash.success { color: #12634f; background: #dff5ed; }.admin-flash.error { color: #8e1c13; background: #fee9e7; }.moderation-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .65fr); align-items: start; gap: 16px; }.moderation-main, .moderation-side { display: grid; gap: 16px; }.subject-panel > header, .report-details-panel > header { margin-block-end: 18px; }.content-state { border-radius: 20px; padding: 5px 9px; font-size: 10px; font-weight: 850; }.state-published { color: #12634f; background: #dff5ed; }.state-hidden { color: #815b12; background: #fff1ca; }.subject-author { display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 10px; }.subject-author > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; color: var(--green-800); background: var(--green-100); font-weight: 900; }.subject-author p { display: grid; margin: 0; }.subject-author small { color: #879691; font-size: 10px; }.subject-author em { color: #667a74; font-size: 10px; font-style: normal; }.subject-copy { margin-block-start: 20px; color: #283d38; font-size: 16px; line-height: 1.9; white-space: pre-wrap; overflow-wrap: anywhere; }.moderation-media { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-block-start: 18px; }.moderation-media img { width: 100%; max-height: 360px; border-radius: 15px; object-fit: cover; }.parent-content, .report-notes { margin-block-start: 18px; border-radius: 14px; padding: 15px; background: #f4f7f6; }.parent-content b, .report-notes b { font-size: 11px; }.parent-content p, .report-notes p { margin: 5px 0 0; color: #52655f; font-size: 13px; white-space: pre-wrap; }.tombstone-state { min-height: 190px; display: grid; place-content: center; border: 1px dashed #c9d4d1; border-radius: 16px; padding: 24px; text-align: center; }.tombstone-state p { max-width: 500px; margin: 5px auto 0; color: #71827e; font-size: 13px; }.report-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 0; }.report-facts > div { border-radius: 12px; padding: 12px; background: #f7f9f8; }.report-facts dt { color: #7b8b87; font-size: 10px; }.report-facts dd { display: grid; gap: 2px; margin: 4px 0 0; font-size: 12px; font-weight: 800; overflow-wrap: anywhere; }.report-facts small { color: #7c8e89; font-size: 9px; }.decision-panel > h2, .audit-panel > h2 { margin: 3px 0 7px; font-size: 19px; }.decision-panel > p:not(.section-kicker) { margin: 0 0 17px; color: #6c7d78; font-size: 12px; }.decision-panel form { gap: 9px; }.decision-panel .full-button { min-height: 48px; }.decision-complete, .audit-empty { border-radius: 12px; padding: 14px; color: #62736e; background: #f2f5f4; font-size: 12px; }.decision-complete p { margin: 4px 0 0; }.audit-timeline { display: grid; margin-block-start: 18px; }.audit-timeline article { display: grid; grid-template-columns: 13px 1fr; gap: 9px; padding-block-end: 17px; }.audit-timeline article > span { width: 10px; height: 10px; border-radius: 50%; margin-block-start: 4px; background: var(--green-600); box-shadow: 0 0 0 4px var(--green-100); }.audit-timeline p { display: grid; margin: 0; }.audit-timeline b { font-size: 12px; }.audit-timeline small { color: #82918d; font-size: 9px; }.audit-timeline em { margin-block-start: 4px; color: #536761; font-size: 11px; font-style: normal; white-space: pre-wrap; }

@media (max-width: 1120px) {
    .admin-filter-form { grid-template-columns: 1fr 1fr; }.moderation-layout { grid-template-columns: 1fr; }.moderation-side { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
    .admin-sidebar form { display: block; }.report-row { grid-template-columns: 58px minmax(0, 1fr) 16px; }.report-row > .report-status { grid-column: 2; justify-self: start; }.report-kind { width: 54px; }.admin-filter-form, .moderation-side, .report-facts { grid-template-columns: 1fr; }.moderation-media { grid-template-columns: 1fr; }
}

/* Admin support center */
.sr-only { width: 1px; height: 1px; position: absolute; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; }
.admin-filter-bar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr); align-items: center; gap: 14px; margin-block-end: 16px; border: 1px solid var(--line); border-radius: 18px; padding: 12px; background: #fff; }.filter-tabs { display: flex; flex-wrap: wrap; gap: 7px; }.filter-tabs a { min-height: 38px; display: inline-flex; align-items: center; gap: 7px; border-radius: 11px; padding: 7px 11px; color: #566964; background: #f3f6f5; font-size: 11px; font-weight: 850; }.filter-tabs a.active { color: #fff; background: var(--green-700); }.filter-tabs b { min-width: 20px; border-radius: 20px; padding-inline: 5px; background: rgba(255,255,255,.16); text-align: center; }.admin-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }.admin-search input, .admin-reply-form textarea, .admin-status-form select { width: 100%; border: 1px solid #c7d6d2; border-radius: 11px; padding: 9px 11px; color: var(--ink); background: #fbfdfc; font: inherit; }.admin-search input { min-height: 45px; }.admin-search .button { min-height: 45px; padding: 8px 18px; }
.admin-table-panel { padding-block-end: 12px; }.admin-ticket-list { display: grid; }.admin-ticket-list > a { min-height: 78px; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 12px; border-block-end: 1px solid #edf1ef; padding-block: 10px; color: inherit; }.admin-ticket-list > a:last-child { border: 0; }.admin-ticket-list > a:hover { background: #f7fbf9; }.admin-ticket-list p, .admin-row-meta { display: grid; gap: 2px; margin: 0; }.admin-ticket-list p b { font-size: 13px; }.admin-ticket-list p small, .admin-row-meta small { color: #7b8d88; font-size: 10px; }.admin-row-meta { justify-items: end; }.status-badge { display: inline-flex; justify-content: center; border-radius: 20px; padding: 5px 9px; font-size: 10px; font-style: normal; font-weight: 850; white-space: nowrap; }.status-open, .status-waiting_on_support { color: #805a11; background: #fff0c5; }.status-waiting_on_user { color: #145f91; background: #e1f1fc; }.status-resolved { color: #12634f; background: #dff5ed; }.status-closed { color: #596965; background: #e9eeec; }.simple-pagination { display: grid; grid-template-columns: 1fr 1fr; border-block-start: 1px solid #edf1ef; padding-block: 14px 3px; font-size: 12px; }.simple-pagination > :last-child { text-align: end; }.simple-pagination a { color: var(--green-700); font-weight: 850; }.simple-pagination span { color: #9ca9a5; }
.admin-detail-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(290px, .55fr); align-items: start; gap: 16px; }.support-thread { min-width: 0; }.conversation-limit-note { margin-block-start: 14px; border-radius: 11px; padding: 9px 12px; color: #6f561f; background: #fff6dd; font-size: 10px; }.support-messages { display: grid; gap: 11px; margin-block-start: 18px; }.support-messages article { max-width: min(86%, 720px); border: 1px solid #e0e9e6; border-radius: 16px 16px 5px 16px; padding: 14px 16px; background: #f6f9f8; }.support-messages article.staff-message { margin-inline-start: auto; border-color: #cbe3dc; border-radius: 16px 16px 16px 5px; background: #eaf7f3; }.support-messages article > header { display: flex; justify-content: space-between; gap: 14px; }.support-messages article header b { font-size: 11px; }.support-messages article time { color: #81918d; font-size: 9px; }.support-messages article > p { margin: 7px 0 0; color: #304640; font-size: 13px; line-height: 1.85; white-space: pre-wrap; overflow-wrap: anywhere; }.support-attachments { display: flex; flex-wrap: wrap; gap: 7px; margin-block-start: 10px; }.support-attachments a { border: 1px solid #bed7d0; border-radius: 10px; padding: 5px 9px; color: var(--green-700); background: #fff; font-size: 10px; font-weight: 800; }.admin-reply-form { display: grid; gap: 8px; margin-block-start: 20px; border-block-start: 1px solid #edf1ef; padding-block-start: 18px; }.admin-reply-form label, .admin-status-form label { color: #40544f; font-size: 11px; font-weight: 850; }.admin-reply-form textarea { min-height: 135px; resize: vertical; }.admin-reply-form > p { margin: 0; color: #71827e; font-size: 10px; }.admin-reply-form .button { justify-self: start; }.compact-empty { min-height: 120px; margin-block-start: 18px; }.admin-side-panel { position: sticky; inset-block-start: 24px; }.admin-definition-list { display: grid; margin: 16px 0 0; }.admin-definition-list > div { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 10px; border-block-end: 1px solid #edf1ef; padding-block: 10px; }.admin-definition-list dt { color: #7b8b87; font-size: 10px; }.admin-definition-list dd { margin: 0; font-size: 11px; font-weight: 800; overflow-wrap: anywhere; }.admin-status-form { display: grid; gap: 8px; margin-block-start: 18px; }.admin-status-form select { min-height: 45px; }.admin-status-form .button { width: 100%; min-height: 45px; }

@media (max-width: 1120px) {
    .admin-filter-bar, .admin-detail-grid { grid-template-columns: 1fr; }.admin-side-panel { position: static; }
}
@media (max-width: 760px) {
    .admin-search { grid-template-columns: 1fr; }.admin-search .button { width: 100%; }.admin-ticket-list > a { grid-template-columns: 38px minmax(0, 1fr); }.admin-row-meta { grid-column: 2; grid-template-columns: auto 1fr; justify-items: start; align-items: center; gap: 8px; }.support-messages article { max-width: 94%; }.admin-reply-form .button { width: 100%; }
}

/* Religious content CMS */
.admin-header-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.cms-filter-form { grid-template-columns: minmax(220px, 1.5fr) repeat(2, minmax(150px, .75fr)) auto auto; }
.cms-list { display: grid; }.cms-list > a { min-height: 82px; display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; align-items: center; gap: 13px; border-block-end: 1px solid #edf1ef; color: inherit; }.cms-list > a:last-child { border: 0; }.cms-list > a:hover { background: #f7fbf9; }.cms-list p { min-width: 0; display: grid; gap: 3px; margin: 0; }.cms-list p b { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }.cms-list p small { color: #7b8d88; font-size: 10px; }.cms-type { border-radius: 11px; padding: 7px 6px; color: var(--green-800); background: var(--green-100); font-size: 10px; font-weight: 900; text-align: center; }
.status-draft, .status-unverified { color: #596965; background: #e9eeec; }.status-in_review { color: #805a11; background: #fff0c5; }.status-approved { color: #145f91; background: #e1f1fc; }.status-published, .status-verified { color: #12634f; background: #dff5ed; }.status-archived, .status-retired { color: #72443f; background: #f5e8e6; }
.cms-editor { display: grid; gap: 16px; }.cms-form-section > header { margin-block-end: 19px; }.cms-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }.cms-form-stack { display: grid; gap: 14px; }.cms-form-grid label, .cms-form-stack label, .cms-reference-list label, .cms-source-form label { display: grid; gap: 6px; }.cms-form-grid label > span, .cms-form-stack label > span, .cms-reference-list label > span, .cms-source-form label > span { color: #40544f; font-size: 11px; font-weight: 850; }.cms-editor input, .cms-editor select, .cms-editor textarea, .cms-source-form input, .cms-source-form select, .cms-source-form textarea, .decision-panel input { width: 100%; min-height: 45px; border: 1px solid #c7d6d2; border-radius: 11px; padding: 9px 11px; color: var(--ink); background: #fbfdfc; font: inherit; }.cms-editor textarea, .cms-source-form textarea { resize: vertical; }.cms-body-field { min-height: 380px; font-size: 17px !important; line-height: 2; }.cms-help { margin: 16px 0; border-radius: 12px; padding: 11px 13px; color: #66511d; background: #fff7df; font-size: 11px; }.cms-reference-list { display: grid; gap: 11px; }.cms-reference-list fieldset { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(180px, .8fr) minmax(180px, 1fr); gap: 11px; border: 1px solid #e1e9e7; border-radius: 14px; padding: 13px; }.cms-reference-list legend { padding-inline: 6px; color: #71827e; font-size: 10px; font-weight: 850; }.cms-submit-bar { position: sticky; inset-block-end: 12px; z-index: 5; display: flex; align-items: center; justify-content: space-between; gap: 15px; border: 1px solid #c9ded8; border-radius: 17px; padding: 12px 15px; background: rgba(255,255,255,.96); box-shadow: 0 16px 45px rgba(5,47,41,.13); }.cms-submit-bar p { margin: 0; color: #6f807c; font-size: 11px; }
.cms-version-tabs { display: flex; gap: 8px; overflow-x: auto; margin-block-end: 16px; padding-block-end: 4px; }.cms-version-tabs a { min-width: 110px; display: grid; border: 1px solid var(--line); border-radius: 12px; padding: 8px 11px; color: #596b66; background: #fff; font-size: 11px; font-weight: 850; }.cms-version-tabs a.active { border-color: var(--green-700); color: #fff; background: var(--green-700); }.cms-version-tabs small { color: inherit; font-size: 8px; opacity: .8; }.cms-detail-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(300px, .6fr); align-items: start; gap: 16px; }.cms-detail-main, .cms-detail-side { display: grid; gap: 16px; }.cms-preview > header, .cms-references > header, .cms-source-form > header { margin-block-end: 18px; }.cms-summary { border-inline-start: 4px solid var(--gold); padding-inline-start: 14px; color: #526761; font-size: 14px; }.cms-content-body { margin-block-start: 20px; color: #213832; font-size: 17px; line-height: 2.15; white-space: pre-wrap; overflow-wrap: anywhere; }.cms-references article { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 11px; border-block-end: 1px solid #edf1ef; padding-block: 13px; }.cms-references article:last-child { border: 0; }.cms-references article p { display: grid; gap: 2px; margin: 0; }.cms-references article b { font-size: 12px; }.cms-references article small { color: #7b8d88; font-size: 9px; }.cms-references article em { margin-block-start: 5px; color: var(--green-700); font-size: 11px; font-style: normal; font-weight: 850; }.cms-references article p > span { color: #526761; font-size: 10px; }.cms-detail-side .decision-panel, .cms-detail-side .admin-side-panel { position: static; }.cms-schedule-note { display: grid; gap: 2px; margin-block-start: 15px; border-radius: 11px; padding: 11px; color: #145f91; background: #e1f1fc; font-size: 11px; }.cms-facts { position: static !important; }

@media (max-width: 1120px) {
    .cms-filter-form, .cms-detail-grid { grid-template-columns: 1fr; }.cms-reference-list fieldset { grid-template-columns: 1fr 1fr; }.cms-reference-list fieldset label:last-child { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
    .admin-header-actions, .admin-header-actions .button { width: 100%; }.cms-form-grid, .cms-reference-list fieldset { grid-template-columns: 1fr; }.cms-reference-list fieldset label:last-child { grid-column: auto; }.cms-list > a { grid-template-columns: 56px minmax(0, 1fr); }.cms-list > a > .status-badge { grid-column: 2; justify-self: start; }.cms-submit-bar { align-items: stretch; flex-direction: column; }.cms-submit-bar .button { width: 100%; }
}

/* Admin account enforcement */
.wide-search { max-width: 850px; }.user-admin-list, .appeal-admin-list { display: grid; }.user-admin-list > a { min-height: 78px; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto 105px 16px; align-items: center; gap: 12px; border-block-end: 1px solid #edf1ef; padding-block: 11px; }.user-admin-list > a:last-child, .appeal-admin-list > a:last-child { border: 0; }.user-admin-list > a:hover, .appeal-admin-list > a:hover { background: #f7fbf9; }.user-admin-list p, .appeal-admin-list p { display: grid; min-width: 0; gap: 2px; margin: 0; }.user-admin-list p b, .appeal-admin-list p b { font-size: 13px; }.user-admin-list p small, .user-admin-list > a > small, .appeal-admin-list p small, .appeal-admin-list p em { overflow: hidden; color: #7b8d88; font-size: 10px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }.account-status { display: inline-flex; justify-content: center; border-radius: 20px; padding: 6px 10px; font-size: 10px !important; font-weight: 850; white-space: nowrap; }.account-status-active, .sanction-status-lifted, .appeal-status-accepted { color: #12634f !important; background: #dff5ed; }.account-status-suspended, .sanction-status-active, .appeal-status-pending { color: #815b12 !important; background: #fff1ca; }.account-status-banned, .appeal-status-rejected { color: #97251c !important; background: #fee9e7; }.sanction-status-expired { color: #596965 !important; background: #e9eeec; }
.account-admin-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(310px, .55fr); align-items: start; gap: 16px; }.account-admin-main { display: grid; gap: 16px; }.account-admin-side { position: sticky; inset-block-start: 24px; }.profile-definition-list { grid-template-columns: 1fr 1fr; gap: 0 18px; }.account-bio, .appeal-copy, .lift-note { margin-block-start: 16px; border-radius: 13px; padding: 14px; background: #f5f8f7; }.account-bio b, .appeal-copy b, .lift-note b { font-size: 11px; }.account-bio p, .appeal-copy p, .lift-note p { margin: 4px 0 0; color: #4b615b; font-size: 13px; white-space: pre-wrap; overflow-wrap: anywhere; }.sanction-history { display: grid; }.sanction-history article { display: grid; gap: 8px; border-block-end: 1px solid #edf1ef; padding-block: 17px; }.sanction-history article:last-child { border: 0; }.sanction-history article > div:first-child { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }.sanction-history article > div:first-child small { width: 100%; color: #81918d; font-size: 9px; }.sanction-history article > p, .sanction-reason-copy { margin: 0; color: #40564f; font-size: 13px; white-space: pre-wrap; }.sanction-history article > small { color: #7b8c87; font-size: 10px; }.decision-panel input { width: 100%; min-height: 45px; border: 1px solid #c7d6d2; border-radius: 11px; padding: 9px 11px; color: var(--ink); background: #fbfdfc; font: inherit; }.decision-panel form > small { color: #71827e; font-size: 9px; }.button-danger { border-color: #a92c22; color: #fff; background: #b42318; }.button-danger:hover { background: #8f1f17; }
.appeal-admin-list > a { min-height: 86px; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto 16px; align-items: center; gap: 12px; border-block-end: 1px solid #edf1ef; padding-block: 11px; }.appeal-admin-list p em { margin-block-start: 2px; }.appeal-statement-panel, .sanction-context-panel { display: grid; gap: 18px; }.appeal-copy p { font-size: 15px; line-height: 1.95; }

@media (max-width: 1120px) {
    .account-admin-layout { grid-template-columns: 1fr; }.account-admin-side { position: static; }
}
@media (max-width: 760px) {
    .user-admin-list > a { grid-template-columns: 38px minmax(0, 1fr) 16px; }.user-admin-list .account-status, .user-admin-list > a > small { grid-column: 2; justify-self: start; }.appeal-admin-list > a { grid-template-columns: 38px minmax(0, 1fr) 16px; }.appeal-admin-list .account-status { grid-column: 2; justify-self: start; }.profile-definition-list { grid-template-columns: 1fr; }
}

/* Reward store administration */
.store-metrics { margin-block-end: 16px; }.store-category-panel, .store-filter-panel { margin-block-end: 16px; }.store-category-panel > header { margin-block-end: 18px; }.store-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 11px; }.store-category-grid > article { display: grid; gap: 14px; border: 1px solid #dce8e4; border-radius: 16px; padding: 15px; background: #fbfdfc; }.store-category-grid > article.inactive { opacity: .72; background: #f4f6f5; }.store-category-grid article > div:first-child { min-width: 0; display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 9px; }.store-category-mark, .store-item-mark { display: grid; place-items: center; border-radius: 12px; color: var(--green-800); background: var(--green-100); font-weight: 900; }.store-category-mark { width: 38px; height: 38px; }.store-category-grid p { min-width: 0; display: grid; margin: 0; line-height: 1.35; }.store-category-grid p b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.store-category-grid p small { overflow: hidden; color: #82928e; font-size: 9px; text-overflow: ellipsis; }.store-category-grid dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; border-radius: 11px; padding: 9px; background: #f0f5f3; }.store-category-grid dl > div { display: grid; text-align: center; }.store-category-grid dt { color: #7a8c87; font-size: 8px; }.store-category-grid dd { margin: 0; font-size: 11px; font-weight: 900; }.store-category-grid footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; }.store-category-grid footer > div, .store-row-actions { display: flex; align-items: center; gap: 5px; }.store-category-grid footer form, .store-row-actions form { display: inline-flex; }.store-category-grid footer a, .store-category-grid footer button, .store-row-actions a, .store-row-actions button { min-height: 36px; border: 0; border-radius: 9px; padding: 6px 8px; color: var(--green-700); background: #eaf5f2; cursor: pointer; font: inherit; font-size: 9px; font-weight: 850; }.store-category-grid footer button, .store-row-actions button { color: #8c342c; background: #fff0ee; }.catalog-state { display: inline-flex; width: max-content; align-items: center; justify-content: center; border-radius: 20px; padding: 5px 9px; font-size: 9px; font-weight: 900; white-space: nowrap; }.catalog-state.available { color: #12634f; background: #dff5ed; }.catalog-state.disabled, .catalog-state.expired { color: #596965; background: #e9eeec; }.catalog-state.empty { color: #97251c; background: #fee9e7; }.catalog-state.scheduled { color: #145f91; background: #e1f1fc; }
.store-filter-form { grid-template-columns: minmax(200px, 1.35fr) repeat(3, minmax(130px, .65fr)) auto auto; }.store-admin-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(270px, .5fr); align-items: start; gap: 16px; }.store-audit-panel { position: sticky; inset-block-start: 24px; }.store-item-list { display: grid; }.store-item-list > article { min-height: 91px; display: grid; grid-template-columns: 42px minmax(190px, 1fr) minmax(220px, .72fr) auto auto; align-items: center; gap: 12px; border-block-end: 1px solid #edf1ef; padding-block: 11px; }.store-item-list > article:last-child { border: 0; }.store-item-mark { width: 40px; height: 40px; }.store-item-copy { min-width: 0; display: flex; align-items: center; gap: 8px; }.store-item-copy p { min-width: 0; display: grid; margin: 0; line-height: 1.35; }.store-item-copy b, .store-item-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.store-item-copy b { font-size: 13px; }.store-item-copy small { color: #7b8d88; font-size: 9px; }.catalog-type { border-radius: 9px; padding: 4px 7px; color: #65501c; background: #fff3d3; font-size: 8px; font-weight: 850; white-space: nowrap; }.store-item-list dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; }.store-item-list dl > div { display: grid; }.store-item-list dt { color: #82918d; font-size: 8px; }.store-item-list dd { margin: 1px 0 0; font-size: 10px; font-weight: 850; }.store-row-actions { justify-content: end; }
.store-editor-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(290px, .55fr); align-items: start; gap: 16px; }.catalog-editor, .catalog-editor-side { display: grid; gap: 16px; }.catalog-editor-side { position: sticky; inset-block-start: 24px; }.catalog-editor > header, .catalog-editor > .admin-panel > header { margin-block-end: 19px; }.catalog-editor .cms-form-stack label:not(.catalog-checkbox), .catalog-field-grid label:not(.catalog-checkbox) { display: grid; gap: 6px; }.catalog-editor label > span:not(.catalog-state), .catalog-editor label > b { color: #40544f; font-size: 11px; font-weight: 850; }.catalog-editor input:not([type="checkbox"]), .catalog-editor select, .catalog-editor textarea { width: 100%; min-height: 48px; border: 1px solid #c7d6d2; border-radius: 11px; padding: 9px 11px; color: var(--ink); background: #fbfdfc; font: inherit; }.catalog-editor textarea { resize: vertical; }.catalog-editor label > small { color: #788984; font-size: 9px; }.catalog-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }.catalog-field-grid.three-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); }.catalog-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }.catalog-checkbox { min-height: 73px; display: grid; grid-template-columns: 22px minmax(0, 1fr); align-items: center; gap: 9px; border: 1px solid #dce7e4; border-radius: 13px; padding: 11px; background: #f7faf9; cursor: pointer; }.catalog-checkbox input[type="checkbox"] { width: 19px; height: 19px; accent-color: var(--green-700); }.catalog-checkbox > span { display: grid; }.catalog-checkbox b { color: var(--ink); font-size: 11px; }.catalog-checkbox small { color: #788984; font-size: 9px; }.catalog-submit { display: flex; align-items: center; justify-content: space-between; gap: 16px; border: 1px solid #c9ded8; border-radius: 17px; padding: 12px 15px; background: #fff; box-shadow: 0 16px 45px rgba(5,47,41,.08); }.catalog-submit p { margin: 0; color: #6f807c; font-size: 10px; }.catalog-help { margin: 15px 0 0; border-radius: 11px; padding: 10px 12px; color: #66511d; background: #fff7df; font-size: 10px; }.catalog-editor-side .decision-panel form { margin-block-start: 16px; }
.catalog-color-input { direction: ltr; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important; font-weight: 800; text-transform: uppercase; }

@media (max-width: 1280px) {
    .store-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.store-item-list > article { grid-template-columns: 42px minmax(180px, 1fr) minmax(190px, .7fr) auto; }.store-row-actions { grid-column: 2 / -1; justify-content: start; }
}
@media (max-width: 1120px) {
    .store-filter-form, .store-admin-layout, .store-editor-layout { grid-template-columns: 1fr; }.store-audit-panel, .catalog-editor-side { position: static; }.catalog-editor-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .store-metrics, .store-category-grid, .catalog-editor-side, .catalog-field-grid, .catalog-field-grid.three-fields, .catalog-choice-grid { grid-template-columns: 1fr; }.store-item-list > article { grid-template-columns: 40px minmax(0, 1fr); }.store-item-copy { align-items: flex-start; flex-direction: column; }.store-item-list dl, .store-item-list > article > .catalog-state, .store-row-actions { grid-column: 2; }.store-item-list dl { width: 100%; }.catalog-submit { align-items: stretch; flex-direction: column; }.catalog-submit .button { width: 100%; }
}

/* Platform releases, in-app notifications and typed feature flags */
.platform-metrics { margin-block-end: 16px; }.platform-admin-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-block-end: 16px; }.platform-admin-links > a { min-height: 94px; display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: 12px; border: 1px solid var(--line); border-radius: 18px; padding: 16px; background: #fff; }.platform-admin-links > a:hover { border-color: #afcec5; box-shadow: 0 14px 35px rgba(5,47,41,.07); }.platform-admin-links > a > span, .platform-kind { display: grid; place-items: center; border-radius: 13px; color: var(--green-800); background: var(--green-100); font-size: 12px; font-weight: 900; }.platform-admin-links > a > span { width: 42px; height: 42px; }.platform-admin-links p { display: grid; margin: 0; }.platform-admin-links b { font-size: 13px; }.platform-admin-links small { color: #748681; font-size: 9px; }.platform-overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }.platform-compact-list { display: grid; }.platform-compact-list > a { min-height: 72px; display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; align-items: center; gap: 11px; border-block-end: 1px solid #edf1ef; }.platform-compact-list > a:last-child { border: 0; }.platform-compact-list > a:hover { background: #f7fbf9; }.platform-kind { width: 44px; min-height: 40px; padding: 5px; }.platform-compact-list p { min-width: 0; display: grid; margin: 0; }.platform-compact-list b, .platform-compact-list small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.platform-compact-list b { font-size: 12px; }.platform-compact-list small { color: #81918d; font-size: 9px; }.platform-audit-panel { margin-block-start: 16px; }.platform-filter-form { grid-template-columns: repeat(2, minmax(170px, .8fr)) auto auto; justify-content: start; }.platform-resource-list { display: grid; }.platform-resource-list > article { min-height: 88px; display: grid; grid-template-columns: 50px minmax(180px, .8fr) minmax(260px, 1fr) auto auto; align-items: center; gap: 12px; border-block-end: 1px solid #edf1ef; padding-block: 11px; }.platform-resource-list > article:last-child { border: 0; }.platform-resource-list > article > div:nth-child(2) { min-width: 0; display: grid; }.platform-resource-list > article > div:nth-child(2) b, .platform-resource-list > article > div:nth-child(2) small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.platform-resource-list > article > div:nth-child(2) b { font-size: 13px; }.platform-resource-list > article > div:nth-child(2) small { color: #7b8d88; font-size: 9px; }.platform-resource-list dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; }.platform-resource-list dl > div { display: grid; }.platform-resource-list dt { color: #82918d; font-size: 8px; }.platform-resource-list dd { overflow: hidden; margin: 1px 0 0; font-size: 10px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }.platform-edit-link { min-height: 36px; display: grid; place-items: center; border-radius: 9px; padding: 6px 10px; color: var(--green-700); background: #eaf5f2; font-size: 9px; font-weight: 850; }.platform-notice { display: grid; gap: 2px; margin-block-end: 16px; border: 1px solid #ead79f; border-radius: 14px; padding: 13px 15px; color: #65501c; background: #fff9e8; }.platform-notice b { font-size: 11px; }.platform-notice span { font-size: 10px; }.platform-form-section { display: grid; gap: 13px; border-block-start: 1px solid #e7eeec; padding-block-start: 17px; }.platform-form-section h3 { margin: 0; font-size: 14px; }.three-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }.platform-readonly .notification-preview-body { min-height: 180px; border-radius: 14px; padding: 17px; color: #2b413b; background: #f5f8f7; font-size: 16px; line-height: 2; white-space: pre-wrap; overflow-wrap: anywhere; }
.feature-admin-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .3fr); align-items: start; gap: 16px; }.feature-flag-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }.feature-flag-card { display: flex; min-width: 0; flex-direction: column; gap: 13px; }.feature-flag-card > header { align-items: center; }.feature-flag-card > p { min-height: 43px; margin: 0; color: #536761; font-size: 11px; }.feature-flag-card > code { width: max-content; max-width: 100%; overflow: hidden; border-radius: 8px; padding: 4px 7px; color: #48615a; background: #edf3f1; font-size: 9px; text-overflow: ellipsis; }.feature-flag-card form:not(.feature-reset-form) { display: grid; gap: 11px; }.feature-flag-card form > label:not(.catalog-checkbox) { display: grid; gap: 6px; }.feature-flag-card form > label > span { color: #40544f; font-size: 10px; font-weight: 850; }.feature-flag-card select, .feature-flag-card input[type="number"] { width: 100%; min-height: 45px; border: 1px solid #c7d6d2; border-radius: 11px; padding: 8px 10px; color: var(--ink); background: #fbfdfc; font: inherit; }.feature-flag-actions { display: flex; justify-content: end; }.feature-flag-actions .button { min-height: 42px; padding: 8px 18px; }.feature-reset-form { display: flex; justify-content: end; }.feature-reset-form button { border: 0; padding: 4px; color: #806017; background: transparent; cursor: pointer; font: inherit; font-size: 9px; font-weight: 850; }.feature-flag-card > footer { display: flex; justify-content: space-between; gap: 10px; margin-block-start: auto; border-block-start: 1px solid #edf1ef; padding-block-start: 10px; color: #7e8f8a; font-size: 9px; }.platform-feature-audits { position: sticky; inset-block-start: 24px; }.admin-sidebar { overflow-y: auto; }

@media (max-width: 1200px) {
    .platform-resource-list > article { grid-template-columns: 48px minmax(180px, 1fr) auto auto; }.platform-resource-list dl { grid-column: 2 / -1; }.feature-admin-layout { grid-template-columns: 1fr; }.platform-feature-audits { position: static; }
}
@media (max-width: 900px) {
    .platform-admin-links, .platform-overview-grid, .feature-flag-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .platform-filter-form, .three-options { grid-template-columns: 1fr; }.platform-resource-list > article { grid-template-columns: 44px minmax(0, 1fr); }.platform-resource-list dl, .platform-resource-list > article > .catalog-state, .platform-resource-list > article > .status-badge, .platform-edit-link { grid-column: 2; justify-self: start; }.feature-flag-card > footer { align-items: start; flex-direction: column; }
}
