/* Deliberately scoped: the MME frontend retains its own presentation. */
.mme-wrap.ff-app{--ff-navy:#101d35;--ff-gold:#f2c66d;--ff-teal:#68d9ca;display:grid;grid-template-columns:230px minmax(0,1fr);max-width:1480px;padding:0;margin:28px auto;background:var(--ff-navy);color:#e8eef8;border:1px solid #ffffff18;border-radius:24px;overflow:hidden;font-family:Inter,ui-sans-serif,system-ui,sans-serif;box-shadow:0 28px 90px #07122230;text-align:left}
.ff-app *, .ff-auth *{box-sizing:border-box}.ff-app a{color:var(--ff-teal);text-decoration:none}.ff-app button,.ff-app input,.ff-app select{font:inherit}.ff-app a:focus-visible,.ff-app button:focus-visible,.ff-app input:focus-visible,.ff-app select:focus-visible{outline:3px solid var(--ff-teal);outline-offset:4px}.ff-app .ff-sidebar{background:#060f20a8;border-right:1px solid #ffffff12;padding:30px 18px;display:flex;flex-direction:column;gap:16px;min-width:0}.ff-app .ff-brand{display:block;color:#fff;padding:0 8px}.ff-identity{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ff-identity strong{font-size:22px;line-height:1.2;letter-spacing:-.7px}.ff-mark{font-size:34px;color:var(--ff-gold,#f2c66d)}.ff-app .ff-tagline{font-size:12px;line-height:1.65;color:#9cabbe;margin:0 8px 22px}.ff-app .ff-sidebar nav{display:grid;gap:6px}.ff-app .ff-nav-link{color:#b5c2d4;font-size:14px;font-weight:650;padding:13px 14px;border-radius:10px;line-height:1.4}.ff-app .ff-nav-link small{display:block;font-size:9px;font-weight:400;margin-top:5px;color:inherit}.ff-app .ff-nav-link:hover{background:#ffffff0b;color:#fff}.ff-app .ff-nav-link.is-active{background:var(--ff-gold);color:#101827;box-shadow:0 7px 28px #f2c66d12}.ff-app .ff-sidebar-bottom{margin-top:auto;padding:50px 8px 0}.ff-sidebar-bottom p{font-size:13px;line-height:1.7;color:#a7b5c9}.ff-sidebar-bottom a{font-size:12px}.ff-app .ff-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.9px;line-height:1.7;color:var(--ff-teal)}.ff-main{min-width:0;padding:0 clamp(18px,3vw,44px) 28px}.ff-app .ff-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:75px;border-bottom:1px solid #ffffff14;font-size:12px;color:#9faec2}.ff-topbar span span{padding:0 12px;color:#5f718c}.ff-app .ff-topbar a{max-width:40%;overflow-wrap:anywhere}.ff-app .ff-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;padding:60px 0 46px;align-items:center;background:radial-gradient(ellipse at 100% 30%,#3fc8b713,transparent 65%)}.ff-app .ff-hero h1{font-size:clamp(34px,3.8vw,58px);font-weight:750;line-height:1.09;letter-spacing:-2.2px;color:#fff;margin:18px 0 24px;max-width:620px}.ff-app .ff-hero p{font-size:15px;line-height:1.85;color:#b1bfd2;max-width:530px;margin:0}.ff-app .ff-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:28px 0 22px}.ff-app .mme-btn.mme-btn-primary,.ff-auth .mme-btn.mme-btn-primary{background:var(--ff-gold,#f2c66d);border:1px solid transparent;color:#101827;box-shadow:none;font-weight:750;border-radius:9px}.ff-app .mme-btn.mme-btn-secondary{background:#ffffff08;border:1px solid #ffffff2b;color:#edf3fc;border-radius:9px}.ff-app .ff-text-link{font-size:13px;font-weight:600}.ff-hero-copy>small{font-size:11px;color:#91a1b8}.ff-hero-art{position:relative;min-height:330px;display:grid;place-items:center;isolation:isolate}.ff-hero-art>img{width:100%;height:350px;object-fit:cover;border-radius:22px}.ff-orbit{position:absolute;width:95%;aspect-ratio:1;border:1px solid #68d9ca32;border-radius:50%;transform:rotate(-25deg);background:radial-gradient(circle,#68d9ca19,transparent 68%)}.ff-orbit:before,.ff-orbit:after{content:'';position:absolute;inset:24px;border-radius:50%;border:1px dashed #f2c66d42}.ff-orbit:after{inset:50px;border-style:solid;border-color:#68d9ca20}.ff-app .ff-story-card{z-index:1;width:85%;max-width:280px;background:linear-gradient(145deg,#293e54,#0a172c);border:1px solid #adcdd936;border-radius:14px;transform:rotate(5deg);padding:32px 26px;box-shadow:12px 24px 45px #02071580}.ff-story-card>span,.ff-story-card>small{font-size:8px;letter-spacing:1.5px;color:#bfcbd9;line-height:1.8;display:block}.ff-story-card b{display:block;font-size:43px;line-height:1.13;font-weight:700;letter-spacing:-2px;margin:24px 0}.ff-story-card em{font-style:normal;color:var(--ff-gold)}.ff-card-rule{height:1px;background:linear-gradient(90deg,var(--ff-teal),transparent);margin:24px 0}.ff-app .ff-section{padding:30px 0}.ff-app h1,.ff-app h2,.ff-app h3{color:#f4f7fc}.ff-app .ff-section h1{font-size:36px;letter-spacing:-1px;line-height:1.2}.ff-app .ff-section h2,.ff-app .ff-feature-grid h2{font-size:25px;line-height:1.25;letter-spacing:-.7px;margin:10px 0 20px}.ff-app .ff-section-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.ff-section-head>a{font-size:12px;white-space:nowrap}.ff-app .ff-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ff-app .ff-steps article{border:1px solid #ffffff16;border-radius:14px;padding:22px;background:#ffffff03}.ff-steps article>span{font-size:12px;color:var(--ff-gold);font-weight:750}.ff-app .ff-steps h3{font-size:16px;margin:16px 0 9px}.ff-app .ff-steps p,.ff-app .ff-feature-grid p,.ff-app .ff-section>p{font-size:13px;line-height:1.8;color:#aebcd0}.ff-app .ff-feature-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;margin:14px 0}.ff-feature-primary{padding:30px;border:1px solid #68d9ca38;border-radius:16px;background:linear-gradient(125deg,#1b414747,#0a192e)}.ff-app .ff-feature-primary li{font-size:12px;color:#c1d2de;margin:8px 0}.ff-app .ff-feature-primary ul{padding-left:18px;margin:20px 0}.ff-feature-grid a{font-size:13px;font-weight:650}.ff-feature-secondary{display:grid;gap:16px}.ff-feature-secondary article{padding:24px;background:#ffffff04;border:1px solid #ffffff16;border-radius:16px}.ff-app .ff-feature-secondary h3{font-size:18px;margin:0 0 8px}.ff-recent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ff-recent a{border:1px solid #ffffff20;border-radius:12px;padding:20px;display:grid;gap:10px}.ff-recent strong{color:#f1f5fa}.ff-recent small{font-size:11px}.ff-app .ff-output-footer{font-size:11px;color:#96a6bd;border-color:#ffffff1c!important;margin-top:32px!important}.ff-output-footer p{font-size:12px}.ff-app .ff-search{padding:24px;background:#ffffff05;border:1px solid #ffffff1b;border-radius:14px;margin:24px 0}.ff-search>label{font-size:12px;display:block;margin-bottom:10px;color:#c4d2e2}.ff-search>div{display:flex;gap:10px}.ff-search input{min-width:0;flex:1;padding:14px;background:#071326;color:#fff;border:1px solid #ffffff38;border-radius:9px}.ff-study-link{display:block;padding:12px 0 0;font-size:12px;font-weight:750}.ff-guide{padding-left:24px;max-width:800px}.ff-guide li{padding:14px 0;line-height:1.8;color:#b6c6d8}.ff-guide strong{color:#fff}.ff-app .mme-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.ff-app .mme-faith-hero,.ff-app .mme-family-hero,.ff-app .mme-skip-hero{background:linear-gradient(120deg,#22495055,#101d35);border-color:#ffffff20}.ff-app .mme-faith-layout{grid-template-columns:minmax(0,1fr) minmax(180px,.45fr)}.ff-app .mme-faith-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-app .mme-faith-hero h2{font-size:30px}.ff-app .mme-faith-hub,.ff-app .mme-family-hub,.ff-app .mme-skip-hub{margin-top:24px}.ff-app .mme-library-toolbar{flex-wrap:wrap}.ff-app .mme-library-toolbar label{font-size:12px}.ff-app .mme-library-toolbar select{max-width:100%}.ff-auth.mme-wrap{background:var(--ff-navy,#101d35);color:#e9eef7;border-radius:22px;padding:30px;max-width:1000px}.ff-auth .mme-brand,.ff-auth .ff-output-brand{margin-bottom:24px}.ff-auth .mme-auth-tabs .active{background:var(--ff-gold,#f2c66d);color:#101827}.ff-mobile-bar{display:none}.ff-skip{position:absolute;left:-10000px;z-index:100}.ff-skip:focus{position:relative;left:0;padding:12px;background:#071326}.ff-app [hidden]{display:none!important}
@media(max-width:1050px){.mme-wrap.ff-app{grid-template-columns:195px minmax(0,1fr)}.ff-app .ff-sidebar{padding:24px 12px}.ff-main{padding:0 22px 24px}.ff-app .ff-hero{grid-template-columns:1fr}.ff-hero-art{display:none}.ff-app .ff-hero h1{max-width:650px}.ff-app .mme-faith-layout{grid-template-columns:1fr}.ff-app .ff-hero{padding-top:40px}.ff-app .ff-steps article{padding:16px}}
@media(max-width:700px){.mme-wrap.ff-app{display:block;border-radius:16px;margin:12px auto}.ff-mobile-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 20px;background:#071326}.ff-mobile-bar>a{font-size:15px;font-weight:700;color:#fff}.ff-menu-toggle{flex-shrink:0;background:#ffffff10;border:1px solid #ffffff35;color:#fff;padding:8px 12px;border-radius:8px}.ff-app .ff-sidebar{display:none;border-right:0;border-bottom:1px solid #ffffff20}.ff-app .ff-sidebar.is-open{display:flex}.ff-sidebar-bottom{display:none}.ff-app .ff-sidebar .ff-tagline{margin-bottom:0}.ff-app .ff-sidebar nav{grid-template-columns:1fr 1fr}.ff-app .ff-nav-link{font-size:12px}.ff-main{padding:0 20px 22px}.ff-app .ff-topbar{font-size:10px;min-height:58px}.ff-topbar span span{padding:0 5px}.ff-app .ff-hero h1{font-size:39px;letter-spacing:-1.7px}.ff-app .ff-hero{padding:36px 0 28px}.ff-app .ff-hero p{font-size:14px}.ff-app .ff-steps,.ff-app .ff-feature-grid,.ff-recent{grid-template-columns:1fr}.ff-app .ff-steps article{display:grid;grid-template-columns:30px 1fr;column-gap:10px;padding:20px}.ff-steps article>span{grid-row:1/3;padding-top:4px}.ff-app .ff-steps h3{margin:0 0 6px}.ff-app .ff-steps p{grid-column:2;margin:0}.ff-app .ff-section-head{display:block}.ff-section-head>a{display:inline-block;margin-bottom:16px}.ff-feature-primary{padding:24px}.ff-app .ff-section{padding:24px 0}.ff-search>div{flex-wrap:wrap}.ff-search input{width:100%;flex-basis:100%}.ff-app .mme-faith-grid{grid-template-columns:1fr}.ff-app .mme-faith-hero h2{font-size:25px}.ff-app .mme-faith-hero{display:block}.ff-app .mme-faith-hero-steps{margin-top:20px}.ff-app .mme-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.ff-app .mme-faith-builder,.ff-app .mme-faith-saved{min-width:0}.ff-auth.mme-wrap{padding:20px}.ff-app .ff-section h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){.ff-app *, .ff-auth *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.ff-sidebar,.ff-mobile-bar,.ff-topbar,.ff-skip{display:none!important}.mme-wrap.ff-app{display:block;background:#fff;color:#111;box-shadow:none;border:0}.ff-main{padding:0}.ff-app h1,.ff-app h2,.ff-app h3{color:#111}.ff-output-brand img{max-width:180px!important;max-height:64px!important}}
.ff-app .ff-subnav{display:grid;gap:2px;margin:-2px 0 8px 17px;border-left:1px solid #ffffff25}.ff-app .ff-subnav a{font-size:11px;padding:9px 14px;color:#adbdcf}.ff-app h1,.ff-app .mme-btn,.ff-auth .mme-btn{text-transform:none}.ff-mobile-bar .ff-identity strong{font-size:15px;letter-spacing:0}.ff-mobile-bar .ff-mark{font-size:20px}.ff-mobile-bar .ff-identity img{max-width:145px!important;max-height:36px!important}
@media(max-width:700px){.ff-app .ff-hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.ff-app .ff-hero-actions .mme-btn{padding:14px 20px;font-size:13px;letter-spacing:0}.ff-app .ff-subnav{grid-column:1/-1}}
/* Generated documents and builder panels intentionally retain a readable paper surface. */
.ff-app :is(.mme-faith-builder,.mme-faith-saved,.mme-faith-result,.mme-family-builder,.mme-family-saved,.mme-family-result,.mme-skip-builder,.mme-skip-saved,.mme-skip-result) :is(h1,h2,h3,h4){color:#17283e;letter-spacing:normal;text-transform:none}
.ff-app :is(.mme-faith-builder,.mme-faith-saved,.mme-faith-result,.mme-family-builder,.mme-family-saved,.mme-family-result,.mme-skip-builder,.mme-skip-saved,.mme-skip-result) .mme-btn-secondary{background:#edf2f7;color:#17283e;border:1px solid #c6d2df}
.ff-app :is(.mme-faith-result,.mme-family-result,.mme-skip-result) .ff-output-footer{color:#4b5d73;border-color:#d5dde7!important}
.ff-app :is(.mme-faith-saved,.mme-family-saved,.mme-skip-saved) a{color:#1f5c69}
.ff-app .mme-faith-result-head h2{font-size:clamp(24px,3vw,36px);line-height:1.2}
@media(max-width:700px){.ff-app .mme-invite-format-grid,.ff-app .mme-faith-actions{display:grid;grid-template-columns:1fr;gap:10px}.ff-app .mme-invite-format,.ff-app .mme-faith-actions .mme-btn{width:100%;min-width:0;padding:12px;line-height:1.5;letter-spacing:0}.ff-app .mme-family-layout,.ff-app .mme-skip-layout{grid-template-columns:1fr}.ff-app .mme-faith-result-head h2{font-size:24px}}
/* 2.17.1: top navigation for the standalone frontend. */
.mme-wrap.ff-app{display:block}
.ff-app .ff-app-header{padding:24px clamp(18px,3vw,44px) 16px;background:#060f20a8;border-bottom:1px solid #ffffff18}
.ff-app .ff-header-brand{display:flex;align-items:center;gap:24px;margin-bottom:20px;min-width:0}
.ff-app .ff-header-brand .ff-brand{color:#fff;text-decoration:none;min-width:0}
.ff-app .ff-header-brand .ff-identity{flex-wrap:nowrap}
.ff-app .ff-header-brand .ff-identity strong{overflow-wrap:anywhere}
.ff-app .ff-header-brand .ff-tagline{margin:0 0 0 auto;color:#9cabbe;font-size:12px;line-height:1.6;text-align:right}
.ff-app .ff-primary-nav{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ff-app .ff-primary-nav .ff-nav-link{display:block;padding:11px 15px;border-radius:9px;color:#b5c2d4;font-size:13px;line-height:1.5;font-weight:650}
.ff-app .ff-primary-nav .ff-nav-link:hover{background:#ffffff0b;color:#fff}
.ff-app .ff-primary-nav .ff-nav-link.is-active{background:var(--ff-gold);color:#101827}
.ff-app .ff-study-nav{display:flex;flex-wrap:wrap;gap:8px 22px;border-top:1px solid #ffffff14;margin-top:14px;padding:14px 15px 0}
.ff-app .ff-study-nav a{font-size:12px;color:var(--ff-teal);line-height:1.6}
.ff-app .ff-header-brand .ff-menu-toggle{display:none}
@media(max-width:700px){
.ff-app .ff-app-header{padding:16px 20px}
.ff-app .ff-header-brand{margin:0;gap:12px;justify-content:space-between}
.ff-app .ff-header-brand .ff-tagline{display:none}
.ff-app .ff-header-brand .ff-identity strong{font-size:17px;letter-spacing:-.3px}
.ff-app .ff-header-brand .ff-mark{font-size:23px}
.ff-app .ff-header-brand .ff-identity img{max-width:145px!important;max-height:40px!important}
.ff-app .ff-header-brand .ff-menu-toggle{display:block}
.ff-app .ff-navigation{display:none;margin-top:18px}
.ff-app .ff-navigation.is-open{display:block}
.ff-app .ff-primary-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.ff-app .ff-primary-nav .ff-nav-link{font-size:12px;padding:11px 12px}
}
@media print{.ff-app .ff-app-header{display:none!important}}
/* Standalone catalogue selection: no provider controls or saved-movie cards. */
.ff-app #mme-faith-title-source,.ff-app .mme-family-search,.ff-app .mme-skip-search{position:relative}
.ff-app .ff-autocomplete-list{position:absolute;top:auto;left:0;right:0;z-index:40;max-height:360px;overflow:auto;background:#fff;color:#17283e;border:1px solid #a9bbce;border-radius:12px;box-shadow:0 12px 35px #07122235;padding:5px}
.ff-app .ff-autocomplete-list [role=option]{display:flex;align-items:center;gap:12px;padding:10px;cursor:pointer;border-radius:8px;text-align:left}
.ff-app .ff-autocomplete-list [role=option]:hover,.ff-app .ff-autocomplete-list [aria-selected=true]{background:#e5f3ef;color:#102c37}
.ff-app .ff-autocomplete-list img{width:38px;height:57px;object-fit:cover;border-radius:4px;flex-shrink:0}
.ff-app .ff-autocomplete-list strong,.ff-app .ff-selected-movie strong{display:block;font-size:14px;line-height:1.4;color:#17283e}
.ff-app .ff-autocomplete-list small,.ff-app .ff-selected-movie small{display:block;font-size:12px;line-height:1.5;margin-top:5px;color:#526478}
.ff-app .ff-search-status{font-size:12px;line-height:1.6;color:#526478;margin:8px 0}
.ff-app .ff-selected-movie{display:flex;align-items:center;gap:12px;background:#f1f6fa;border:1px solid #d4dfe9;border-radius:10px;padding:12px;margin:10px 0}
.ff-app .ff-selected-movie img{width:46px;height:69px;object-fit:cover;border-radius:5px}
.ff-app .ff-saved-tabs,.ff-app .ff-saved-pages{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.ff-app .ff-saved-tabs a{padding:12px 16px;border:1px solid #ffffff28;border-radius:9px;font-size:13px;color:#bed0e0}
.ff-app .ff-saved-tabs [aria-current=page]{background:var(--ff-gold);color:#101827}
.ff-app .ff-saved-pages{justify-content:space-between;font-size:13px}

/* 2.21.0 — Optional phone-inspired desktop layout. */
@media screen and (min-width:761px){body.mme-phone-look .mme-wrap.ff-app{max-width:1100px!important}
body.mme-phone-look .ff-app .ff-main{padding-inline:clamp(24px,4vw,44px)}
body.mme-phone-look .ff-app .ff-hero{grid-template-columns:1fr!important;max-width:920px;margin-inline:auto;padding-block:40px}
body.mme-phone-look .ff-app .ff-hero h1{max-width:18ch;font-size:clamp(40px,4.2vw,58px);line-height:1.1}
body.mme-phone-look .ff-app .ff-hero p{font-size:19px;line-height:1.65;max-width:58ch}
body.mme-phone-look .ff-app .ff-hero-art{display:none}
body.mme-phone-look .ff-app .ff-steps,body.mme-phone-look .ff-app .ff-feature-grid,body.mme-phone-look .ff-app .ff-recent{grid-template-columns:1fr!important;gap:18px}
body.mme-phone-look .ff-app .ff-steps article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:6px 16px;padding:24px}
body.mme-phone-look .ff-app .ff-steps article>span{grid-row:1/3;font-size:26px}
body.mme-phone-look .ff-app .ff-steps h3{margin:0;font-size:22px}
body.mme-phone-look .ff-app .ff-steps p{grid-column:2;margin:0;font-size:16px;line-height:1.6}
body.mme-phone-look .ff-app .ff-feature-primary{padding:28px}
body.mme-phone-look .ff-app .ff-section{padding-block:32px}
body.mme-phone-look .ff-app .ff-section>p{max-width:65ch;font-size:17px;line-height:1.7}
body.mme-phone-look .ff-app .ff-primary-nav{flex-wrap:wrap;gap:10px}
body.mme-phone-look .ff-app .ff-primary-nav .ff-nav-link{font-size:15px;min-height:46px;padding:12px 16px}
body.mme-phone-look .ff-app .ff-study-nav a{font-size:14px;padding-block:6px}
body.mme-phone-look .ff-app .mme-faith-layout,body.mme-phone-look .ff-app .mme-family-layout,body.mme-phone-look .ff-app .mme-skip-layout,body.mme-phone-look .ff-app .mme-faith-grid{grid-template-columns:1fr!important;gap:24px}
body.mme-phone-look .ff-app .ff-search input,body.mme-phone-look .ff-app .mme-faith-builder input[type=text],body.mme-phone-look .ff-app .mme-faith-builder select{font-size:16px;min-height:48px}
body.mme-phone-look .ff-app .ff-saved-tabs a{font-size:15px;min-height:46px}
}
