@font-face{font-family:"IRANYekanWebFn";src:url('/assets/fonts/IRANYekanWebFn.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}:root{--ink:#10201c;--muted:#63736e;--green:#0c5b47;--green2:#0a3f34;--gold:#c5a45f;--cream:#f5f2e8;--paper:#fff;--line:#e5e8e4;--shadow:0 18px 55px rgba(14,52,42,.10);font-family:"IRANYekanWebFn",Tahoma,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#f7f8f5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f8f5}a{text-decoration:none;color:inherit}button,input,select{font:inherit}.site-loading{min-height:100vh;display:grid;place-items:center;color:var(--green)}.container{width:min(1180px,calc(100% - 32px));margin:auto}.site-header{height:78px;display:flex;align-items:center;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(12,91,71,.09);position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.header-in{display:flex;align-items:center;justify-content:space-between;gap:22px}.site-brand{display:flex;align-items:center;gap:11px;font-size:19px;font-weight:900;color:var(--green2)}.brand-star{width:38px;height:38px;border-radius:13px;background:linear-gradient(145deg,var(--gold),#e5cf91);display:grid;place-items:center;color:#183c31;box-shadow:0 8px 22px #c5a45f44}.main-nav{display:flex;gap:22px;align-items:center;font-size:13px;font-weight:700;color:#39514a}.main-nav a:hover{color:var(--green)}.header-actions{display:flex;gap:8px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:10px 16px;cursor:pointer;font-weight:800}.btn-primary{background:var(--green);color:white;box-shadow:0 10px 25px #0c5b4730}.btn-soft{background:#eef4f1;color:var(--green)}.hero{min-height:620px;display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden;background:#0c2a23}.hero:before{content:"";position:absolute;inset:0;background:url('/assets/site-hero.webp') center/cover no-repeat;z-index:-3;transform:scale(1.02)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,29,24,.35),rgba(5,29,24,.85) 65%,rgba(5,29,24,.94));z-index:-2}.hero-glow{position:absolute;width:450px;height:450px;border-radius:50%;background:#c5a45f22;filter:blur(30px);left:-120px;bottom:-180px;z-index:-1}.hero-content{max-width:690px;color:white;padding:70px 0}.eyebrow{display:inline-flex;gap:8px;align-items:center;color:#ead8a8;background:#ffffff12;border:1px solid #ffffff24;border-radius:99px;padding:7px 12px;font-size:12px;margin-bottom:18px}.hero h1{font-size:clamp(38px,6vw,72px);line-height:1.12;margin:0 0 14px;font-weight:950}.hero p{font-size:17px;line-height:2.05;color:#e5eee9;max-width:640px;margin:0 0 28px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.hero .btn-primary{background:var(--gold);color:#1c312a}.hero .btn-soft{background:#ffffff15;color:#fff;border:1px solid #ffffff38}.stats-band{position:relative;margin-top:-46px;z-index:5}.stats-card{display:grid;grid-template-columns:repeat(4,1fr);background:white;border-radius:22px;box-shadow:var(--shadow);border:1px solid #e8ece9;overflow:hidden}.stat{padding:22px 25px;border-left:1px solid #edf0ed}.stat:last-child{border-left:0}.stat small{color:var(--muted)}.stat b{display:block;color:var(--green2);font-size:28px;margin-top:8px}.section{padding:80px 0}.section.alt{background:#eef2ed}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}.section-kicker{color:var(--gold);font-weight:900;font-size:12px}.section h2{font-size:30px;margin:7px 0 0}.section-desc{color:var(--muted);max-width:520px;line-height:1.9}.atlas{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:stretch}.map-card,.atlas-info,.news-card,.martyr-card,.search-panel,.detail-card,.info-section{background:white;border:1px solid #e1e7e3;border-radius:22px;box-shadow:0 10px 35px #173c300b}.map-card{min-height:430px;display:grid;place-items:center;padding:24px;overflow:hidden}.iran-svg{width:100%;height:360px}.iran-svg path{fill:#dfe9e4;stroke:var(--green);stroke-width:1.1;transition:.25s}.iran-svg path:hover{fill:#cbdcd4}.atlas-info{padding:28px}.atlas-info h3{margin-top:0}.legend-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.legend-item{border:1px solid #e7ece8;border-radius:14px;padding:14px}.legend-item b{font-size:22px;color:var(--green)}.legend-item span{display:block;color:var(--muted);margin-top:5px;font-size:12px}.martyr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.martyr-card{overflow:hidden;transition:.25s;position:relative}.martyr-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.martyr-image{height:270px;background:linear-gradient(145deg,#d7dfda,#f5f2e8);position:relative;overflow:hidden}.martyr-image img{width:100%;height:100%;object-fit:cover;display:block}.martyr-image .fallback{height:100%;display:grid;place-items:center;font-size:70px;color:#af9864}.martyr-body{padding:17px}.martyr-body h3{font-size:17px;margin:0 0 8px}.meta{display:flex;gap:6px;flex-wrap:wrap;color:var(--muted);font-size:11px}.chip{background:#f0f4f2;border-radius:99px;padding:5px 8px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.news-card{overflow:hidden}.news-image{height:165px;background:#dfe7e2}.news-image img{width:100%;height:100%;object-fit:cover}.news-content{padding:18px}.news-content h3{font-size:16px;line-height:1.9;margin:0 0 8px}.news-content p{color:var(--muted);font-size:12px;line-height:1.9}.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.quick a{background:var(--green2);color:white;border-radius:18px;padding:24px;min-height:125px;display:flex;flex-direction:column;justify-content:flex-end}.quick a:nth-child(2){background:#765f2b}.quick a:nth-child(3){background:#314a43}.quick b{font-size:18px}.quick span{color:#dce7e2;font-size:12px;margin-top:7px}.site-footer{background:#071d18;color:#d7e2de;padding:56px 0 24px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:30px}.footer-grid h3{color:white}.footer-grid p,.footer-grid a{font-size:13px;line-height:2;color:#b8cac3}.copyright{border-top:1px solid #ffffff14;margin-top:35px;padding-top:18px;color:#829b92;font-size:11px}.page-hero{padding:56px 0;background:linear-gradient(145deg,#0b4e3d,#071f1a);color:white}.page-hero h1{font-size:34px;margin:0 0 10px}.page-hero p{color:#cfe0da;line-height:1.9}.search-panel{padding:18px;margin-top:-28px;position:relative;z-index:5}.search-row{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:9px}.search-row input,.search-row select{min-width:0;border:1px solid #dce3df;background:#fafcfb;border-radius:11px;padding:11px}.result-bar{display:flex;justify-content:space-between;align-items:center;margin:26px 0 15px}.pager{display:flex;justify-content:center;gap:8px;margin-top:28px}.pager button{border:1px solid #dce3df;background:white;border-radius:10px;padding:8px 14px;cursor:pointer}.pager button:disabled{opacity:.45}.breadcrumb{font-size:12px;color:#789087;margin-bottom:18px}.detail-top{display:grid;grid-template-columns:340px 1fr;gap:24px}.portrait{min-height:440px;overflow:hidden;border-radius:22px;background:#e1e8e4;box-shadow:var(--shadow)}.portrait img{width:100%;height:100%;object-fit:cover;display:block}.portrait .fallback{height:440px;display:grid;place-items:center;font-size:100px;color:#aa9769}.detail-card{padding:28px}.detail-card h1{font-size:32px;margin:0 0 8px}.identity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.identity{background:#f5f7f5;border:1px solid #e7ebe8;border-radius:12px;padding:12px}.identity small{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.identity b{font-size:13px}.detail-sections{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.info-section{padding:24px}.info-section.wide{grid-column:1/-1}.info-section h2{font-size:20px;margin:0 0 13px;color:var(--green2)}.prose{line-height:2.25;color:#334b43;white-space:pre-line}.family-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.family-item{padding:11px;background:#f5f7f5;border-radius:11px}.empty{padding:50px;text-align:center;color:var(--muted)}.mobile-menu{display:none}@media(max-width:980px){.main-nav{display:none}.mobile-menu{display:inline-flex}.stats-card{grid-template-columns:repeat(2,1fr)}.atlas,.detail-top{grid-template-columns:1fr}.martyr-grid,.news-grid{grid-template-columns:repeat(2,1fr)}.search-row{grid-template-columns:1fr 1fr}.search-row> :first-child{grid-column:1/-1}.detail-sections{grid-template-columns:1fr}.info-section.wide{grid-column:auto}}@media(max-width:650px){.container{width:min(100% - 22px,1180px)}.site-header{height:68px}.header-actions .btn-soft{display:none}.hero{min-height:570px}.hero-content{padding:55px 0}.hero h1{font-size:42px}.hero p{font-size:14px}.stats-band{margin-top:-30px}.stat{padding:16px}.stat b{font-size:21px}.section{padding:58px 0}.section-head{align-items:flex-start;flex-direction:column}.martyr-grid,.news-grid,.quick{grid-template-columns:1fr}.martyr-image{height:320px}.legend-grid{grid-template-columns:1fr 1fr}.search-row{grid-template-columns:1fr}.search-row> :first-child{grid-column:auto}.detail-card h1{font-size:26px}.identity-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.family-list{grid-template-columns:1fr}}

/* v1.8.0 branding */
html[lang="fa"],body,button,input,select,textarea{font-family:"IRANYekanWebFn",Tahoma,"Segoe UI",Arial,sans-serif}
.site-brand-logo{font-size:0}.public-logo-shell{height:58px;width:190px;background:#082b23;border-radius:14px;padding:4px 8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.public-logo{width:100%;height:100%;object-fit:contain;display:block}
.footer-brand{display:block}.footer-logo{width:min(285px,100%);height:125px;object-fit:contain;object-position:right center;display:block}.copyright{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.webino-credit-public a{color:#d9bc78;font-weight:800}.webino-credit-public a:hover{text-decoration:underline}
@media(max-width:650px){.public-logo-shell{height:48px;width:152px;border-radius:12px}.footer-logo{height:105px}.copyright{justify-content:center;text-align:center}}

/* ===== v2.0 final parity public UI ===== */
.media-story-section{background:linear-gradient(180deg,#fff,#f7faf8)}.public-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.public-media-card{position:relative;overflow:hidden;border-radius:18px;aspect-ratio:1/1;background:#edf3ef}.public-media-card img{width:100%;height:100%;object-fit:cover;transition:.3s transform}.public-media-card:hover img{transform:scale(1.035)}.public-media-card span{position:absolute;right:10px;left:10px;bottom:10px;padding:8px 10px;border-radius:12px;color:#fff;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);font-size:13px}.pro-search{display:flex;flex-direction:column;gap:14px}.search-main{display:grid;grid-template-columns:1fr auto;gap:10px}.search-main input{min-height:50px}.search-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.search-filter-grid select,.search-filter-grid input{width:100%;min-height:44px;border:1px solid #dde6e1;border-radius:12px;background:#fff;padding:0 11px;font:inherit}.search-actions{display:flex;justify-content:flex-end}.martyr-activity-section{grid-column:1/-1}.martyr-activity-timeline{display:flex;flex-direction:column;gap:14px;position:relative}.martyr-activity-timeline:before{content:"";position:absolute;right:7px;top:8px;bottom:8px;width:2px;background:#dfe9e4}.public-activity-card{position:relative;padding-right:34px}.activity-time-mark{position:absolute;right:0;top:10px;width:16px;height:16px;border-radius:50%;background:#0c6a51;border:4px solid #e6f1ed;z-index:1}.public-activity-copy{background:#fff;border:1px solid #e5ece8;border-radius:16px;padding:15px}.public-activity-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.activity-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.activity-media.image img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px}.activity-media.video{width:100%;max-height:260px;border-radius:12px;background:#000}.activity-media.audio{width:100%;grid-column:span 2}.activity-media.file{display:flex;align-items:center;justify-content:center;min-height:80px;padding:10px;border:1px dashed #cfdcd6;border-radius:12px}.network-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.network-toolbar select{min-width:220px;padding:10px;border:1px solid #dfe8e3;border-radius:12px;background:#fff;font:inherit}.network-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.7fr);gap:18px}.network-map{background:#f7faf8;border:1px solid #e0e9e4;border-radius:22px;padding:12px;min-height:500px}.network-map svg{width:100%;height:100%;min-height:460px}.network-boundary{fill:#edf6f2;stroke:#aac8ba;stroke-width:1.5}.network-point circle{fill:#d84940;stroke:#fff;stroke-width:2;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}.network-list{display:flex;flex-direction:column;gap:8px;max-height:520px;overflow:auto}.network-list article{display:flex;flex-direction:column;gap:2px;padding:11px 13px;border:1px solid #e3ebe7;border-radius:13px;background:#fff}.network-list span{font-size:13px;color:#0c6a51}.network-list small{color:#6e7d76}.section-head.compact{margin-bottom:12px}
@media(max-width:900px){.public-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-layout{grid-template-columns:1fr}.network-list{max-height:340px}.activity-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.search-main{grid-template-columns:1fr}.search-filter-grid{grid-template-columns:1fr}.public-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-activity-head{align-items:flex-start;flex-direction:column}.network-toolbar{align-items:stretch;flex-direction:column;gap:8px}.network-toolbar select{min-width:0;width:100%}}

/* ===== v2.1 Front App Redesign ===== */
:root{--app-bg:#f3f7f5;--app-card:#fff;--app-line:#e1e9e5;--app-green:#0c6a51;--app-green-dark:#084c3d;--app-soft:#eaf6f1;--app-muted:#708078;--app-shadow:0 12px 36px rgba(20,66,52,.08)}
html{background:var(--app-bg)}body{background:var(--app-bg);padding:0;margin:0;min-height:100vh;color:#17352c;padding-bottom:0!important}.site-shell{min-height:100vh}
.front-app{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 85% 2%,rgba(16,120,86,.07),transparent 34%),var(--app-bg)}
.app-topbar{position:sticky;top:0;z-index:800;background:rgba(247,250,248,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(210,224,217,.78);padding-top:env(safe-area-inset-top)}
.app-topbar-inner{max-width:1480px;margin:auto;height:76px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.app-brand{display:flex;align-items:center;gap:11px;color:inherit}.app-brand-logo{width:54px;height:54px;border-radius:17px;background:#093b30;display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 18px rgba(9,59,48,.14)}.app-brand-logo img{width:100%;height:100%;object-fit:contain;padding:3px}.app-brand-copy{display:flex;flex-direction:column}.app-brand-copy b{font-size:16px}.app-brand-copy small{font-size:10px;color:var(--app-muted);margin-top:2px}.app-top-actions{display:flex;align-items:center;gap:10px}.app-admin-shortcut{padding:9px 13px;border:1px solid var(--app-line);border-radius:12px;background:#fff;color:var(--app-green);font-size:11px;font-weight:800}.app-user-button{display:flex;align-items:center;gap:10px;padding:6px 7px 6px 12px;border:1px solid var(--app-line);border-radius:16px;background:#fff;color:inherit;box-shadow:0 4px 14px rgba(10,65,48,.05)}.app-user-copy{display:flex;flex-direction:column;text-align:left}.app-user-copy b{font-size:11px}.app-user-copy small{font-size:9px;color:var(--app-muted)}.app-user-avatar{width:40px;height:40px;border-radius:13px;object-fit:cover;background:#e8f1ed;border:2px solid #fff;box-shadow:0 0 0 1px #dfe8e4}.app-user-avatar.fallback{display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#0c6a51,#0a4e3e);font-weight:900}
.front-app-layout{width:min(1480px,100%);margin:0 auto;display:flex;direction:rtl;align-items:stretch;flex:1}.app-rail{width:92px;flex:0 0 92px;padding:24px 10px;position:sticky;top:76px;height:calc(100vh - 76px);display:flex;flex-direction:column;justify-content:space-between}.app-rail-nav{display:flex;flex-direction:column;gap:9px}.app-nav-item{display:flex;align-items:center;justify-content:center;gap:4px;flex-direction:column;min-height:66px;padding:8px;border-radius:18px;color:#718078;font-size:9px;font-weight:800;transition:.18s}.app-nav-item:hover{background:#e9f2ee;color:#174f3f}.app-nav-item.active{background:#0c6a51;color:#fff;box-shadow:0 10px 24px rgba(12,106,81,.18)}.app-nav-icon{font-size:20px;line-height:1}.app-nav-label{white-space:nowrap}.app-rail-footer{display:flex;flex-direction:column;align-items:center;color:#89968f;font-size:8px}.app-rail-footer b{color:#0c6a51;font-size:10px}.front-app-main{min-width:0;flex:1;padding:18px 24px 44px;overflow:hidden}.front-app-main>.section:first-child{padding-top:20px}
.app-bottom-nav{display:none}.app-footer{width:min(1320px,calc(100% - 140px));margin:0 auto 20px 20px;padding:18px 24px;border-top:1px solid var(--app-line);color:#819087;font-size:10px;display:flex;align-items:center;justify-content:center;gap:8px}.app-footer-dot{opacity:.5}.webino-credit-public a{color:#0c6a51;font-weight:900}

/* Public pages now behave like app screens */
.container{width:min(100%,1280px);padding-inline:0}.hero{min-height:420px;border-radius:32px;overflow:hidden;margin:10px 0 20px;box-shadow:var(--app-shadow);background:linear-gradient(135deg,#0a3c31 0%,#0b6a51 65%,#6f6234 130%)}.hero-content{padding:58px 46px;min-height:420px;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:clamp(36px,6vw,68px);letter-spacing:-1px}.hero p{max-width:650px}.hero-actions .btn{border-radius:14px}.stats-band{margin:0}.stats-card{border:1px solid var(--app-line);border-radius:24px;background:#fff;box-shadow:none;overflow:hidden}.stat{border-left:1px solid #edf2ef}.stat:last-child{border-left:0}.section{padding:34px 0}.section.alt{background:transparent}.section-head{margin-bottom:16px}.section-head h2{font-size:22px}.section-kicker,.app-kicker{color:#0c7456;font-weight:900;font-size:10px}.atlas{background:#fff;border:1px solid var(--app-line);border-radius:26px;padding:16px;gap:14px}.map-card,.atlas-info{box-shadow:none;border-radius:20px}.martyr-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.martyr-card{border:1px solid var(--app-line);border-radius:22px;overflow:hidden;box-shadow:none;background:#fff;transition:.2s transform,.2s box-shadow}.martyr-card:hover{transform:translateY(-3px);box-shadow:var(--app-shadow)}.martyr-image{height:260px}.martyr-body{padding:14px}.news-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.news-card,.quick a,.search-panel,.detail-card,.info-section{border:1px solid var(--app-line);box-shadow:none;border-radius:22px;background:#fff}.quick a{color:#18382e;min-height:125px;background:#fff!important}.quick a b{color:#0b6b51}.quick a span{color:#7b8982}.media-story-section{background:transparent}.public-media-card{border-radius:20px;box-shadow:0 6px 20px rgba(9,65,48,.06)}
.page-hero{padding:0;background:transparent;color:inherit;margin:8px 0 20px}.page-hero>.container{background:linear-gradient(145deg,#0b4e3d,#0a6b51);color:#fff;padding:34px 38px;border-radius:28px;box-shadow:var(--app-shadow)}.page-hero h1{font-size:30px}.search-panel{margin-top:0;position:sticky;top:94px;z-index:60;padding:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}.result-bar{margin:18px 0 12px}.pager{padding-bottom:10px}.detail-top{grid-template-columns:320px 1fr;gap:16px}.portrait{border-radius:26px;box-shadow:none;border:1px solid var(--app-line);background:#fff}.detail-card{padding:26px}.detail-sections{gap:14px}.breadcrumb{padding:4px 2px}.network-map,.network-list article{background:#fff}.network-layout{gap:14px}

/* Account app screen */
.front-account{width:min(100%,1280px);margin:0 auto;display:flex;flex-direction:column;gap:16px}.account-profile-card{display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:18px;background:linear-gradient(135deg,#fff,#f6fbf8);border:1px solid var(--app-line);border-radius:28px;padding:20px 22px;box-shadow:var(--app-shadow)}.account-profile-avatar{width:88px;height:88px;border-radius:24px;object-fit:cover;background:#e6f1ec;border:4px solid #fff;box-shadow:0 0 0 1px var(--app-line)}.account-profile-avatar.fallback{display:grid;place-items:center;background:linear-gradient(145deg,#0c6a51,#0a4d3e);color:#fff;font-size:30px;font-weight:900}.account-profile-copy h1{margin:2px 0 5px;font-size:24px}.account-profile-copy p{margin:0;color:var(--app-muted);font-size:11px}.account-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.account-tag{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eaf6f1;color:#0b6b51;font-size:9px}.account-tag.warn{background:#fff3d9;color:#8a5c00}.account-profile-actions{display:flex;gap:7px;align-items:center}.app-secondary-btn,.app-ghost-btn,.app-primary-btn{font:inherit;border-radius:13px;padding:10px 14px;cursor:pointer}.app-secondary-btn{border:1px solid var(--app-line);background:#fff;color:#0c6a51}.app-ghost-btn{border:0;background:#eef3f1;color:#52665f}.app-primary-btn{border:0;background:#0c6a51;color:#fff;font-weight:900;min-height:46px}.front-account-portal{min-width:0}.front-account-portal .portal-welcome{display:none!important}.front-account-portal .my-portal{padding:0}.front-account-portal .process-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.front-account-portal .process-card{border-radius:22px;border-color:var(--app-line)}
.account-login-screen{min-height:calc(100vh - 190px);display:grid;place-items:center;padding:30px 0}.account-login-card{width:min(460px,100%);background:#fff;border:1px solid var(--app-line);border-radius:30px;padding:30px;box-shadow:var(--app-shadow)}.account-login-brand{height:90px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.account-login-brand img{max-width:230px;max-height:90px;object-fit:contain}.account-login-card h1{font-size:25px;margin:6px 0}.account-login-card p{color:var(--app-muted);line-height:1.9;margin:0 0 18px}.account-login-card form{display:flex;flex-direction:column;gap:12px}.app-field{display:flex;flex-direction:column;gap:6px}.app-field span{font-size:10px;color:#53665e;font-weight:800}.app-field input{font:inherit;min-height:48px;border:1px solid #d9e4df;border-radius:13px;padding:0 12px;background:#fbfdfc}.account-error{background:#fff0ed;color:#aa3a27;border:1px solid #ffd3ca;border-radius:12px;padding:10px;margin-bottom:12px;font-size:11px}.app-launch-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#5e7169}.app-launch-screen img{width:210px;max-height:100px;object-fit:contain}.app-launch-screen span{font-size:11px}

@media(max-width:1100px){.front-app-main{padding-inline:16px}.martyr-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.front-account-portal .process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-brand-copy{display:none}.app-footer{width:calc(100% - 120px)}}
@media(max-width:760px){body{padding-bottom:86px!important}.app-topbar-inner{height:66px;padding:0 12px}.app-brand-logo{width:45px;height:45px;border-radius:14px}.app-admin-shortcut{display:none}.app-user-copy{display:none}.app-user-button{padding:4px;border-radius:14px}.app-user-avatar{width:40px;height:40px}.app-rail{display:none}.front-app-main{padding:10px 11px 28px}.front-app-layout{display:block}.app-bottom-nav{position:fixed;z-index:1000;bottom:calc(8px + env(safe-area-inset-bottom));right:10px;left:10px;height:68px;padding:5px 8px;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.94);border:1px solid rgba(210,224,217,.9);border-radius:22px;box-shadow:0 12px 34px rgba(17,63,49,.16);backdrop-filter:blur(16px)}.app-bottom-nav .app-nav-item{min-height:58px;border-radius:16px;font-size:8px;gap:2px}.app-bottom-nav .app-nav-icon{font-size:18px}.app-footer{width:auto;margin:12px 16px 94px;padding:14px 8px}.hero{margin:4px 0 14px;border-radius:26px;min-height:430px}.hero-content{padding:42px 22px;min-height:430px}.hero h1{font-size:44px}.stats-card{grid-template-columns:repeat(2,1fr);border-radius:20px}.stat{padding:14px}.section{padding:24px 0}.section-head h2{font-size:19px}.martyr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.martyr-image{height:220px}.martyr-body h3{font-size:14px}.news-grid,.quick{grid-template-columns:1fr}.page-hero>.container{border-radius:24px;padding:25px 22px}.search-panel{top:76px;border-radius:20px}.detail-top{grid-template-columns:1fr}.portrait{max-height:520px}.identity-grid{grid-template-columns:repeat(2,1fr)}.account-profile-card{grid-template-columns:68px 1fr;padding:15px;border-radius:24px}.account-profile-avatar{width:68px;height:68px;border-radius:20px}.account-profile-actions{grid-column:1/3;justify-content:stretch}.account-profile-actions>*{flex:1;text-align:center}.front-account-portal .process-grid{grid-template-columns:1fr 1fr}.account-login-card{padding:22px;border-radius:25px}}
@media(max-width:480px){.martyr-grid{grid-template-columns:1fr 1fr}.martyr-image{height:190px}.front-account-portal .process-grid{grid-template-columns:1fr}.public-media-grid{grid-template-columns:1fr 1fr}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-actions .btn{justify-content:center}.account-login-screen{padding:14px 0}.account-profile-copy h1{font-size:20px}}


/* ===== v2.1.1 polished application redesign ===== */
:root{--app-bg:#f4f7f8;--app-card:#fff;--app-text:#111815;--app-muted:#8b9490;--app-green:#1ba665;--app-green-dark:#06452e;--app-line:#e6ebe8;--app-shadow:0 10px 28px rgba(21,42,34,.06)}
html,body{background:var(--app-bg);color:var(--app-text)}body{padding-bottom:0}.front-app{min-height:100vh;background:var(--app-bg)}.front-app-main{width:100%;max-width:1280px;margin:0 auto;padding:18px 24px 10px}
.app-topbar{position:sticky;top:0;z-index:500;background:rgba(247,250,250,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(31,78,60,.06);padding:14px 24px 12px}
.app-topbar-inner{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;direction:rtl}
.app-brand{justify-self:center;display:flex;align-items:center}.app-brand img{display:block;width:154px;height:66px;object-fit:contain}
.app-user-button{justify-self:start;display:flex;align-items:center;gap:11px;min-width:0;padding:5px 7px 5px 12px;border-radius:18px;transition:.2s}.app-user-button:hover{background:#fff;box-shadow:var(--app-shadow)}
.app-user-avatar{width:52px;height:52px;object-fit:cover;border-radius:50%;border:3px solid #dff4e9;background:#e9f6ef;display:grid;place-items:center;color:var(--app-green-dark);font-weight:900}
.app-user-copy{display:flex;flex-direction:column;min-width:0}.app-user-copy b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-user-copy small{color:var(--app-green);font-size:11px;margin-top:3px}
.app-header-tools{justify-self:end;display:flex;gap:8px;align-items:center}.app-tool-btn{position:relative;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:#18211d;background:transparent}.app-tool-btn:hover{background:#fff;box-shadow:var(--app-shadow)}.app-tool-btn.admin{color:var(--app-green-dark);background:#eaf7f0}
.app-svg-icon{width:24px;height:24px;display:block}.tool-badge{position:absolute;top:4px;right:3px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:#f04455;color:#fff;border:2px solid #f7fafa;font-size:8px;display:grid;place-items:center;font-style:normal}
.app-global-search{width:min(1180px,100%);margin:12px auto 0;height:62px;background:#fff;border:1px solid #e7ece9;border-radius:19px;display:flex;align-items:center;gap:10px;padding:0 18px;box-shadow:0 7px 20px rgba(20,42,34,.05)}
.app-global-search input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:13px;color:#26332e;text-align:right}.app-global-search input::placeholder{color:#9ca5a1}.app-global-search button{width:42px;height:42px;border:0;background:transparent;color:#101713;display:grid;place-items:center;cursor:pointer}
.app-desktop-nav{width:min(760px,calc(100% - 48px));height:68px;margin:18px auto 2px;background:#fff;border:1px solid var(--app-line);border-radius:22px;display:grid;grid-template-columns:1fr 1fr 1.25fr 1fr 1fr;align-items:center;box-shadow:var(--app-shadow);padding:6px 12px}
.app-desktop-nav .app-nav-item{height:52px;display:flex;align-items:center;justify-content:center;gap:7px;color:#7c8883;font-size:12px;border-radius:15px}.app-desktop-nav .app-nav-item:hover,.app-desktop-nav .app-nav-item.active{background:#eef8f2;color:var(--app-green);font-weight:800}
.desktop-create{height:60px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--app-green-dark);font-size:12px;font-weight:800}.desktop-create-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#23b96f,#159254);color:#fff;box-shadow:0 8px 18px rgba(27,166,101,.26)}
.app-bottom-nav{display:none}.app-footer{width:min(1180px,calc(100% - 48px));margin:18px auto 26px;padding:18px;text-align:center;color:#8a9590;font-size:10px;border-top:1px solid #e8ecea}.app-footer a{color:var(--app-green);font-weight:800}

/* Home as an app dashboard */
.hero{width:min(1180px,100%);min-height:330px;margin:0 auto 16px;border-radius:28px;overflow:hidden;box-shadow:none;background:#073e2b}.hero:after{background:linear-gradient(90deg,rgba(5,45,29,.16),rgba(4,63,40,.82) 72%,rgba(4,58,37,.94))}.hero-content{padding:48px 44px;max-width:680px;margin:0}.hero h1{font-size:44px}.hero p{font-size:14px;line-height:2;max-width:580px}.hero-actions .btn{border-radius:15px}
.stats-band{margin:0}.stats-card{border:1px solid var(--app-line);border-radius:22px;box-shadow:none;background:#fff}.stat{padding:18px}.stat b{font-size:24px}
.home-main-stats{margin:16px 0 4px}.home-main-stats .stats-card{grid-template-columns:repeat(3,1fr);text-align:center}.home-main-stats .stat:last-child{border-left:0}
.section{padding:34px 0}.section.alt{background:transparent}.section-head{margin-bottom:18px;align-items:center}.section h2{font-size:23px}.section-desc{font-size:12px}
.map-card,.atlas-info,.news-card,.martyr-card,.search-panel,.detail-card,.info-section{box-shadow:none;border-color:var(--app-line);border-radius:20px}
.martyr-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.martyr-image{height:220px}.martyr-body{padding:14px}.martyr-card:hover{transform:translateY(-2px);box-shadow:var(--app-shadow)}.news-grid{gap:12px}.news-image{height:145px}.quick{gap:10px}.quick a{min-height:105px;border-radius:20px;padding:18px}.media-story-section{background:transparent}.public-media-card{border-radius:18px}

/* Search / detail */
.page-hero{margin:4px 0 12px}.page-hero>.container{background:#fff;color:var(--app-text);border:1px solid var(--app-line);border-radius:22px;padding:22px 24px;box-shadow:none}.page-hero h1{font-size:25px;margin:0}.page-hero p{color:#7e8a85;margin-bottom:0;font-size:12px}
.search-panel{position:relative;top:auto;margin:0;padding:14px}.search-main input{border-radius:15px;background:#f8faf9}.search-filter-grid select,.search-filter-grid input{border-radius:13px;background:#f8faf9}.result-bar{margin:16px 2px 10px}.pager button{border-radius:12px}
.detail-top{grid-template-columns:280px 1fr;gap:14px}.portrait{min-height:350px;border-radius:22px}.portrait img{min-height:350px}.detail-card{padding:22px}.detail-card h1{font-size:28px}.identity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.identity{border-radius:13px;background:#f7f9f8}.detail-sections{gap:12px}.info-section{padding:20px}.info-section h2{font-size:18px}.public-activity-copy{box-shadow:none;border-color:var(--app-line);border-radius:17px}

/* Shared application screen */
.app-screen{width:min(1180px,100%);margin:4px auto 30px}.screen-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:20px 0 14px}.screen-title-row small{display:block;color:var(--app-green);font-size:11px}.screen-title-row h1{margin:4px 0 0;font-size:26px}.screen-title-row p{margin:5px 0 0;color:#8b9691;font-size:11px}.screen-count{background:#eaf7f0;color:#128452;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800}
.role-chip-row{display:flex;gap:7px;overflow:auto;padding:3px 1px 12px;scrollbar-width:none}.role-chip-row::-webkit-scrollbar{display:none}.role-chip-row button{flex:0 0 auto;border:1px solid var(--app-line);background:#fff;color:#74817b;border-radius:999px;padding:8px 13px;font:inherit;font-size:11px;cursor:pointer}.role-chip-row button.active{background:#e9f8f0;color:#0e8b56;border-color:#bde5cf;font-weight:800}
.network-app-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.72fr);gap:12px}.network-map-card,.network-people-card{background:#fff;border:1px solid var(--app-line);border-radius:22px;padding:14px}.map-card-head{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 12px}.map-card-head b{font-size:14px}.map-card-head small{font-size:9px;color:#909a95}.network-app-map{width:100%;height:480px;background:#f8fbf9;border-radius:17px}.network-boundary{fill:#edf7f1;stroke:#91c8aa;stroke-width:1.3}.network-point circle{fill:#ef4e64;stroke:#fff;stroke-width:2.3;filter:drop-shadow(0 3px 4px rgba(0,0,0,.18))}
.network-people-list{max-height:480px;overflow:auto;display:flex;flex-direction:column}.network-person-row{display:grid;grid-template-columns:42px 1fr;gap:10px;padding:11px 4px;border-bottom:1px solid #eef1ef}.network-person-avatar{width:42px;height:42px;border-radius:13px;background:#eaf7f0;color:#128452;display:grid;place-items:center;font-weight:900}.network-person-row>div{display:flex;flex-direction:column}.network-person-row b{font-size:12px}.network-person-row span{font-size:10px;color:#168b58}.network-person-row small{font-size:9px;color:#929b97;margin-top:2px}

/* Account outer shell */
.front-account{width:min(1180px,100%);margin:6px auto 28px}.account-profile-card{background:#fff;border:1px solid var(--app-line);border-radius:22px;padding:13px 16px;display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;margin-bottom:14px;box-shadow:none}.account-profile-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;border:3px solid #dff4e9}.account-profile-copy h1{font-size:17px;margin:0 0 3px}.account-profile-copy p{font-size:10px;margin:0;color:#8e9894}.account-tags{margin-top:6px}.account-tag{font-size:8px}.account-profile-actions{display:flex;gap:6px}.account-profile-actions .app-secondary-btn,.account-profile-actions .app-ghost-btn{font-size:10px;padding:8px 10px;border-radius:11px}.front-account-portal{background:transparent;border:0;padding:0}

@media(max-width:820px){
 body{padding-bottom:92px}.front-app-main{padding:10px 12px 2px}.app-topbar{padding:10px 12px 12px}.app-topbar-inner{gap:8px}.app-brand img{width:120px;height:54px}.app-user-avatar{width:45px;height:45px;border-width:2px}.app-user-copy b{font-size:11px;max-width:112px}.app-user-copy small{font-size:9px}.app-tool-btn{width:38px;height:38px;border-radius:12px}.app-tool-btn.admin{display:none}
 .app-global-search{height:54px;margin-top:8px;border-radius:16px;padding:0 13px}.app-global-search input{font-size:11px}.app-global-search button{width:36px;height:36px}.app-desktop-nav{display:none}
 .app-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;right:10px;left:10px;bottom:max(10px,env(safe-area-inset-bottom));height:74px;padding:8px 8px 7px;background:rgba(255,255,255,.97);backdrop-filter:blur(18px);border:1px solid #e5eae7;border-radius:22px;z-index:900;box-shadow:0 12px 40px rgba(21,43,34,.14);direction:rtl}
 .app-bottom-nav .app-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;color:#89938f;font-size:9px;height:54px}.app-bottom-nav .app-nav-icon{width:27px;height:27px;display:grid;place-items:center}.app-bottom-nav .app-svg-icon{width:22px;height:22px}.app-bottom-nav .app-nav-item.active{color:var(--app-green);font-weight:900}
 .app-nav-create{align-self:center;display:flex;flex-direction:column;align-items:center;gap:2px;color:#78847f;font-size:9px;transform:translateY(-8px)}.app-nav-create-circle{width:54px;height:54px;border-radius:50%;background:linear-gradient(145deg,#24b86e,#129254);display:grid;place-items:center;color:#fff;box-shadow:0 8px 18px rgba(27,166,101,.27);border:4px solid #fff}.app-nav-create-circle .app-svg-icon{width:26px;height:26px}.app-footer{margin-bottom:88px}
 .hero{min-height:250px;border-radius:21px;margin-top:2px}.hero-content{padding:30px 24px}.hero h1{font-size:31px}.hero p{font-size:11px;line-height:1.9}.eyebrow{font-size:9px;margin-bottom:10px}.hero-actions{gap:6px}.hero-actions .btn{padding:8px 10px;font-size:9px}
 .stats-card{grid-template-columns:repeat(2,1fr);border-radius:19px}.stat{padding:13px}.stat b{font-size:19px}.section{padding:26px 0}.section h2{font-size:19px}.section-head{margin-bottom:13px}.section-desc{font-size:10px}
 .martyr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.martyr-image{height:165px}.martyr-body{padding:11px}.martyr-body h3{font-size:13px}.chip{font-size:8px;padding:4px 6px}.news-grid{grid-template-columns:1fr}.public-media-grid{gap:8px}
 .page-hero>.container{padding:17px;border-radius:18px}.page-hero h1{font-size:20px}.page-hero p{font-size:10px}.search-panel{padding:11px;border-radius:18px}.search-filter-grid{grid-template-columns:1fr 1fr}.search-filter-grid select,.search-filter-grid input{font-size:10px;min-height:42px}
 .detail-top{grid-template-columns:120px minmax(0,1fr);align-items:stretch}.portrait{min-height:170px;height:100%;border-radius:18px}.portrait img{min-height:170px;height:100%}.portrait .fallback{height:170px}.detail-card{padding:15px}.detail-card h1{font-size:19px}.identity-grid{grid-template-columns:1fr 1fr;margin-top:13px}.identity{padding:8px}.identity small{font-size:8px}.identity b{font-size:10px}.detail-sections{grid-template-columns:1fr}
 .network-app-grid{grid-template-columns:1fr}.network-app-map{height:350px}.network-people-list{max-height:340px}.screen-title-row{margin:10px 0}.screen-title-row h1{font-size:20px}.screen-title-row p{font-size:9px}
 .account-profile-card{grid-template-columns:48px 1fr auto;padding:10px 11px;border-radius:18px}.account-profile-avatar{width:48px;height:48px}.account-profile-copy h1{font-size:14px}.account-profile-actions .app-secondary-btn{display:none}
}
@media(max-width:460px){.app-brand img{width:96px;height:49px}.app-user-copy b{max-width:96px}.app-header-tools{gap:2px}.app-tool-btn{width:34px;height:34px}.app-tool-btn .app-svg-icon{width:21px}.search-filter-grid{grid-template-columns:1fr}.detail-top{grid-template-columns:105px minmax(0,1fr)}.portrait{min-height:155px}.portrait img{min-height:155px}.detail-card h1{font-size:17px}.identity-grid{grid-template-columns:1fr}}


/* ===== v2.1.2 UX refinements ===== */

/* Explicit header placement: user on the right, brand centered, tools on the left. */
.app-topbar-inner{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) auto minmax(170px,1fr)!important;
  grid-template-areas:"tools brand user";
  direction:ltr!important;
  align-items:center;
}
.app-user-button{grid-area:user;justify-self:end!important;direction:rtl;max-width:260px}
.app-brand{grid-area:brand;justify-self:center!important}
.app-header-tools{grid-area:tools;justify-self:start!important;direction:rtl}

/* Desktop dock is a bottom application dock, not a top menu. */
@media(min-width:821px){
  body{padding-bottom:112px!important}
  .app-desktop-nav{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    bottom:20px!important;
    top:auto!important;
    transform:translateX(-50%)!important;
    z-index:880!important;
    margin:0!important;
    width:min(760px,calc(100% - 48px))!important;
    box-shadow:0 16px 50px rgba(19,48,37,.18)!important;
    background:rgba(255,255,255,.96)!important;
    backdrop-filter:blur(18px);
  }
  .app-footer{margin-bottom:92px!important}
}

/* Native OpenStreetMap / Leaflet */
.osm-map-shell{position:relative;width:100%;min-height:480px;border-radius:17px;overflow:hidden;background:#f5f8f6}
.network-osm-map{width:100%;height:480px;min-height:480px;z-index:1}
.network-liaison-section{margin-top:30px}.network-liaison-section .network-map-card{margin-top:14px}.network-liaison-section .role-chip-row span{background:#fff;border:1px solid #e2ebe6;border-radius:10px;font-size:12px}
.osm-map-error{position:absolute;inset:auto 14px 14px 14px;z-index:700;background:#fff2ef;color:#a5382b;border:1px solid #ffd3ca;border-radius:12px;padding:10px 12px;font-size:11px;box-shadow:0 8px 25px rgba(20,40,32,.12)}
.osm-popup{display:flex;flex-direction:column;min-width:150px;direction:rtl;text-align:right;font-family:"IRANYekanWebFn",Tahoma,sans-serif}
.osm-popup b{font-size:12px;color:#14231d}.osm-popup span{font-size:10px;color:#168b58;margin-top:2px}.osm-popup small{font-size:9px;color:#87938e;margin-top:3px}
.leaflet-container{font-family:"IRANYekanWebFn",Tahoma,sans-serif;background:#eef4f0}
.leaflet-control-attribution{font-size:8px!important;direction:ltr}
.leaflet-control-zoom a{font-family:Arial,sans-serif}

/* Auto scrolling, mouse-draggable rails */
.auto-rail{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:12px;
  width:100%;
  overflow-x:auto!important;
  overflow-y:hidden;
  direction:ltr;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  padding:2px 2px 12px;
  scroll-snap-type:x proximity;
}
.auto-rail::-webkit-scrollbar{display:none}
.auto-rail.dragging{cursor:grabbing;scroll-snap-type:none}
.auto-rail>*{flex:0 0 auto!important;direction:rtl;scroll-snap-align:start}
.auto-rail img{-webkit-user-drag:none;user-select:none}
.martyr-rail .martyr-card{width:232px}
.martyr-rail .martyr-image{height:225px}
.media-rail .public-media-card{width:260px;aspect-ratio:1/1}
.news-rail .news-card{width:330px;min-height:325px}
.news-rail .news-image{height:160px}

/* Account page starts directly with participation paths. */
.front-account{margin-top:0!important}
.front-account-portal{padding-top:0!important}

/* Mobile refinements */
@media(max-width:820px){
  /* Prevent iOS Safari focus zoom without disabling user zoom globally. */
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
  select,textarea{
    font-size:16px!important;
  }

  .app-topbar{padding:8px 10px 10px!important}
  .app-topbar-inner{
    grid-template-columns:72px minmax(78px,1fr) 108px!important;
    grid-template-areas:"tools brand user"!important;
    gap:5px!important;
  }
  .app-user-button{
    width:108px!important;
    max-width:108px!important;
    padding:3px 3px 3px 5px!important;
    gap:5px!important;
    border-radius:14px!important;
    overflow:hidden;
    background:transparent!important;
    box-shadow:none!important;
  }
  .app-user-avatar{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    border-width:2px!important;
  }
  .app-user-copy{min-width:0!important;max-width:62px!important}
  .app-user-copy b{
    display:block;
    max-width:62px!important;
    font-size:10px!important;
    line-height:1.35!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .app-user-copy small{display:none!important}
  .app-brand img{width:90px!important;height:44px!important}
  .app-header-tools{gap:1px!important}
  .app-tool-btn{width:33px!important;height:33px!important;border-radius:11px!important}
  .app-tool-btn .app-svg-icon{width:20px!important;height:20px!important}
  .tool-badge{top:1px;right:0}

  /* Balanced mobile bottom nav. */
  .app-bottom-nav{
    height:70px!important;
    right:9px!important;
    left:9px!important;
    padding:5px 7px calc(5px + env(safe-area-inset-bottom)*.12)!important;
    align-items:center!important;
    border-radius:21px!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  .app-bottom-nav .app-nav-item{
    height:58px!important;
    justify-content:center!important;
    align-items:center!important;
    gap:2px!important;
    line-height:1.15!important;
    padding-top:5px;
  }
  .app-bottom-nav .app-nav-icon{
    width:26px!important;
    height:26px!important;
    display:grid!important;
    place-items:center!important;
  }
  .app-bottom-nav .app-nav-label{height:13px;display:flex;align-items:center;justify-content:center}
  .app-nav-create{
    height:64px!important;
    align-self:center!important;
    justify-content:flex-start!important;
    transform:translateY(-9px)!important;
    gap:2px!important;
    line-height:1.15;
  }
  .app-nav-create-circle{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    border-width:3px!important;
  }
  .app-nav-create>span:last-child{height:13px;display:flex;align-items:center}

  /* Home hero is roughly half the former mobile height. */
  .hero{
    min-height:145px!important;
    height:145px!important;
    border-radius:19px!important;
    display:flex!important;
    align-items:center!important;
  }
  .hero-content{padding:13px 17px!important;max-width:100%!important}
  .hero h1{font-size:23px!important;line-height:1.2!important;margin:0 0 4px!important}
  .hero p{
    font-size:9px!important;
    line-height:1.65!important;
    margin:0 0 7px!important;
    max-width:78%!important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .eyebrow{display:none!important}
  .hero-actions{gap:5px!important}
  .hero-actions .btn{padding:6px 8px!important;font-size:8px!important;border-radius:10px!important}

  .martyr-rail .martyr-card{width:165px}
  .martyr-rail .martyr-image{height:170px}
  .martyr-rail .martyr-body{padding:10px}
  .media-rail .public-media-card{width:205px}
  .news-rail .news-card{width:270px;min-height:285px}
  .news-rail .news-image{height:135px}

  .osm-map-shell,.network-osm-map{height:360px;min-height:360px}
}

@media(max-width:460px){
  .app-topbar-inner{grid-template-columns:68px minmax(72px,1fr) 100px!important}
  .app-user-button{width:100px!important;max-width:100px!important}
  .app-user-copy{max-width:55px!important}.app-user-copy b{max-width:55px!important;font-size:9.5px!important}
  .app-brand img{width:82px!important;height:42px!important}
  .app-header-tools .app-tool-btn:nth-child(1){margin-left:-1px}
  .martyr-rail .martyr-card{width:154px}
  .martyr-rail .martyr-image{height:158px}
  .media-rail .public-media-card{width:190px}
  .news-rail .news-card{width:250px}
}

/* ===== v2.1.3 alignment, live atlas, rails and skeleton loading ===== */

/* Explicit physical order: profile | network | create | search | home (left -> right). */
.app-desktop-nav,
.app-bottom-nav{
  grid-template-areas:"profile network create search home"!important;
  direction:ltr!important;
}
.app-desktop-nav .nav-home,.app-bottom-nav .nav-home{grid-area:home;direction:rtl}
.app-desktop-nav .nav-search,.app-bottom-nav .nav-search{grid-area:search;direction:rtl}
.app-desktop-nav .nav-create,.app-bottom-nav .nav-create{grid-area:create;direction:rtl}
.app-desktop-nav .nav-network,.app-bottom-nav .nav-network{grid-area:network;direction:rtl}
.app-desktop-nav .nav-profile,.app-bottom-nav .nav-profile{grid-area:profile;direction:rtl}

/* Home atlas now uses the same real OpenStreetMap renderer as /network. */
.home-map-card{display:block!important;padding:12px!important;min-height:430px!important}
.home-map-card .osm-map-shell,.home-map-card .network-osm-map{height:405px;min-height:405px}
.home-map-live-count{display:inline-flex;align-items:center;gap:7px;margin:10px 0 2px;padding:7px 10px;border-radius:999px;background:#edf8f2;color:#11814f;font-size:10px;font-weight:800}
.home-map-live-count:before{content:"";width:7px;height:7px;border-radius:50%;background:#21b76b;box-shadow:0 0 0 4px rgba(33,183,107,.10)}

/* Rails must remain draggable, but auto motion no longer pauses just because the pointer is hovering. */
.auto-rail{scroll-behavior:auto!important;touch-action:pan-x pan-y}
.news-rail .news-card{width:clamp(350px,37vw,430px)!important}
.martyr-rail .martyr-card{width:245px}
.media-rail .public-media-card{width:275px}

/* Skeleton system shared by Home, martyr detail and martyr search. */
@keyframes sk-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.sk{
  position:relative;
  overflow:hidden;
  background:linear-gradient(100deg,#eef2f0 20%,#f8faf9 38%,#eef2f0 56%);
  background-size:220% 100%;
  animation:sk-shimmer 1.35s linear infinite;
  border-radius:10px;
}
.sk-circle{border-radius:50%}
.sk-line{height:11px;margin:7px 0}.sk-line-sm{width:36%}.sk-line-md{width:62%}.sk-line-lg{width:78%}
.sk-title{width:min(420px,72%);height:42px;border-radius:14px;margin:10px 0 15px}
.sk-heading{width:min(260px,54%);height:26px;margin:8px 0}
.sk-copy{width:min(620px,90%);height:13px;margin:9px 0}.sk-copy.short{width:58%}
.sk-pill{width:155px;height:28px;border-radius:999px}.sk-button-row{display:flex;gap:10px;margin-top:18px}.sk-button{width:120px;height:38px;border-radius:13px}
.sk-number{width:82px;height:30px;margin-top:10px}.sk-chip-row{display:flex;gap:7px;margin-top:9px}.sk-chip{width:72px;height:23px;border-radius:999px}
.skeleton-hero:before{display:none!important}.skeleton-hero:after{display:none!important}.skeleton-hero{background:#f1f5f3!important}
.skeleton-stats .stat{min-height:86px}
.sk-map{height:430px;border-radius:20px;border:1px solid #edf1ef}
.sk-legend{height:72px;border-radius:14px}
.skeleton-rail{display:flex;gap:12px;overflow:hidden;padding:2px 2px 12px}
.sk-rail-card{flex:0 0 245px;background:#fff;border:1px solid #e7ece9;border-radius:20px;padding:0 0 15px;overflow:hidden}
.sk-rail-card.media{flex-basis:275px}.sk-rail-card.news{flex-basis:390px}
.sk-rail-media{height:210px;border-radius:0}.sk-rail-card.media .sk-rail-media{height:270px}.sk-rail-card.news .sk-rail-media{height:160px}
.sk-rail-card .sk-line{margin-right:14px;margin-left:14px}.sk-rail-card .sk-line-lg{margin-top:15px}
.sk-martyr-image{height:220px;border-radius:0}.sk-card{pointer-events:none}.sk-card:hover{transform:none!important;box-shadow:none!important}
.skeleton-search-panel{display:grid;gap:12px}.sk-input{height:44px;border-radius:12px}
.sk-portrait{min-height:350px;border-radius:22px}.detail-card .sk-title{height:34px;width:55%}
.identity .sk-line{margin:3px 0}.detail-sections .sk-copy{width:100%}.detail-sections .sk-copy.short{width:64%}

@media(min-width:821px){
  .app-desktop-nav{grid-template-columns:1fr 1fr 1.25fr 1fr 1fr!important}
}

@media(max-width:820px){
  body{padding-bottom:calc(104px + env(safe-area-inset-bottom))!important}
  .app-bottom-nav{
    right:8px!important;
    left:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    height:72px!important;
    min-height:72px!important;
    padding:6px 8px!important;
    box-sizing:border-box!important;
    align-items:center!important;
    overflow:visible!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  .app-bottom-nav .app-nav-item{
    height:56px!important;
    min-height:56px!important;
    padding:3px 0 1px!important;
    justify-content:center!important;
    align-self:center!important;
  }
  .app-bottom-nav .app-nav-label{height:14px!important;line-height:14px!important;margin:0!important}
  .app-nav-create{
    height:60px!important;
    min-height:60px!important;
    transform:translateY(-7px)!important;
    align-self:center!important;
    justify-content:flex-start!important;
    padding:0!important;
  }
  .app-nav-create-circle{width:49px!important;height:49px!important;min-width:49px!important;min-height:49px!important}
  .app-nav-create>span:last-child{height:13px!important;line-height:13px!important;margin-top:1px!important}
  .app-footer{margin-bottom:calc(90px + env(safe-area-inset-bottom))!important}

  .home-map-card{min-height:330px!important;padding:8px!important}
  .home-map-card .osm-map-shell,.home-map-card .network-osm-map{height:315px!important;min-height:315px!important}

  .news-rail .news-card{width:285px!important}
  .martyr-rail .martyr-card{width:172px!important}
  .media-rail .public-media-card{width:210px!important}

  .sk-title{height:29px;width:68%}.sk-heading{height:21px;width:48%}.sk-copy{height:10px}.sk-pill{height:20px;width:105px}
  .sk-button{width:84px;height:30px}.skeleton-stats .stat{min-height:68px}.sk-number{height:23px;width:58px}
  .sk-map{height:315px}
  .sk-rail-card{flex-basis:172px}.sk-rail-card.media{flex-basis:210px}.sk-rail-card.news{flex-basis:285px}
  .sk-rail-media{height:170px}.sk-rail-card.media .sk-rail-media{height:205px}.sk-rail-card.news .sk-rail-media{height:135px}
  .sk-martyr-image{height:165px}.sk-portrait{min-height:220px}
}

@media(max-width:460px){
  .app-bottom-nav{right:7px!important;left:7px!important;border-radius:20px!important}
  .news-rail .news-card{width:260px!important}.martyr-rail .martyr-card{width:158px!important}.media-rail .public-media-card{width:195px!important}
  .sk-rail-card{flex-basis:158px}.sk-rail-card.media{flex-basis:195px}.sk-rail-card.news{flex-basis:260px}
  .sk-martyr-image{height:158px}
}

@media (prefers-reduced-motion:reduce){.sk{animation:none}.auto-rail{scroll-behavior:auto}}

/* v2.1.5 — public narrator profile */
.ravian-public-page{padding:18px 0 52px;min-height:70vh}
.ravian-breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:2px 2px 14px;color:#75867f}
.ravian-breadcrumb a{color:var(--green);font-weight:800}.ravian-breadcrumb b{color:#334a43}
.ravian-profile-hero{position:relative;display:grid;grid-template-columns:170px minmax(0,1fr) 260px;gap:24px;align-items:center;overflow:hidden;padding:28px;background:linear-gradient(135deg,#073d31 0%,#0d624d 58%,#75622f 130%);border-radius:30px;box-shadow:0 16px 40px rgba(7,61,49,.14);color:#fff}
.ravian-profile-hero:before{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:rgba(255,255,255,.055);left:-110px;top:-165px;pointer-events:none}
.ravian-profile-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;border:1px solid rgba(255,255,255,.08);right:42%;bottom:-170px;pointer-events:none}
.ravian-avatar-wrap{width:158px;height:158px;border-radius:50%;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#e8d9ad,#bea263);padding:5px;box-shadow:0 16px 34px rgba(0,0,0,.18);z-index:1}
.ravian-avatar-wrap:before{content:"";position:absolute;inset:5px;border-radius:50%;background:#e8efeb}
.ravian-avatar-wrap img{position:absolute;inset:5px;width:calc(100% - 10px);height:calc(100% - 10px);border-radius:50%;object-fit:cover;z-index:2;background:#eef4f1}
.ravian-avatar-fallback{position:relative;z-index:1;font-size:54px;font-weight:950;color:#0b5f49}
.ravian-verified-dot{position:absolute;z-index:4;left:9px;bottom:10px;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#087550;border:4px solid #0b5744;font-weight:950;font-size:16px;box-shadow:0 5px 16px rgba(0,0,0,.18)}
.ravian-hero-main{position:relative;z-index:1;min-width:0}.ravian-verified-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);border-radius:999px;color:#f0dfac;font-size:11px;font-weight:900}.ravian-verified-pill i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#e8d28e;color:#163b31;font-style:normal;font-size:10px}
.ravian-hero-main h1{margin:12px 0 8px;font-size:clamp(28px,3.4vw,46px);line-height:1.25;letter-spacing:-.7px}.ravian-short-bio{max-width:690px;margin:0;color:#e4eeea;line-height:2;font-size:14px;white-space:pre-line}.ravian-short-bio.muted{opacity:.78}
.ravian-hero-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}.ravian-hero-chips span{padding:6px 10px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);border-radius:999px;color:#edf5f2;font-size:10px;font-weight:800}.ravian-hero-chips .rating-chip{color:#f4d989;background:rgba(197,164,95,.16);border-color:rgba(232,210,142,.22)}
.ravian-hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.ravian-profile-hero .btn{min-height:40px;border-radius:13px;padding:9px 14px;font-size:11px}.ravian-primary-cta{background:#d5b86f!important;color:#173d32!important;box-shadow:0 8px 20px rgba(0,0,0,.12)}.ravian-share-btn,.ravian-link-btn{background:rgba(255,255,255,.1)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important}.ravian-share-btn:hover,.ravian-link-btn:hover{background:rgba(255,255,255,.16)!important}
.ravian-stats{position:relative;z-index:1;display:grid;gap:9px}.ravian-stat{min-height:76px;padding:13px 15px;border-radius:17px;background:rgba(255,255,255,.095);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(6px)}.ravian-stat b{display:block;color:#f2dc9f;font-size:24px;line-height:1.2}.ravian-stat span{display:block;color:#dce9e4;font-size:10px;margin-top:6px}
.ravian-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;margin-top:16px;align-items:start}.ravian-profile-main{display:grid;gap:16px}.ravian-profile-aside{display:grid;gap:16px;position:sticky;top:94px}
.ravian-card{background:#fff;border:1px solid var(--app-line,#e3e9e6);border-radius:24px;padding:22px;box-shadow:0 8px 28px rgba(18,61,49,.045)}.ravian-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.ravian-card-head h2{margin:4px 0 0;font-size:19px;color:#173d32}.ravian-kicker{display:block;color:#0c7456;font-size:9px;font-weight:950;letter-spacing:.2px}.ravian-prose{color:#40564f;line-height:2.2;white-space:pre-line;font-size:13px}.ravian-muted{color:#87958f;font-size:11px;line-height:1.8;margin:6px 0}
.ravian-text-block{padding:14px 0;border-top:1px solid #edf1ef}.ravian-text-block:first-child{border-top:0}.ravian-text-block b{display:block;color:#24473c;font-size:11px;margin-bottom:6px}.ravian-text-block p{margin:0;color:#52665f;font-size:12px;line-height:2;white-space:pre-line}
.ravian-about-card .ravian-text-block{margin-top:17px}.ravian-duo{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ravian-tag-list{display:flex;gap:7px;flex-wrap:wrap}.ravian-tag{display:inline-flex;align-items:center;min-height:31px;padding:6px 10px;background:#f2f7f5;border:1px solid #e0ebe6;color:#17654e;border-radius:999px;font-size:10px;font-weight:850}
.ravian-media-card{display:grid;gap:14px}.ravian-media-card .media-head{margin-bottom:2px}.ravian-audio-box,.ravian-video-box{padding:15px;border:1px solid #e5ece8;border-radius:18px;background:linear-gradient(145deg,#f8fbfa,#f2f6f4)}.ravian-media-label{display:flex;align-items:center;gap:11px;margin-bottom:12px}.ravian-media-label b{display:block;font-size:12px;color:#24473c}.ravian-media-label small{display:block;margin-top:3px;color:#809089;font-size:9px}.ravian-media-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#0c6a50;color:#fff;font-weight:950}.ravian-audio-box audio{display:block;width:100%;height:42px}.ravian-video-box video{display:block;width:100%;max-height:520px;border-radius:14px;background:#071d18}
.ravian-professional-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ravian-professional-item{min-width:0;padding:14px;border:1px solid #e6ece9;border-radius:16px;background:#fafcfb}.ravian-professional-item small{display:block;color:#82918b;font-size:9px;margin-bottom:7px}.ravian-professional-item p,.ravian-professional-item a{display:block;margin:0;color:#345148;font-size:11px;line-height:1.95;white-space:pre-line;overflow-wrap:anywhere}.ravian-professional-item a{color:#0b6b51;font-weight:850}.ravian-invitation-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.ravian-invitation-grid .ravian-text-block{padding:13px 0}
.ravian-side-card .ravian-card-head{margin-bottom:8px}.ravian-side-row{display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #edf1ef}.ravian-side-row:first-of-type{border-top:0}.ravian-side-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;font-weight:950;background:#edf4f1;color:#7a8c84}.ravian-side-row.yes .ravian-side-icon{background:#e8f6f0;color:#0a7c56}.ravian-side-copy b{display:block;font-size:11px;color:#29493f}.ravian-side-copy small{display:block;font-size:9px;color:#8a9792;margin-top:4px;line-height:1.6}.ravian-side-cta{display:flex!important;width:100%;margin-top:12px;min-height:43px;border-radius:13px!important}
.ravian-rating-card{overflow:hidden}.ravian-rating-top{display:flex;align-items:center;gap:15px;padding-bottom:17px;border-bottom:1px solid #edf1ef}.ravian-rating-score{font-size:38px;font-weight:950;line-height:1;color:#0c604a}.ravian-stars{direction:ltr;display:flex;gap:1px}.ravian-stars span{color:#dfe5e2;font-size:16px}.ravian-stars span.on{color:#c9aa5d}.ravian-rating-top small{display:block;color:#8a9892;font-size:9px;margin-top:5px}.ravian-rating-bars{display:grid;gap:7px;margin-top:15px}.ravian-rating-row{display:grid;grid-template-columns:18px 1fr 25px;gap:7px;align-items:center;font-size:9px;color:#73837d;direction:ltr}.ravian-rating-track{height:6px;background:#eef2f0;border-radius:99px;overflow:hidden}.ravian-rating-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0c6b51,#c4a35e)}
/* narrator skeleton mirrors the final page to avoid layout jumps */
.ravian-skeleton .ravian-profile-hero{background:#f1f5f3;box-shadow:none;border:1px solid #e5ebe8}.ravian-avatar-sk{width:148px;height:148px}.sk-ravian-name{width:min(360px,72%);height:42px;margin:11px 0 14px;border-radius:13px}.sk-ravian-tag{width:86px;height:28px;border-radius:999px}.sk-ravian-stat-num{width:65px;height:27px;margin-bottom:9px}.sk-ravian-icon{width:36px;height:36px}.sk-ravian-player{height:48px;border-radius:14px}.sk-ravian-video{height:250px;border-radius:16px}.sk-ravian-rating{width:92px;height:45px;margin:4px 0 13px}
@media(max-width:1080px){.ravian-profile-hero{grid-template-columns:145px minmax(0,1fr) 220px}.ravian-avatar-wrap{width:138px;height:138px}.ravian-profile-layout{grid-template-columns:minmax(0,1fr) 290px}}
@media(max-width:880px){.ravian-profile-hero{grid-template-columns:120px minmax(0,1fr);gap:18px;padding:22px}.ravian-avatar-wrap{width:116px;height:116px}.ravian-avatar-fallback{font-size:40px}.ravian-stats{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.ravian-stat{min-height:64px}.ravian-profile-layout{grid-template-columns:1fr}.ravian-profile-aside{position:static;grid-template-columns:1fr 1fr}.ravian-avatar-sk{width:108px;height:108px}}
@media(max-width:650px){.ravian-public-page{padding-top:8px}.ravian-breadcrumb{font-size:10px;margin-bottom:9px}.ravian-profile-hero{grid-template-columns:82px minmax(0,1fr);gap:13px;padding:16px;border-radius:22px;align-items:start}.ravian-avatar-wrap{width:78px;height:78px;padding:3px}.ravian-avatar-wrap:before{inset:3px}.ravian-avatar-wrap img{inset:3px;width:calc(100% - 6px);height:calc(100% - 6px)}.ravian-avatar-fallback{font-size:28px}.ravian-verified-dot{width:25px;height:25px;left:1px;bottom:1px;border-width:3px;font-size:11px}.ravian-verified-pill{font-size:8px;padding:5px 7px}.ravian-verified-pill i{width:15px;height:15px}.ravian-hero-main h1{font-size:20px;margin:8px 0 4px}.ravian-short-bio{font-size:10px;line-height:1.9;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ravian-hero-chips{margin-top:9px;gap:5px}.ravian-hero-chips span{font-size:8px;padding:4px 7px}.ravian-hero-actions{grid-column:1/-1;margin-top:11px;gap:6px}.ravian-profile-hero .btn{min-height:35px;padding:7px 10px;font-size:9px}.ravian-stats{gap:6px}.ravian-stat{min-height:54px;padding:9px;border-radius:13px}.ravian-stat b{font-size:17px}.ravian-stat span{font-size:8px;margin-top:4px}.ravian-profile-layout,.ravian-profile-main{gap:10px;margin-top:10px}.ravian-card{padding:15px;border-radius:18px}.ravian-card-head{margin-bottom:12px}.ravian-card-head h2{font-size:15px}.ravian-kicker{font-size:8px}.ravian-prose{font-size:10px;line-height:2.05}.ravian-duo{grid-template-columns:1fr;gap:10px}.ravian-tag{font-size:8px;min-height:27px;padding:5px 8px}.ravian-professional-grid,.ravian-invitation-grid,.ravian-profile-aside{grid-template-columns:1fr;gap:10px}.ravian-audio-box,.ravian-video-box{padding:11px;border-radius:14px}.ravian-media-icon{width:32px;height:32px;border-radius:10px}.ravian-video-box video{border-radius:10px}.ravian-rating-score{font-size:31px}.ravian-avatar-sk{width:72px;height:72px}.sk-ravian-name{height:24px;margin:7px 0}.sk-ravian-video{height:160px}}
@media(max-width:420px){.ravian-profile-hero{grid-template-columns:72px minmax(0,1fr)}.ravian-avatar-wrap{width:68px;height:68px}.ravian-avatar-fallback{font-size:24px}.ravian-hero-actions .btn{flex:1}.ravian-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.ravian-stat b{font-size:15px}.ravian-stat span{font-size:7px}.ravian-avatar-sk{width:62px;height:62px}}

/* v2.1.6 — martyr mobile portrait stability */
@media(max-width:650px){.detail-top .portrait{width:100%;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:4/5;border-radius:20px}.detail-top .portrait img{width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover!important;object-position:center top!important;display:block}.detail-top .portrait .fallback{height:100%!important;min-height:0!important}}

/* v2.1.6 — show the complete signed-in user name in the mobile header */
@media(max-width:820px){.app-topbar-inner{grid-template-columns:auto minmax(72px,1fr) auto!important}.app-user-button{width:auto!important;max-width:160px!important;overflow:visible!important}.app-user-copy{display:flex!important;max-width:115px!important;min-width:0!important}.app-user-copy b{max-width:none!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:10px!important;line-height:1.35!important;word-break:normal}.app-user-copy small{display:none!important}}
@media(max-width:460px){.app-topbar-inner{grid-template-columns:auto minmax(65px,1fr) auto!important}.app-user-button{width:auto!important;max-width:145px!important}.app-user-copy{max-width:102px!important}.app-user-copy b{max-width:none!important;font-size:9.5px!important;white-space:normal!important}}


/* v2.1.7 — martyr portrait gets its own row on mobile */
@media(max-width:760px){
  .detail-top{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;align-items:start!important}
  .detail-top>.portrait,.detail-top>.detail-card{grid-column:1/-1!important;width:100%!important;min-width:0!important}
  .detail-top>.portrait{height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:4/5!important;border-radius:20px!important}
  .detail-top>.portrait img{width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover!important;object-position:center top!important;display:block!important}
  .detail-top>.portrait .fallback{width:100%!important;height:100%!important;min-height:0!important}
}
/* v2.1.7 — slightly smaller map points */
.network-point circle{r:5.5px}

/* v2.1.10 — signed-in header menu and global form error modal */
.app-user-menu-wrap{grid-area:user;justify-self:end;position:relative;direction:rtl;min-width:0}.app-user-menu-wrap .app-user-button{grid-area:auto!important;justify-self:auto!important;width:auto;border:0;font-family:inherit;cursor:pointer}.app-user-menu-trigger{padding-inline-end:8px!important}.app-user-caret{font-size:16px;color:#799088;margin-right:3px;transition:transform .18s}.app-user-menu-trigger[aria-expanded="true"] .app-user-caret{transform:rotate(180deg)}.app-user-dropdown{position:absolute;right:0;top:calc(100% + 9px);z-index:4000;width:235px;padding:7px;background:#fff;border:1px solid #dfe8e4;border-radius:16px;box-shadow:0 22px 60px rgba(18,56,44,.18);direction:rtl}.app-user-dropdown a,.app-user-dropdown button{width:100%;min-height:40px;border:0;background:transparent;color:#28493f;text-decoration:none;border-radius:10px;padding:9px 10px;display:flex;align-items:center;gap:10px;text-align:right;font:inherit;font-size:11px;cursor:pointer}.app-user-dropdown a:hover,.app-user-dropdown button:hover{background:#f1f8f5;color:#0b6f52}.app-user-dropdown .app-svg-icon{width:17px;height:17px;flex:0 0 17px}.app-user-dropdown-sep{height:1px;background:#edf2ef;margin:5px}.app-user-dropdown button.logout{color:#a94537}.app-user-dropdown button.logout:hover{background:#fff2ef;color:#a43b2d}
.global-form-error{position:fixed;inset:0;z-index:20000;background:rgba(14,29,24,.48);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:18px;direction:rtl}.global-form-error-card{width:min(480px,100%);background:#fff;border-radius:20px;padding:20px;box-shadow:0 28px 80px rgba(0,0,0,.24);border:1px solid #f1d7d1}.global-form-error-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#9d3428;font-size:17px}.global-form-error-close{border:0;background:#fff1ee;color:#ad493a;width:34px;height:34px;border-radius:10px;font-size:22px;cursor:pointer}.global-form-error-body{margin:15px 0 18px;padding:13px 14px;border-radius:12px;background:#fff8f6;color:#5e3f38;line-height:2;white-space:pre-line;font-size:12px}.global-form-error-ok{min-width:120px}
@media(max-width:820px){.app-user-menu-wrap{max-width:160px!important}.app-user-menu-wrap .app-user-button{max-width:160px!important}.app-user-dropdown{position:fixed;right:12px;left:12px;top:70px;width:auto}.app-user-caret{display:none}}

/* v2.1.14 auth, admin shortcut and network martyr links */
.account-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#f1f6f3;border-radius:15px;margin:16px 0}.account-auth-tabs button,.account-login-methods button{border:0;background:transparent;font:inherit;font-weight:800;color:#687a72;cursor:pointer;border-radius:11px;padding:10px}.account-auth-tabs button.active,.account-login-methods button.active{background:#fff;color:#0c5b47;box-shadow:0 3px 14px rgba(17,63,49,.08)}.account-login-methods{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:12px;border:1px solid #e1ebe6;border-radius:13px;padding:4px}.account-otp-summary{display:flex;flex-direction:column;gap:5px;background:#f4faf7;border:1px solid #dcebe4;border-radius:14px;padding:13px}.account-otp-summary span,.account-register-note,.account-otp-expiry{font-size:11px;color:var(--app-muted);line-height:1.8}.otp-code-input{text-align:center!important;direction:ltr;letter-spacing:8px;font-size:20px!important;font-weight:900}.account-otp-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.account-link-btn{border:0;background:transparent;color:#0c6a51;font:inherit;font-size:11px;font-weight:800;cursor:pointer;padding:7px}.account-link-btn:disabled{opacity:.5;cursor:not-allowed}.app-user-dropdown .admin-panel-link{background:#eff8f4;color:#0c5b47;font-weight:900}.network-popup-martyrs{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;padding-top:7px;border-top:1px solid #e7eee9}.network-popup-martyr-label{width:100%;font-weight:800;color:#6c7c75}.network-martyr-link{display:inline-flex;color:#0b6a51!important;text-decoration:none;font-weight:900;font-size:11px;background:#edf8f3;border:1px solid #d5ebe1;border-radius:999px;padding:4px 8px}.network-martyr-link:hover{text-decoration:underline}.network-person-martyrs{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.account-not-found{display:grid;gap:10px;margin-top:12px;padding:13px;border:1px solid #f0d2a8;border-radius:14px;background:#fff9ef;color:#70471b;font-size:11px;line-height:1.8}.account-registration-cta{border:0;border-radius:10px;background:#0c6a51;color:#fff;font:inherit;font-weight:800;padding:10px 12px;cursor:pointer}

/* v2.1.15 — configurable home, martyr dossier and ravian directory */
.home-hero-slider{position:relative;width:100%;overflow:hidden;background:#102b24;isolation:isolate}.home-hero-track{position:relative;min-height:clamp(300px,42vw,640px)}.home-hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s ease}.home-hero-slide.active{opacity:1;visibility:visible;z-index:1}.home-hero-slide img{display:block;width:100%;height:100%;min-height:clamp(300px,42vw,640px);object-fit:cover;object-position:center}.home-hero-controls{position:absolute;inset:0;z-index:3;pointer-events:none;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(12px,3vw,42px)}.home-hero-controls>button{pointer-events:auto;width:44px;height:44px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(8,38,30,.48);backdrop-filter:blur(8px);color:#fff;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.18)}.home-hero-dots{position:absolute;right:50%;bottom:20px;transform:translateX(50%);display:flex;gap:7px;pointer-events:auto;padding:7px 10px;border-radius:999px;background:rgba(7,33,27,.38);backdrop-filter:blur(7px)}.home-hero-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer}.home-hero-dots button.active{width:25px;border-radius:999px;background:#fff}.home-intro-copy{padding:54px 0 20px;text-align:center}.home-intro-copy .container{max-width:900px}.home-intro-copy h1{margin:8px 0 16px;color:#173f34;font-size:clamp(25px,3.4vw,42px)}.home-intro-copy p{margin:0 auto;max-width:860px;color:#526b62;font-size:14px;line-height:2.25}.home-actions-section{padding:28px 0 62px}.home-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.home-action-card{min-height:168px;border:1px solid #dfe9e4;border-radius:24px;background:linear-gradient(145deg,#fff,#f7fbf9);padding:22px 16px;text-decoration:none;color:#23483d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;font-family:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 8px 26px rgba(19,62,49,.045)}.home-action-card:hover:not(.disabled){transform:translateY(-4px);border-color:#b8d8ca;box-shadow:0 18px 40px rgba(17,76,57,.1)}.home-action-card.disabled{cursor:default;opacity:.72}.home-action-icon{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;background:#e9f6f0;color:#0b6d52;font-size:27px;font-weight:900;margin-bottom:5px}.home-action-card b{font-size:15px}.home-action-card small{font-size:10px;color:#84928c}.home-news-section{padding-bottom:76px}.home-news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-map-live-count{margin:12px 0 18px;padding:10px 12px;border-radius:12px;background:#edf7f3;color:#0b6b51;font-size:11px;font-weight:800}

.martyr-profile-page{padding-top:22px;background:linear-gradient(180deg,#f7faf8 0,#fff 380px)}.martyr-profile-shell{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:28px;align-items:stretch;margin:18px 0 24px;padding:24px;border:1px solid #e0e9e5;border-radius:30px;background:#fff;box-shadow:0 22px 65px rgba(23,64,51,.08)}.martyr-profile-photo{position:relative;min-height:420px;border-radius:24px;overflow:hidden;background:#eaf2ee}.martyr-profile-photo img,.martyr-profile-photo .fallback{display:block;width:100%;height:100%;min-height:420px;object-fit:cover;object-position:center top}.martyr-profile-photo .fallback{display:grid;place-items:center;font-size:78px;color:#b9c9c2;background:linear-gradient(145deg,#edf5f1,#dce9e3)}.martyr-profile-identity{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:20px clamp(4px,2vw,24px)}.martyr-profile-badge{width:max-content;padding:6px 13px;border-radius:999px;background:#eaf7f1;color:#0b7355;font-size:11px;font-weight:900}.martyr-profile-identity h1{margin:15px 0 5px;font-size:clamp(30px,4vw,52px);line-height:1.35;color:#173e33}.martyr-profile-identity>p{margin:0;color:#72837c;font-size:13px}.martyr-profile-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:25px}.martyr-profile-highlights .identity{background:#f7faf9}.martyr-facts-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-bottom:55px}.martyr-facts-card{min-width:0;background:#fff;border:1px solid #e2eae6;border-radius:24px;padding:22px;box-shadow:0 10px 32px rgba(16,60,47,.045)}.martyr-facts-card.wide,.martyr-text-card{grid-column:1/-1}.martyr-card-title{display:flex;align-items:center;gap:9px;padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid #edf2ef}.martyr-card-title>span{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:#ecf7f2;color:#0c7155}.martyr-card-title h2{margin:0;font-size:17px;color:#254b40}.martyr-facts-card .identity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.martyr-facts-card .identity{min-height:72px;border:1px solid #e9efec;border-radius:14px;padding:11px 13px;background:#fafcfb}.martyr-facts-card .identity small{display:block;color:#89968f;font-size:9px;margin-bottom:7px}.martyr-facts-card .identity b{display:block;color:#314f46;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.martyr-text-card p{margin:0;color:#445e55;line-height:2.25;white-space:pre-line;font-size:13px}.martyr-empty-box{min-height:72px;border:1px dashed #d7e2dd;border-radius:14px;background:#fafcfb;color:#87948e;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;font-size:11px}.martyr-activity-section .activity-list{margin:0}.martyr-activity-section .activity-item{border-radius:16px;background:#fafcfb;border-color:#e8eeeb}

.ravian-directory-page{padding-top:28px;padding-bottom:70px}.ravian-directory-search{max-width:720px;margin:0 auto 28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:8px;background:#fff;border:1px solid #dfe8e4;border-radius:16px;box-shadow:0 9px 28px rgba(18,62,48,.06)}.ravian-directory-search input{min-width:0;border:0;outline:0;background:transparent;font:inherit;color:#254a3f;padding:8px 12px}.ravian-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ravian-directory-card{display:grid;grid-template-columns:100px minmax(0,1fr);gap:15px;min-height:150px;padding:16px;border:1px solid #dfe8e4;border-radius:22px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 8px 28px rgba(16,59,47,.045);transition:transform .18s,box-shadow .18s}.ravian-directory-card:hover{transform:translateY(-3px);box-shadow:0 17px 38px rgba(16,59,47,.09)}.ravian-directory-photo{width:100px;height:118px;border-radius:18px;overflow:hidden;background:linear-gradient(145deg,#e8f2ed,#d8e8e0);display:grid;place-items:center;color:#0d654e;font-size:25px;font-weight:900}.ravian-directory-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.ravian-directory-copy{min-width:0}.ravian-directory-copy h2{margin:4px 0 7px;color:#244b40;font-size:16px}.ravian-directory-copy p{margin:0;color:#6d7d76;font-size:10px;line-height:1.9;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ravian-directory-meta{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0;color:#5f746b;font-size:9px}.ravian-directory-meta span{background:#f2f7f5;border-radius:999px;padding:4px 7px}.ravian-directory-card .ravian-tag-list{gap:4px}.ravian-directory-card .ravian-tag{font-size:8px;min-height:24px;padding:3px 6px}

@media(max-width:1000px){.home-news-grid,.ravian-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.martyr-profile-shell{grid-template-columns:280px minmax(0,1fr)}.martyr-profile-photo,.martyr-profile-photo img,.martyr-profile-photo .fallback{min-height:350px}}
@media(max-width:760px){.home-hero-track,.home-hero-slide img{min-height:260px}.home-hero-controls{padding:0 9px}.home-hero-controls>button{width:36px;height:36px;font-size:24px}.home-hero-dots{bottom:12px}.home-intro-copy{padding:36px 0 14px}.home-intro-copy p{font-size:12px;line-height:2.15}.home-actions-section{padding:22px 0 45px}.home-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-action-card{min-height:142px;border-radius:19px;padding:15px 8px}.home-action-icon{width:49px;height:49px;border-radius:16px;font-size:22px}.home-news-grid,.ravian-directory-grid{grid-template-columns:1fr}.martyr-profile-shell{grid-template-columns:1fr;padding:14px;gap:12px;border-radius:22px}.martyr-profile-photo{width:100%;min-height:0;aspect-ratio:4/5}.martyr-profile-photo img,.martyr-profile-photo .fallback{height:100%;min-height:0}.martyr-profile-identity{padding:12px 5px 8px}.martyr-profile-identity h1{font-size:28px}.martyr-profile-highlights{grid-template-columns:1fr 1fr}.martyr-facts-layout{grid-template-columns:1fr;gap:11px}.martyr-facts-card,.martyr-facts-card.wide,.martyr-text-card{grid-column:1;padding:16px;border-radius:18px}.martyr-facts-card .identity-grid{grid-template-columns:1fr 1fr}.ravian-directory-page{padding-top:18px}.ravian-directory-search{grid-template-columns:1fr;padding:7px}.ravian-directory-search .btn{width:100%}}

/* patch15 */
.home-action-icon{background:transparent;width:72px;height:72px;border-radius:22px;overflow:hidden}.home-action-icon img{display:block;width:100%;height:100%;object-fit:contain}.narrative-hashtags{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.narrative-hashtag,.narrative-clear-tag{color:#0b7457;font-size:12px;font-weight:850}.narrative-hashtag:hover{text-decoration:underline}.campaign-post-edit-actions{display:flex;gap:7px;margin:10px 0}.campaign-post-edit-actions button{border:1px solid #d8e5df;background:#fff;color:#0b6b51;border-radius:10px;padding:7px 10px;cursor:pointer}.campaign-post-edit-actions button.danger{color:#a12c2c;border-color:#f0cece}.campaign-change-pending{padding:8px 10px;border-radius:10px;background:#fff4d8;color:#875e08;font-size:11px;margin:8px 0}.protected-profile-image,.account-profile-avatar,.app-user-avatar{-webkit-user-drag:none;user-select:none}.news-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.news-gallery-item{margin:0;border-radius:18px;overflow:hidden;background:#071d18}.news-gallery-item img,.news-gallery-item video{display:block;width:100%;height:100%;max-height:560px;object-fit:contain}.campaign-leader-row{text-decoration:none}@media(max-width:650px){.news-gallery{grid-template-columns:1fr}.home-action-icon{width:60px;height:60px}}
@media(max-width:480px){.home-hero-track,.home-hero-slide img{min-height:210px}.home-hero-controls>button{width:32px;height:32px}.home-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-action-card{min-height:128px}.home-action-card b{font-size:12px}.home-action-card small{font-size:8px}.martyr-profile-highlights,.martyr-facts-card .identity-grid{grid-template-columns:1fr}.ravian-directory-card{grid-template-columns:76px minmax(0,1fr);padding:12px;gap:11px}.ravian-directory-photo{width:76px;height:92px;border-radius:14px}.ravian-directory-copy h2{font-size:14px}.ravian-directory-meta{display:grid}}

.home-hero-slide>a{display:block;width:100%;height:100%}

/* ===== v2.2.0 — social narratives ===== */
.desktop-create,.app-nav-create{border:0;background:transparent;font:inherit;cursor:pointer}
.app-field textarea{font:inherit;min-height:105px;border:1px solid #d9e4df;border-radius:13px;padding:12px;background:#fbfdfc;resize:vertical;outline:0;color:#27473e}.app-field textarea:focus,.app-field input:focus{border-color:#8fc5b2;box-shadow:0 0 0 3px rgba(12,106,81,.08)}
.narratives-explore-page,.narrative-detail-page,.narrative-profile-page{padding:34px 0 70px;min-height:70vh}
.narratives-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:25px}.narratives-page-head h1{margin:4px 0 5px;font-size:clamp(28px,4vw,44px);color:#173f34}.narratives-page-head p{margin:0;color:#71837b;font-size:12px}.app-kicker{color:#0b7556;font-weight:900}
.narrative-explore-grid,.narrative-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.narrative-tile{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#edf3f0;color:#fff;text-decoration:none}.narrative-tile img,.narrative-tile video{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s}.narrative-tile:hover img,.narrative-tile:hover video{transform:scale(1.025)}.narrative-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.46));opacity:0;transition:opacity .2s}.narrative-tile:hover:after{opacity:1}.narrative-tile-stats{position:absolute;z-index:2;right:11px;bottom:9px;font-size:11px;font-weight:900;text-shadow:0 1px 5px #000;opacity:0;transition:opacity .2s}.narrative-tile:hover .narrative-tile-stats{opacity:1}.narrative-video-mark{position:absolute;z-index:3;top:10px;left:10px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(10,25,20,.55);backdrop-filter:blur(5px);font-size:10px;padding-left:2px}.narrative-explore-skeleton{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.narrative-explore-skeleton i{aspect-ratio:1/1;border-radius:2px;background:linear-gradient(100deg,#eef2f0 20%,#f8faf9 38%,#eef2f0 56%);background-size:220% 100%;animation:sk-shimmer 1.35s linear infinite}
.narrative-modal-bg{position:fixed;z-index:3000;inset:0;background:rgba(11,31,25,.62);backdrop-filter:blur(6px);display:grid;place-items:center;padding:18px;overflow:auto}.narrative-create-modal{width:min(610px,100%);max-height:min(860px,calc(100vh - 36px));overflow:auto;border-radius:27px;background:#fff;border:1px solid rgba(255,255,255,.6);box-shadow:0 30px 90px rgba(0,0,0,.28)}.narrative-modal-head{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #edf1ef}.narrative-modal-head small{display:block;color:#809089;font-size:9px;font-weight:800}.narrative-modal-head h2{margin:2px 0 0;color:#23483d;font-size:20px}.narrative-modal-head>button{width:36px;height:36px;border:0;border-radius:50%;background:#f0f5f2;color:#455e55;font-size:24px;cursor:pointer}.narrative-create-body{display:grid;gap:15px;padding:20px}.narrative-upload-box{min-height:165px;border:1.5px dashed #a7cbbd;border-radius:20px;background:#f7fbf9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;cursor:pointer;color:#31564b}.narrative-upload-box:hover{background:#f0f8f4;border-color:#6eaf96}.narrative-upload-box input{display:none}.narrative-upload-icon{width:46px;height:46px;border-radius:15px;background:#e1f3eb;color:#08704f;display:grid;place-items:center;font-size:26px;font-weight:700;margin-bottom:8px}.narrative-upload-box small{color:#87958f;font-size:9px;margin-top:5px}.narrative-relate-toggle{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #e3ebe7;border-radius:14px;background:#fafcfb;color:#405d54;font-size:11px;font-weight:800;cursor:pointer}.narrative-relate-toggle input{accent-color:#0c7054}.narrative-martyr-search{position:relative}.narrative-martyr-results{margin-top:5px;border:1px solid #dce7e2;border-radius:14px;background:#fff;box-shadow:0 16px 35px rgba(15,64,49,.1);max-height:240px;overflow:auto}.narrative-martyr-results button{width:100%;border:0;border-bottom:1px solid #eef2f0;background:#fff;padding:10px 13px;text-align:right;font:inherit;cursor:pointer;display:flex;justify-content:space-between;gap:8px}.narrative-martyr-results button:hover{background:#f5faf7}.narrative-martyr-results small,.narrative-selected-martyr small{color:#84928c;font-size:9px}.narrative-selected-martyr{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;border-radius:14px;background:#edf8f3;color:#275044}.narrative-selected-martyr>div{display:grid;gap:3px}.narrative-selected-martyr button{border:0;background:transparent;color:#0b7254;font:inherit;font-size:10px;font-weight:900;cursor:pointer}.narrative-submit{width:100%}.narrative-success{padding:30px 24px;text-align:center}.narrative-success b{display:block;font-size:22px;color:#087252;margin-bottom:7px}.narrative-success p{color:#657970;line-height:2;margin:0 0 18px}
.narrative-post-shell{width:min(1080px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);min-height:610px;background:#fff;border:1px solid #dfe7e3;border-radius:25px;overflow:hidden;box-shadow:0 18px 55px rgba(22,60,48,.08);direction:ltr}.narrative-post-media{min-width:0;display:grid;place-items:center;background:#0f1513;max-height:78vh}.narrative-post-media img,.narrative-post-media video{display:block;width:100%;height:100%;max-height:78vh;object-fit:contain}.narrative-post-side{direction:rtl;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;background:#fff}.narrative-post-user{display:flex;align-items:center;gap:9px;padding:14px 15px;border-bottom:1px solid #edf1ef;min-width:0}.narrative-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:#e9f3ee}.narrative-avatar.fallback{display:grid;place-items:center;background:linear-gradient(145deg,#e9f4ef,#d7e8e0);color:#0b684f;font-weight:950}.narrative-avatar.small{width:34px;height:34px;font-size:10px}.narrative-post-user-copy{display:grid;min-width:0;color:#314f46;text-decoration:none;line-height:1.5}.narrative-post-user-copy b{font-size:11px}.narrative-post-user-copy small{font-size:9px;color:#8a9691}.narrative-martyr-chip{margin-right:auto;max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 8px;border-radius:999px;background:#edf8f3;color:#0b7354;text-decoration:none;font-size:8px;font-weight:900}.narrative-post-comments{overflow:auto;padding:15px;display:grid;align-content:start;gap:16px}.narrative-caption,.narrative-comment{display:flex;gap:9px;min-width:0}.narrative-caption{display:block;padding-bottom:13px;border-bottom:1px solid #f0f3f1}.narrative-caption>a,.narrative-comment a{color:#2e5046;text-decoration:none}.narrative-caption p,.narrative-comment p{margin:3px 0 0;color:#455f56;line-height:1.95;font-size:11px;white-space:pre-line;overflow-wrap:anywhere}.narrative-comment>div{min-width:0}.narrative-comment b,.narrative-caption b{font-size:10px}.narrative-comment small{display:block;color:#a0aaa5;font-size:8px;margin-top:3px}.narrative-no-comments{color:#8a9691;text-align:center;padding:25px 6px;font-size:10px}.narrative-post-actions{border-top:1px solid #edf1ef;padding:11px 14px}.narrative-action-row{display:flex;align-items:center;gap:11px;min-height:34px}.narrative-action-row button{border:0;background:transparent;padding:0;color:#2d453e;font-size:27px;line-height:1;cursor:pointer}.narrative-action-row button.liked{color:#e73b4c}.narrative-action-row button:hover{transform:scale(1.06)}.narrative-copy-note{margin-right:auto;color:#0a7757;background:#eaf7f1;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900}.narrative-like-count{display:block;color:#334e46;font-size:10px;margin-top:7px}.narrative-post-actions>small{color:#929d98;font-size:8px}.narrative-comment-form{display:grid;grid-template-columns:minmax(0,1fr) auto;border-top:1px solid #edf1ef}.narrative-comment-form input{height:49px;border:0;outline:0;padding:0 14px;font:inherit;font-size:10px;color:#344e46}.narrative-comment-form button{border:0;background:transparent;color:#0a7556;font:inherit;font-size:10px;font-weight:900;padding:0 15px;cursor:pointer}.narrative-comment-form button:disabled{opacity:.35;cursor:default}
.narrative-profile-head{display:grid;grid-template-columns:135px minmax(0,1fr) auto;gap:28px;align-items:center;max-width:880px;margin:0 auto 28px;padding:20px}.narrative-avatar.profile{width:130px;height:130px;border:4px solid #fff;outline:1px solid #d9e4df;box-shadow:0 8px 28px rgba(22,62,49,.08);font-size:38px}.narrative-profile-copy h1{margin:0 0 3px;color:#274a40;font-size:27px}.narrative-profile-copy>small{color:#8a9691}.narrative-profile-stats{display:flex;gap:24px;margin-top:18px;color:#526a62;font-size:11px}.narrative-profile-stats b{color:#264b40;font-size:16px;margin-left:3px}.narrative-profile-divider{height:1px;background:#e4ebe7;margin:0 0 18px}.narrative-profile-title{text-align:center;font-size:12px;color:#536a62;margin:0 0 14px;font-weight:900}
.narrative-profile-more{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 12px}.narrative-profile-more button{min-width:180px}.narrative-profile-more button:disabled{opacity:.65;cursor:wait}.narrative-profile-more p{margin:0;color:#a53b3b;text-align:center}
@media(max-width:860px){.narrative-post-shell{grid-template-columns:1fr;max-width:650px;min-height:0}.narrative-post-media{aspect-ratio:1/1;max-height:none}.narrative-post-media img,.narrative-post-media video{max-height:none}.narrative-post-side{grid-template-rows:auto auto auto auto}.narrative-post-comments{max-height:390px}.narrative-profile-head{grid-template-columns:100px minmax(0,1fr);gap:18px}.narrative-avatar.profile{width:96px;height:96px}.narrative-profile-head>.app-secondary-btn{grid-column:1/-1;width:100%;text-align:center}.narrative-explore-grid,.narrative-profile-grid,.narrative-explore-skeleton{gap:2px}}
@media(max-width:600px){.narratives-explore-page,.narrative-detail-page,.narrative-profile-page{padding:16px 0 34px}.narratives-page-head{align-items:flex-start;flex-direction:column;margin-bottom:15px}.narratives-page-head .app-primary-btn{width:100%;text-align:center}.narrative-explore-grid,.narrative-profile-grid,.narrative-explore-skeleton{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}.narrative-tile-stats{display:none}.narrative-post-shell{border-radius:0;border-left:0;border-right:0;box-shadow:none}.narrative-detail-page>.container{width:calc(100% + 22px);margin-right:-11px}.narrative-modal-bg{padding:0;align-items:end}.narrative-create-modal{width:100%;max-height:92vh;border-radius:25px 25px 0 0}.narrative-create-body{padding:16px}.narrative-upload-box{min-height:135px}.narrative-profile-head{padding:8px 3px;grid-template-columns:84px minmax(0,1fr);gap:14px}.narrative-avatar.profile{width:80px;height:80px;font-size:27px}.narrative-profile-copy h1{font-size:20px}.narrative-profile-stats{gap:13px;margin-top:11px}.narrative-profile-stats b{font-size:13px}.narrative-post-comments{max-height:none}.narrative-martyr-chip{max-width:38%}}

/* ===== نسخه ۲.۱.۱۶ — ستاره‌گرام، هوش مصنوعی، صوت ===== */

/* هدر بدون نوار جستجو */
.app-global-search{display:none!important}

/* دکمه مرکزی ستاره‌گرام (تگ a به‌جای button) */
.desktop-create,.app-nav-create{text-decoration:none}
.app-desktop-nav .desktop-create.active,.app-bottom-nav .app-nav-create.active{color:var(--app-green-dark,#0c5b47)}
.app-bottom-nav .app-nav-create.active .app-nav-create-circle{box-shadow:0 8px 22px rgba(12,91,71,.35)}

/* آیکون‌های اکشن روایت */
.narrative-action-row button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:#3d4a45;cursor:pointer;transition:background .15s,color .15s,transform .12s}
.narrative-action-row button:hover{background:rgba(12,91,71,.08)}
.narrative-action-row button:active{transform:scale(.92)}
.narrative-action-row button .app-svg-icon{width:23px;height:23px}
.narrative-action-row button.liked{color:#dc2626}
.narrative-action-row button.liked .app-svg-icon{fill:currentColor;stroke:currentColor}

/* آمار روی تایل */
.narrative-tile-stats .tile-stat{display:inline-flex;align-items:center;gap:4px;font-style:normal}
.narrative-tile-stats .tile-stat+.tile-stat{margin-inline-start:12px}
.narrative-tile-stats .app-svg-icon{width:16px;height:16px;fill:currentColor;stroke:currentColor}
.narrative-tile-stats b{font-weight:700}

/* روایت صوتی */
.narrative-audio-mark{position:absolute;top:8px;inset-inline-end:8px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff}
.narrative-audio-mark .app-svg-icon{width:15px;height:15px}
.narrative-tile.is-audio img{object-fit:cover}
.narrative-post-media.is-audio{position:relative;display:flex;align-items:center;justify-content:center;background:#0d1512;overflow:hidden}
.narrative-post-media.is-audio img{width:100%;height:100%;object-fit:cover;opacity:.55}
.narrative-post-media.is-audio audio{position:absolute;inset-inline:16px;bottom:16px;width:calc(100% - 32px);height:44px}

/* کادر انتخاب کاور در فرم آپلود */
.narrative-cover-block{display:flex;flex-direction:column;gap:8px}
.narrative-cover-box{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px;border:1.5px dashed #cfdad5;border-radius:15px;background:#f7faf8;cursor:pointer;text-align:center}
.narrative-cover-box:hover{border-color:var(--app-green-dark,#0c5b47)}
.narrative-cover-box input{position:absolute;inset:0;opacity:0;cursor:pointer}
.narrative-cover-box .narrative-cover-icon{display:inline-flex;color:var(--app-green-dark,#0c5b47)}
.narrative-cover-box .app-svg-icon{width:26px;height:26px}
.narrative-cover-box b{font-size:13px}
.narrative-cover-box small{font-size:11px;color:#7b8783}
.narrative-cover-clear{align-self:flex-start;border:0;background:transparent;color:#b91c1c;font:inherit;font-size:12px;cursor:pointer;padding:0}

/* دکمه شناور افزودن روایت روی صفحه ستاره‌گرام */
.narrative-fab{position:fixed;inset-inline-end:20px;bottom:24px;z-index:700;display:none;align-items:center;justify-content:center;width:56px;height:56px;border:0;border-radius:50%;background:var(--app-green-dark,#0c5b47);color:#fff;box-shadow:0 10px 26px rgba(12,91,71,.38);cursor:pointer}
.narrative-fab .app-svg-icon{width:26px;height:26px;stroke-width:2.2}
.narrative-fab:active{transform:scale(.94)}
.narratives-explore-page .narrative-fab{display:inline-flex}
.narratives-explore-page .narratives-page-head{flex-direction:column;align-items:center;text-align:center}
.narratives-page-title{width:100%}
.narratives-page-title h1{color:#0b7556}
.narrative-load-more{display:flex;justify-content:center;align-items:center;min-height:60px;margin-top:16px;color:#36594d;font-size:13px}
.narrative-load-more button{min-height:44px}
.narratives-disclaimer{max-width:75ch;margin:16px auto 28px;text-align:center;color:#36594d;font-size:13px;line-height:2}
@media(max-width:760px){.narratives-explore-page .narrative-fab{inset-inline-end:16px;bottom:calc(96px + env(safe-area-inset-bottom,0px))}}

/* راهنمای زیر فیلدها (کد معرف) */
.app-field-help{display:block;margin-top:5px;font-size:11px;color:#7b8783;line-height:1.7}

/* صفحه هوش مصنوعی — به‌زودی */
.ai-soon-page{padding:36px 0 56px}
.ai-soon-card{width:min(620px,100%);margin:0 auto;padding:44px 28px;text-align:center;background:#fff;border:1px solid #e7ece9;border-radius:24px;box-shadow:0 18px 44px rgba(14,45,35,.07)}
.ai-soon-icon{display:inline-flex;align-items:center;justify-content:center;width:78px;height:78px;margin-bottom:16px;border-radius:26px;background:linear-gradient(135deg,rgba(12,91,71,.12),rgba(12,91,71,.04));color:var(--app-green-dark,#0c5b47)}
.ai-soon-icon .app-svg-icon{width:38px;height:38px}
.ai-soon-card h1{margin:6px 0 10px;font-size:26px}
.ai-soon-card p{color:#5d6b66;line-height:2;margin:0 0 6px}
.ai-soon-note{font-size:13px;color:#8a948f!important}
.ai-soon-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:22px}
@media(max-width:600px){.ai-soon-card{padding:32px 18px;border-radius:20px}.ai-soon-card h1{font-size:22px}}

/* ===== نسخه ۲.۱.۱۷ — هیرو دوستونی، معرفی، پویش ===== */

/* هیروی دوستونی صفحه اول */
.home-hero-split{display:grid;grid-template-columns:minmax(180px,.85fr) minmax(0,1.15fr);align-items:center;gap:34px;direction:rtl}
.home-hero-logo{display:flex;align-items:center;justify-content:center}
.home-hero-logo img{width:min(280px,100%);height:auto;object-fit:contain;filter:drop-shadow(0 14px 34px rgba(14,45,35,.12))}
.home-hero-copy{text-align:right}
.home-hero-copy p{margin:0 0 20px;font-size:16.5px;line-height:2.4;color:#3d4a45}
.home-hero-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
/* موبایل هم دوستونی می‌ماند: لوگو راست، متن و دکمه چپ */
@media(max-width:820px){
  .home-hero-split{grid-template-columns:minmax(96px,.8fr) minmax(0,1.2fr);gap:14px;align-items:center}
  .home-hero-logo img{width:100%;max-width:150px}
  .home-hero-copy{text-align:right}
  .home-hero-copy p{font-size:13px;line-height:2.05;margin-bottom:12px}
  .home-hero-cta{width:100%;padding:11px 12px;font-size:12.5px;text-align:center}
}
@media(max-width:420px){
  .home-hero-split{grid-template-columns:minmax(78px,.75fr) minmax(0,1.25fr);gap:11px}
  .home-hero-logo img{max-width:110px}
  .home-hero-copy p{font-size:12px;line-height:1.95;margin-bottom:10px}
  .home-hero-cta{padding:10px 8px;font-size:11.5px}
}

/* صفحه معرفی */
.about-page{padding:30px 0 56px}
.about-head{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.about-logo{width:86px;height:86px;object-fit:contain;flex:none}
.about-head h1{margin:4px 0 0;font-size:26px}
.about-body{background:#fff;border:1px solid #e7ece9;border-radius:22px;padding:28px;box-shadow:0 14px 36px rgba(14,45,35,.05)}
.about-body h2{margin:24px 0 10px;font-size:18px;color:var(--app-green-dark,#0c5b47)}
.about-body h2:first-child{margin-top:0}
.about-body p{margin:0 0 14px;line-height:2.4;color:#3d4a45;text-align:justify}
.about-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
@media(max-width:600px){.about-head{flex-direction:column;text-align:center;gap:10px}.about-logo{width:70px;height:70px}.about-body{padding:20px;border-radius:18px}}

/* پویش */
.campaign-page{padding:26px 0 60px}
.campaign-hero{text-align:center;margin-bottom:22px}
.campaign-hero h1{margin:6px 0 8px;font-size:30px}
.campaign-hero p{color:#5d6b66;font-size:15px;margin:0}
.campaign-video{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:26px}
.campaign-video-frame{position:relative;width:min(820px,100%);aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:22px;border:1.5px dashed #cfdad5;background:linear-gradient(135deg,#f4f8f6,#eef4f1);color:#7b8783;text-align:center;padding:20px}
.campaign-video-frame p{margin:0;font-size:13.5px}
.campaign-video-badge{padding:5px 14px;border-radius:999px;background:#fff;border:1px solid #e0e7e3;font-size:12px;color:var(--app-green-dark,#0c5b47)}
.campaign-start{min-width:210px}
.campaign-content{display:flex;flex-direction:column;gap:26px}
.campaign-block{background:#fff;border:1px solid #e7ece9;border-radius:22px;padding:26px;box-shadow:0 12px 30px rgba(14,45,35,.05)}
.campaign-block h2{margin:0 0 14px;font-size:19px;color:var(--app-green-dark,#0c5b47);line-height:1.9}
.campaign-block p{margin:0 0 12px;line-height:2.4;color:#3d4a45;text-align:justify}
.campaign-block p:last-child{margin-bottom:0}
.campaign-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:16px 0}
.campaign-card{display:flex;flex-direction:column;gap:7px;padding:18px;border-radius:16px;background:#f7faf8;border:1px solid #e7ece9;text-align:center;align-items:center}
.campaign-card-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;background:#fff;color:var(--app-green-dark,#0c5b47);border:1px solid #e0e7e3}
.campaign-card-icon .app-svg-icon{width:23px;height:23px}
.campaign-card b{font-size:14.5px}
.campaign-card span{font-size:12.5px;color:#6b7772;line-height:2}
.campaign-list{margin:6px 0 14px;padding-inline-start:20px;color:#3d4a45}
.campaign-list li{line-height:2.3;margin-bottom:4px}
.campaign-points .campaign-point-rows{display:flex;flex-direction:column;gap:8px}
.campaign-point-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:13px;background:#f7faf8;border:1px solid #e7ece9;font-size:13.5px}
.campaign-point-row b{color:var(--app-green-dark,#0c5b47);white-space:nowrap}

/* کارت ثبت‌نام پویش */
.campaign-register-card{background:linear-gradient(135deg,#0c5b47,#0f7359);color:#fff;border-radius:22px;padding:28px;box-shadow:0 18px 44px rgba(12,91,71,.28)}
.campaign-register-card h3{margin:0 0 6px;font-size:20px;color:#fff}
.campaign-register-card>p{margin:0 0 18px;font-size:13.5px;opacity:.92;line-height:2}
.campaign-register-card .app-field span{color:rgba(255,255,255,.9)}
.campaign-register-card .app-field input,.campaign-register-card .app-field select{background:rgba(255,255,255,.96);border-color:transparent}
.campaign-register-card .app-primary-btn{width:100%;background:#fff;color:var(--app-green-dark,#0c5b47);margin-top:6px}
.campaign-register-card .app-field-help{color:rgba(255,255,255,.78)}
.campaign-register-card .account-otp-actions{margin-top:12px}
.campaign-register-card .account-link-btn{color:#fff;text-decoration:underline}
.campaign-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){
  .campaign-form-grid{grid-template-columns:1fr}
  .campaign-block{padding:20px;border-radius:18px}
  .campaign-hero h1{font-size:24px}
  .campaign-register-card{padding:22px;border-radius:18px}
}

/* patch14: صفحه تازه پویش بر پایه بنر نهایی و تصاویر new design */
.campaign-page-v3{padding:0 0 76px;overflow:hidden;background:radial-gradient(circle at 10% 15%,rgba(37,211,190,.12),transparent 28%),linear-gradient(180deg,#effcf9,#fff 44%,#f5fbff)}
.campaign-v3-hero{position:relative;width:min(1920px,100%);margin:0 auto;background:#063f50;overflow:hidden}
.campaign-v3-hero>img{display:block;width:100%;height:auto}
.campaign-v3-hero-cta{position:absolute;bottom:22px;right:clamp(12px,5vw,96px);min-width:160px;min-height:44px;padding:9px 18px;border:2px solid rgba(255,255,255,.72);border-radius:999px;background:linear-gradient(135deg,#ff3e58,#ed173f);box-shadow:0 12px 32px rgba(132,8,34,.34);color:#fff;font:inherit;font-size:15px;font-weight:900;cursor:pointer;transition:.18s}
.campaign-v3-hero-cta:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(132,8,34,.44)}
@media(max-width:640px){.campaign-v3-hero .campaign-v3-hero-cta{right:12px;bottom:10px;min-width:120px;min-height:44px;padding:7px 13px;font-size:12px}}
.campaign-v3-hero-cta:focus-visible,.campaign-tip-arrow:focus-visible,.campaign-tip-dots button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.campaign-v3-content{display:flex;flex-direction:column;gap:30px;padding-top:36px}
.campaign-dashboard-loading{padding:14px 18px;border-radius:14px;background:#fff;color:#07545a;text-align:center;box-shadow:0 12px 30px rgba(4,77,77,.08)}
.campaign-v3-dashboard-wrap{padding:26px;border-radius:22px;background:#fff;box-shadow:0 16px 42px rgba(4,77,77,.08)}
.campaign-v3-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:28px;padding:34px;border:1px solid #d9efea;border-radius:28px;background:rgba(255,255,255,.94);box-shadow:0 18px 54px rgba(0,82,79,.08)}
.campaign-v3-intro img{width:100%;max-height:390px;object-fit:contain}
.campaign-v3-copy h1,.campaign-v3-title h2{margin:4px 0 12px;color:#07545a;font-size:clamp(23px,3vw,36px);line-height:1.55}
.campaign-v3-copy p,.campaign-v3-title p{margin:0 0 10px;color:#40556a;line-height:2.25}
.campaign-v3-kicker,.campaign-v3-title small{color:#ef294d;font-size:12px;font-weight:900;letter-spacing:.02em}
.campaign-v3-section{padding:34px;border:1px solid #dbeeea;border-radius:28px;background:#fff;box-shadow:0 16px 46px rgba(4,77,77,.065)}
.campaign-v3-title{text-align:center;max-width:790px;margin:0 auto 23px}
.campaign-v3-title p{font-size:13.5px}
.campaign-v3-why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.campaign-v3-why article{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 18px;border-radius:20px;background:linear-gradient(155deg,#f8fffd,#eefaf7);border:1px solid #d7eee8}
.campaign-v3-why img{width:92px;height:92px;object-fit:contain;margin-bottom:8px}
.campaign-v3-why b{min-height:52px;color:#07545a;font-size:14.5px;line-height:1.8}
.campaign-v3-why p{margin:5px 0 0;color:#64748b;font-size:12.5px;line-height:2}
.campaign-v3-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.campaign-v3-format-grid article{position:relative;overflow:hidden;min-height:280px;border-radius:22px;background:#082f49;box-shadow:0 13px 30px rgba(15,45,65,.16)}
.campaign-v3-format-grid img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover}
.campaign-v3-format-grid article>div{position:absolute;inset:auto 15px 15px;padding:14px 17px;border:1px solid rgba(255,255,255,.55);border-radius:16px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px)}
.campaign-v3-format-grid b{display:block;color:#6f24c8;font-size:18px}
.campaign-v3-format-grid article+article b{color:#e52043}
.campaign-v3-format-grid p{margin:4px 0 0;color:#263d57;font-size:13px;line-height:1.95}
.campaign-tips{overflow:hidden;background:linear-gradient(180deg,#f8fffd,#edf8f4)}
.campaign-tips-stage{position:relative;max-width:920px;margin:0 auto}
.campaign-tip-track{display:grid;grid-template-columns:.82fr 1fr .82fr;align-items:center;gap:18px;padding:10px 52px 18px}
.campaign-tip-card{margin:0;overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 16px 34px rgba(7,84,90,.12);transition:transform .25s ease,opacity .25s ease}
.campaign-tip-card.is-side{opacity:.68;transform:scale(.91)}
.campaign-tip-card.is-current{position:relative;z-index:1}
.campaign-tip-card img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover}
.campaign-tip-arrow{position:absolute;z-index:3;top:50%;width:44px;height:44px;transform:translateY(-50%);border:0;border-radius:50%;background:#075f59;color:#fff;font:inherit;font-size:32px;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(7,84,90,.24)}
.campaign-tip-arrow:hover{background:#064b47}
.campaign-tip-arrow.previous{right:0}.campaign-tip-arrow.next{left:0}
.campaign-tip-dots{display:flex;justify-content:center;gap:9px}
.campaign-tip-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:#b9cec8;cursor:pointer}
.campaign-tip-dots button.active{width:28px;border-radius:999px;background:#075f59}
.campaign-v3-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.campaign-v3-timeline article{display:grid;grid-template-columns:135px 1fr;align-items:center;gap:18px;padding:25px;border:1px solid #dbeeea;border-radius:24px;background:#fff}
.campaign-v3-timeline img{width:125px;height:125px;object-fit:contain}
.campaign-v3-timeline small{font-weight:800;color:#ef294d}
.campaign-v3-timeline h2{margin:4px 0;color:#07545a;font-size:21px}
.campaign-v3-timeline p{margin:0;color:#607086;font-size:12.5px;line-height:2}
.campaign-v3-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.campaign-v3-rules article{display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;padding:18px 12px;border-radius:19px;background:#f8fbff;border:1px solid #e2eaf3}
.campaign-v3-rules img{width:82px;height:82px;object-fit:contain}
.campaign-v3-rules b{color:#17395a;font-size:13px;line-height:1.9}
.campaign-v3-rewards{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:16px;align-items:start}
.campaign-v3-prizes,.campaign-v3-points{padding:30px;border:1px solid #dbeeea;border-radius:27px;background:#fff;box-shadow:0 15px 42px rgba(4,77,77,.06)}
.campaign-v3-prize-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.campaign-v3-prize-grid article{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 8px;border-radius:16px;background:#f7fbfa;border:1px solid #e2efec}
.campaign-v3-prize-grid img{width:92px;height:92px;object-fit:contain}
.campaign-v3-prize-grid b{font-size:11.5px;line-height:1.75;color:#17395a}
.campaign-v3-points .campaign-point-row{border:1px solid #cfe8e3;background:#f2faf8}
.campaign-v3-points .campaign-point-row.award{border-color:#f3c9d1;background:#fff4f6}
.campaign-v3-final{position:relative;min-height:360px;overflow:hidden;border-radius:30px;background:#07545a;color:#fff;box-shadow:0 22px 54px rgba(0,64,85,.2)}
.campaign-v3-final>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%}
.campaign-v3-final:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,32,58,.12),rgba(3,32,58,.82))}
.campaign-v3-final>div{position:relative;z-index:1;width:52%;margin:0 auto;padding:56px 48px;text-align:center}
.campaign-v3-final small{font-weight:800;color:#b8fff4}
.campaign-v3-final h2{margin:8px 0;color:#fff;font-size:32px}
.campaign-v3-final p{line-height:2;color:#fff}
.campaign-cta-red{min-height:48px;padding:10px 23px;border:0;border-radius:14px;color:#fff;background:#e92248;box-shadow:0 11px 24px rgba(169,31,47,.34);font:inherit;font-weight:900;cursor:pointer}
.campaign-supporters{padding:34px;border-radius:22px;background:#fff;box-shadow:0 16px 42px rgba(4,77,77,.07)}
.campaign-supporter-list{display:grid;grid-template-columns:repeat(2,minmax(0,280px));justify-content:center;align-items:stretch;gap:22px}
.campaign-supporter-list figure{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;margin:0;padding:22px;border:1px solid #dbe9e4;border-radius:16px;background:#fbfdfc;text-align:center}
.campaign-supporter-list img{display:block;width:100%;height:160px;object-fit:contain}
.campaign-supporter-list figcaption{color:#17483e;font-size:13px;font-weight:800;line-height:1.8}
.floating-support-link{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:1200;display:grid;place-items:center;width:58px;height:58px;border:2px solid rgba(255,255,255,.9);border-radius:50%;background:linear-gradient(145deg,#138d75,#08705f);color:#fff;box-shadow:0 12px 30px rgba(4,69,58,.34);transition:transform .2s ease,box-shadow .2s ease}
.floating-support-link:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 16px 34px rgba(4,69,58,.42)}
.floating-support-link:focus-visible{outline:3px solid #f4c95d;outline-offset:3px}
.floating-support-link svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){.floating-support-link{right:max(13px,env(safe-area-inset-right));bottom:calc(82px + env(safe-area-inset-bottom));width:52px;height:52px}.floating-support-link svg{width:26px;height:26px}}
.histats-counter{display:inline-flex;min-width:1px;min-height:1px;align-items:center}
.campaign-page-v3 .campaign-register-card{max-width:900px;width:100%;margin:0 auto;background:linear-gradient(135deg,#07545a,#009786);border:1px solid rgba(255,255,255,.16);box-shadow:0 20px 52px rgba(0,85,82,.22)}
@media(max-width:960px){.campaign-v3-intro{grid-template-columns:1fr}.campaign-v3-intro img{max-height:330px}.campaign-v3-rewards{grid-template-columns:1fr}.campaign-v3-why,.campaign-v3-rules{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-v3-timeline article{grid-template-columns:105px 1fr}.campaign-v3-timeline img{width:100px;height:100px}}
@media(max-width:640px){.campaign-page-v3{padding-bottom:50px}.campaign-v3-hero-cta{bottom:10px;min-width:158px;padding:9px 16px;font-size:13px}.campaign-v3-content{padding-top:22px;gap:19px}.campaign-v3-dashboard-wrap{padding:16px}.campaign-v3-intro,.campaign-v3-section,.campaign-v3-prizes,.campaign-v3-points,.campaign-supporters{padding:21px 16px;border-radius:16px}.campaign-v3-intro{gap:12px}.campaign-v3-copy h1,.campaign-v3-title h2{font-size:22px}.campaign-v3-copy p{font-size:13px}.campaign-v3-why,.campaign-v3-format-grid,.campaign-v3-timeline{grid-template-columns:1fr}.campaign-v3-why article{display:grid;grid-template-columns:72px 1fr;text-align:right;padding:14px}.campaign-v3-why img{grid-row:1/3;width:64px;height:64px;margin:0}.campaign-v3-why b{min-height:0}.campaign-v3-why p{margin:0}.campaign-v3-format-grid article,.campaign-v3-format-grid img{min-height:230px}.campaign-tip-track{grid-template-columns:.24fr 1fr .24fr;gap:8px;padding:6px 0 14px}.campaign-tip-card.is-side{opacity:.38;transform:scale(.86)}.campaign-tip-arrow{width:40px;height:40px}.campaign-tip-arrow.previous{right:2px}.campaign-tip-arrow.next{left:2px}.campaign-v3-timeline article{grid-template-columns:82px 1fr;padding:17px;gap:11px}.campaign-v3-timeline img{width:78px;height:78px}.campaign-v3-timeline h2{font-size:17px}.campaign-v3-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.campaign-v3-rules article{padding:13px 8px}.campaign-v3-rules img{width:66px;height:66px}.campaign-v3-prize-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-v3-final{min-height:390px;border-radius:16px}.campaign-v3-final:after{background:linear-gradient(0deg,rgba(3,32,58,.93),rgba(3,32,58,.08) 80%)}.campaign-v3-final>div{position:absolute;inset:auto 0 0;width:100%;padding:30px 20px}.campaign-v3-final h2{font-size:25px}.campaign-v3-final p{font-size:13px}.campaign-supporter-list{grid-template-columns:1fr 1fr;gap:10px}.campaign-supporter-list figure{padding:14px 9px}.campaign-supporter-list img{height:110px}.campaign-supporter-list figcaption{font-size:11px}}

/* مودال موفقیت پویش */
.campaign-success{text-align:center}
.campaign-success-badge{display:inline-flex;align-items:center;justify-content:center;width:62px;height:62px;margin-bottom:10px;border-radius:20px;background:#ecfdf5;color:#0c5b47}
.campaign-success-badge .app-svg-icon{width:30px;height:30px;fill:currentColor}
.campaign-award{margin:6px 0 18px!important;font-size:15px!important;font-weight:700;color:var(--app-green-dark,#0c5b47)!important}
.campaign-ravian-zone{margin:16px 0;padding-top:16px;border-top:1px solid #eef2f0}
.campaign-ravian-toggle{width:100%}
.campaign-ravian-form{display:flex;flex-direction:column;gap:10px;text-align:right;margin-top:12px}
.campaign-ravian-hint{margin:0!important;font-size:12.5px;color:#6b7772!important}
.campaign-ravian-error{padding:9px 12px;border-radius:11px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:12.5px}
.campaign-ravian-done{padding:14px;border-radius:14px;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}
.campaign-ravian-done b{display:block;margin-bottom:4px}
.campaign-ravian-done p{margin:0!important;font-size:12.5px;color:#065f46!important;line-height:2}
.campaign-success-actions{display:flex;gap:8px;margin-top:14px}
.campaign-success-actions>*{flex:1;text-align:center;text-decoration:none}

/* داشبورد شرکت‌کننده پویش */
.campaign-dashboard{display:flex;flex-direction:column;gap:22px}
.campaign-dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:24px;border-radius:22px;background:linear-gradient(135deg,#f1f8f5,#fff);border:1px solid #dceae4}
.campaign-dashboard-head h1{margin:5px 0 7px;font-size:28px;color:var(--app-green-dark,#0c5b47)}
.campaign-dashboard-head p{margin:0;color:#65716c}
.campaign-dashboard-actions{display:flex;flex-wrap:wrap;gap:8px}
.campaign-me-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.campaign-me-card{display:flex;flex-direction:column;gap:5px;padding:18px;border-radius:17px;background:#fff;border:1px solid #e2e9e5;text-align:center}
.campaign-me-card small{color:#7a8681}.campaign-me-card b{font-size:24px;color:#0c5b47}
.campaign-copy-notice,.narrative-report-notice{padding:9px 13px;border-radius:11px;background:#ecfdf5;color:#065f46;font-size:12.5px}
.campaign-own-section h2,.campaign-referral-card h2,.campaign-leaderboard h2{margin:0 0 13px;font-size:18px}
.campaign-own-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.campaign-post-card{overflow:hidden;border:1px solid #e2e9e5;border-radius:18px;background:#fff}
.campaign-post-card.status-approved{border-color:#a7d9c7}.campaign-post-card.status-rejected{border-color:#fecaca}.campaign-post-card.status-pending{border-color:#fde68a}
.campaign-post-media{height:190px;background:#eef3f0}.campaign-post-media>img,.campaign-post-media>video{width:100%;height:100%;object-fit:cover}
.campaign-post-audio{position:relative;width:100%;height:100%}.campaign-post-audio img{width:100%;height:100%;object-fit:cover;opacity:.78}.campaign-post-audio .app-svg-icon{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:34px;height:34px;color:#0c5b47}
.campaign-post-body{display:flex;flex-direction:column;gap:10px;padding:14px}.campaign-post-body p{margin:0;line-height:1.9;color:#3d4a45}
.campaign-post-status{display:flex;align-items:center;justify-content:space-between;gap:8px}.campaign-post-status span{font-size:12px}.campaign-post-status b{color:#0c5b47;font-size:13px}
.campaign-post-metrics{display:flex;flex-wrap:wrap;gap:8px;color:#6b7772;font-size:11.5px}.campaign-post-rejection{padding:8px 10px;border-radius:9px;background:#fef2f2;color:#991b1b;font-size:12px;line-height:1.9}
.campaign-post-body>a{font-size:12.5px;font-weight:700;color:#0c5b47}
.campaign-referral-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border-radius:20px;background:#0c5b47;color:#fff}.campaign-referral-card h2{color:#fff}.campaign-referral-card p{margin:0 0 8px;opacity:.86}.campaign-referral-card code{direction:ltr;display:inline-block;padding:5px 10px;border-radius:9px;background:rgba(255,255,255,.13);color:#fff}
.campaign-leaderboard{padding:20px;border:1px solid #e2e9e5;border-radius:20px;background:#fff}.campaign-leader-list{display:flex;flex-direction:column;gap:7px}.campaign-leader-row{display:grid;grid-template-columns:34px 38px 1fr auto;align-items:center;gap:10px;padding:9px 11px;border-radius:12px;background:#f7faf8}.campaign-leader-row.is-me{background:#e7f6ef;border:1px solid #bde5d4}.campaign-rank{text-align:center;color:#0c5b47}.campaign-leader-row img,.campaign-rank-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.campaign-rank-avatar{display:flex;align-items:center;justify-content:center;background:#dceae4;color:#0c5b47;font-weight:700}.campaign-leader-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-leader-row strong{font-size:12.5px;color:#0c5b47}
.campaign-ravian-modal .campaign-ravian-form{padding:18px;margin:0}
.narrative-comment-meta{display:flex;align-items:center;gap:10px}.narrative-comment-meta button{border:0;background:transparent;color:#9a6359;font:inherit;font-size:10.5px;cursor:pointer;padding:0}.narrative-comment-meta button:disabled{color:#98a29e;cursor:default}
@media(max-width:760px){.campaign-dashboard-head{align-items:stretch;flex-direction:column}.campaign-dashboard-actions>*{flex:1}.campaign-own-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-referral-card{align-items:stretch;flex-direction:column}}
@media(max-width:520px){.campaign-me-grid{grid-template-columns:1fr 1fr}.campaign-me-card:last-child{grid-column:1/-1}.campaign-own-grid{grid-template-columns:1fr}.campaign-post-media{height:230px}.campaign-leader-row{grid-template-columns:28px 34px 1fr auto}.campaign-leader-row strong{font-size:11px}}

/* ===== نسخه ۲.۱.۱۸ — بنر نصب PWA ===== */
.pwa-install-bar{position:fixed;z-index:900;inset-inline:12px;bottom:calc(96px + env(safe-area-inset-bottom,0px));background:#fff;border:1px solid #e0e7e3;border-radius:20px;box-shadow:0 18px 44px rgba(14,45,35,.18);padding:14px 16px;animation:pwaSlideUp .35s ease}
@keyframes pwaSlideUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.pwa-install-main{display:flex;align-items:center;gap:12px}
.pwa-install-logo{width:44px;height:44px;border-radius:12px;flex:none;object-fit:contain;background:#f7faf8;border:1px solid #eef2f0}
.pwa-install-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.pwa-install-copy b{font-size:13.5px}
.pwa-install-copy span{font-size:11.5px;color:#7b8783;line-height:1.85}
.pwa-install-btn{flex:none;padding:9px 18px;font-size:12.5px;white-space:nowrap}
.pwa-install-close{position:absolute;top:8px;inset-inline-start:10px;width:24px;height:24px;border:0;border-radius:50%;background:transparent;color:#9aa4a0;font-size:19px;line-height:1;cursor:pointer}
.pwa-install-close:hover{background:#f2f5f3;color:#3d4a45}
.pwa-install-steps{margin:14px 0 0;padding-inline-start:20px;border-top:1px solid #eef2f0;padding-top:12px}
.pwa-install-steps li{font-size:12.5px;color:#3d4a45;line-height:2.1;margin-bottom:3px}
@media(min-width:761px){.pwa-install-bar{inset-inline:auto 20px;bottom:20px;width:400px}}
@media(max-width:400px){.pwa-install-main{gap:9px}.pwa-install-copy span{font-size:11px}.pwa-install-btn{padding:9px 12px;font-size:11.5px}}

/* ===== نسخه ۲.۱.۱۹ ===== */

/* عکس پروفایل شهید: پر کردن کامل قاب */
.martyr-profile-photo img{object-fit:cover!important;object-position:center top}.martyr-profile-photo img.is-logo-fallback{object-fit:contain!important;padding:clamp(36px,8vw,90px);background:#eef5f1}

/* فالبک لوگو در کارت شهدا */
.martyr-image img.is-logo-fallback{object-fit:contain;padding:16%;background:#f7faf8;opacity:.85}

/* دکمه سبز مرکزی: بالاتر، با فاصله بیشتر تا برچسب */
.app-desktop-nav{align-items:end}
.app-desktop-nav .desktop-create{align-self:end;display:flex;flex-direction:column;align-items:center;gap:9px;transform:translateY(-16px)}
.app-desktop-nav .desktop-create-icon{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:var(--app-green-dark,#0c5b47);color:#fff;box-shadow:0 10px 24px rgba(12,91,71,.32)}
.app-desktop-nav .desktop-create-icon .app-svg-icon{width:26px;height:26px}
.app-desktop-nav .desktop-create>span:last-child{display:block;line-height:1}
@media(max-width:760px){
  .app-bottom-nav .app-nav-create{transform:translateY(-16px)!important;gap:7px!important}
  .app-bottom-nav .app-nav-create>span:last-child{margin-top:4px!important;height:auto!important;line-height:1.2!important}
}

/* انتخابگر تاریخ شمسی */
.jalali-picker{display:flex;gap:6px;align-items:center}
.jalali-picker select{flex:1;min-width:0}
.jalali-clear{flex:none;width:32px;height:32px;border:1px solid #e0e7e3;border-radius:9px;background:#fff;color:#9aa4a0;font-size:17px;line-height:1;cursor:pointer}
.jalali-clear:hover{color:#b91c1c;border-color:#fecaca}

/* نمایش رمز عبور */
.password-field{position:relative;display:flex;align-items:center}
.password-field input{width:100%;padding-inline-start:42px}
.password-toggle{position:absolute;inset-inline-start:6px;width:32px;height:32px;border:0;border-radius:8px;background:transparent;font-size:16px;line-height:1;cursor:pointer;opacity:.75}
.password-toggle:hover{opacity:1;background:#f2f5f3}

/* صفحه معرفی */
.about-lead-title{margin:4px 0 0;color:var(--app-green-dark,#0c5b47);font-size:14.5px;font-weight:700}
.about-lead{margin:0 0 22px;padding:20px 22px;border-radius:18px;background:#f2f8f5;border:1px solid #d9e8e1}
.about-lead p{margin:0;line-height:2.35;color:#26332e;text-align:justify}
.about-sections{display:flex;flex-direction:column;gap:18px}
.about-section{background:#fff;border:1px solid #e7ece9;border-radius:20px;padding:24px;box-shadow:0 10px 26px rgba(14,45,35,.045)}
.about-section-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #eef2f0}
.about-section-head h2{margin:0;font-size:19px;color:var(--app-green-dark,#0c5b47)}
.about-section-sub{margin:6px 0 0;font-size:13.5px;color:#5d6b66;line-height:2}
.about-block{margin-bottom:16px}
.about-block:last-child{margin-bottom:0}
.about-block h3{margin:0 0 8px;font-size:15px;color:#26332e}
.about-block p{margin:0 0 10px;line-height:2.35;color:#3d4a45;text-align:justify}
@media(max-width:600px){.about-section{padding:18px;border-radius:16px}.about-section-head h2{font-size:17px}.about-lead{padding:16px}}

/* تب‌های راوی با زیرتیتر */
.ravian-tabs button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:right;padding:11px 14px;line-height:1.6}
.ravian-tabs button b{font-size:13.5px}
.ravian-tabs button small{font-size:10.5px;opacity:.75;line-height:1.7}

/* ===== نسخه ۲.۱.۲۰ ===== */

/* آیکون ستاره‌گرام: دایره کامل، نه بیضی */
.app-desktop-nav .desktop-create-icon,
.app-bottom-nav .app-nav-create-circle{
  flex:0 0 auto;aspect-ratio:1/1;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;padding:0
}
.app-desktop-nav .desktop-create-icon{width:54px!important;height:54px!important;min-width:54px;min-height:54px}
.app-bottom-nav .app-nav-create-circle{width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important}
.app-bottom-nav .app-nav-create{transform:translateY(-20px)!important;gap:8px!important}
.app-bottom-nav .app-nav-create>span:last-child{margin-top:5px!important}
@media(max-width:400px){
  .app-bottom-nav .app-nav-create-circle{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important}
  .app-bottom-nav .app-nav-create{transform:translateY(-17px)!important}
}

/* نوار جانشینی مدیر */
.impersonation-bar{position:sticky;top:0;z-index:950;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding:9px 14px;background:#7c2d12;color:#fff;font-size:12.5px;line-height:1.9}
.impersonation-bar b{color:#fed7aa}
.impersonation-bar button{border:0;border-radius:999px;padding:6px 14px;background:#fff;color:#7c2d12;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.impersonation-bar button:hover{background:#ffedd5}

/* روایت‌های بیشتر در انتهای صفحه */
.narrative-more{margin-top:28px}
.narrative-more-title{margin:0 0 12px;font-size:16px;color:var(--app-green-dark,#0c5b47)}
.narrative-more-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media(min-width:760px){.narrative-more-list{grid-template-columns:repeat(4,minmax(0,1fr))}}
.narrative-more-loading,.narrative-more-end{margin:16px 0 4px;text-align:center;font-size:12.5px;color:#8a948f}

/* ===== نسخه ۲.۱.۲۴ ===== */

/* کارت خبر: ادامه مطلب */
.news-image{display:block;overflow:hidden}
.news-image video{width:100%;height:100%;object-fit:cover;display:block}
.news-content h3 a{color:inherit;text-decoration:none}
.news-content h3 a:hover{color:var(--app-green-dark,#0c5b47)}
.news-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;flex-wrap:wrap}
.news-more{font-size:12.5px;font-weight:700;color:var(--app-green-dark,#0c5b47);text-decoration:none;white-space:nowrap}
.news-more:hover{text-decoration:underline}

/* صفحه خبر */
.news-detail-page{padding:24px 0 56px}
.news-detail-title{margin:10px 0 8px;font-size:26px;line-height:1.7}
.news-detail-meta{margin-bottom:16px}
.news-detail-media{margin:0 0 20px;border-radius:20px;overflow:hidden;background:#f2f5f3;border:1px solid #e7ece9}
.news-detail-media img,.news-detail-media video{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#0d1512}
.news-detail-lead{font-size:15px;line-height:2.4;color:#26332e;padding:16px 18px;border-radius:15px;background:#f2f8f5;border:1px solid #d9e8e1;margin:0 0 18px}
.news-detail-body p{margin:0 0 14px;line-height:2.5;color:#3d4a45;text-align:justify}
.news-related{margin-top:32px;padding-top:22px;border-top:1px solid #eef2f0}
.news-related h2{margin:0 0 14px;font-size:17px;color:var(--app-green-dark,#0c5b47)}
.news-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.news-related-card{display:flex;flex-direction:column;gap:8px;padding:11px;border-radius:15px;border:1px solid #e7ece9;background:#fff;text-decoration:none;color:inherit}
.news-related-card:hover{border-color:var(--app-green-dark,#0c5b47)}
.news-related-card img{width:100%;height:118px;object-fit:cover;border-radius:11px}
.news-related-card b{font-size:13px;line-height:1.9}
.news-related-card small{font-size:11px;color:#8a948f}
.news-detail-actions{margin-top:24px}
@media(max-width:600px){.news-detail-title{font-size:21px}.news-detail-lead{font-size:13.5px;padding:13px}}

/* فید عمودی روایت‌ها (سبک ریلز) */
.narrative-feed{display:flex;flex-direction:column;gap:18px}
.narrative-feed-card{border:1px solid #e7ece9;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 10px 26px rgba(14,45,35,.05)}
.narrative-feed-card .feed-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}
.narrative-feed-card .feed-user{display:flex;align-items:center;gap:9px;text-decoration:none;color:inherit;min-width:0}
.narrative-feed-card .feed-user b{font-size:13.5px}
.narrative-feed-card .feed-media{display:block;background:#0d1512;line-height:0}
.narrative-feed-card .feed-media img,.narrative-feed-card .feed-media video{width:100%;max-height:74vh;object-fit:contain;display:block}
.media-playback-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:90px;padding:16px;background:#17211e;color:#fff;line-height:1.8;text-align:center}.media-playback-error small{color:#cbd5d1;font-size:11px}.narrative-post-media>.media-playback-error,.feed-media>.media-playback-error{position:absolute;inset:auto 12px 12px;border-radius:14px;min-height:0;z-index:3}.feed-media,.narrative-post-media{position:relative}

/* پیام‌رسان کاربری؛ فهرست و گفت‌وگو با الگوی ساده و آشنای شبکه‌های اجتماعی */
.direct-messages-page{padding:22px 0 42px}.direct-messages-shell{display:grid;grid-template-columns:340px minmax(0,1fr);height:min(720px,calc(100vh - 170px));min-height:560px;overflow:hidden;border:1px solid #dce8e3;border-radius:24px;background:#fff;box-shadow:0 18px 55px rgba(20,69,54,.09);direction:rtl}.direct-thread-list{display:flex;flex-direction:column;overflow-y:auto;border-left:1px solid #e3ece8}.direct-thread-title{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:17px 15px;background:rgba(255,255,255,.96);border-bottom:1px solid #e6eeeb;backdrop-filter:blur(10px)}.direct-thread-title small{display:block;color:#81918b;font-size:10px}.direct-thread-title h1{margin:2px 0 0;color:#174b3c;font-size:20px}.support-start-btn{border:0;border-radius:12px;padding:9px 11px;background:#08775c;color:#fff;font:inherit;font-size:10.5px;font-weight:800;cursor:pointer}.direct-thread-row{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;border:0;border-bottom:1px solid #eef3f1;background:#fff;text-align:right;font:inherit;cursor:pointer}.direct-thread-row:hover,.direct-thread-row.active{background:#f0faf6}.direct-thread-row.unread .direct-thread-copy b{font-weight:950;color:#075e48}.direct-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#eaf5f1;color:#08775c}.direct-avatar.support{background:linear-gradient(145deg,#057052,#12aa83);color:#fff}.direct-avatar .app-svg-icon{width:22px}.direct-thread-copy{min-width:0}.direct-thread-copy b,.direct-thread-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.direct-thread-copy b{color:#263d35;font-size:12px}.direct-thread-copy small{margin-top:4px;color:#83908b;font-size:10px}.direct-unread{min-width:21px;height:21px;display:grid;place-items:center;padding:0 5px;border-radius:12px;background:#09a47b;color:#fff;font-size:9px;font-style:normal}.direct-chat-pane{min-width:0;display:flex;flex-direction:column;background:linear-gradient(180deg,#f7fbf9,#f1f7f4)}.direct-chat-head{display:flex;align-items:center;gap:10px;min-height:72px;padding:11px 17px;background:#fff;border-bottom:1px solid #e4ece9}.direct-chat-head>div:not(.direct-chat-menu){min-width:0;flex:1}.direct-chat-head b,.direct-chat-head small{display:block}.direct-chat-head b{color:#23483c;font-size:13px}.direct-chat-head small{margin-top:3px;color:#89968f;font-size:10px}.direct-back{display:none;border:0;background:transparent;font:inherit;font-size:20px}.direct-chat-menu{margin-right:auto;display:flex;gap:5px}.direct-chat-menu button{border:1px solid #d8e4df;border-radius:9px;padding:6px 8px;background:#fff;color:#6b7772;font:inherit;font-size:9.5px;cursor:pointer}.direct-chat-menu button:last-child{color:#a43d3d}.direct-chat-messages{flex:1;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding:22px}.direct-bubble{max-width:min(72%,560px);padding:9px 12px;border-radius:17px;line-height:1.8;box-shadow:0 3px 12px rgba(25,60,49,.05)}.direct-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.direct-bubble small{display:block;margin-top:4px;font-size:8.5px;opacity:.65}.direct-bubble.mine{align-self:flex-start;border-bottom-right-radius:5px;background:#0a8b69;color:#fff}.direct-bubble.theirs{align-self:flex-end;border:1px solid #e0e9e5;border-bottom-left-radius:5px;background:#fff;color:#334b43}.direct-chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:12px 15px;background:#fff;border-top:1px solid #e2ebe7}.direct-chat-form textarea{resize:none;max-height:110px;padding:10px 13px;border:1px solid #d6e2dd;border-radius:15px;background:#f8fbfa;font:inherit;font-size:12px;line-height:1.7;outline:0}.direct-chat-form textarea:focus{border-color:#0ba27a}.direct-chat-form .app-primary-btn{min-width:74px;border-radius:13px}.direct-chat-empty{margin:auto;max-width:360px;text-align:center;color:#788a83}.direct-chat-empty .app-svg-icon{width:54px;color:#8dc7b5}.direct-chat-empty h2{margin:9px 0 4px;color:#285849}.direct-chat-empty p{margin:0;line-height:2;font-size:11.5px}.direct-chat-error{padding:8px 15px;background:#fff1f2;color:#9f1239;font-size:11px}
@media(max-width:760px){.direct-messages-page{padding:0}.direct-messages-page>.container{width:100%}.direct-messages-shell{display:block;height:calc(100vh - 138px);min-height:520px;border:0;border-radius:0;box-shadow:none}.direct-thread-list,.direct-chat-pane{height:100%}.direct-messages-shell.has-active .direct-thread-list{display:none}.direct-messages-shell:not(.has-active) .direct-chat-pane{display:none}.direct-back{display:block}.direct-chat-head{min-height:65px;padding:8px 10px}.direct-chat-menu button{padding:5px;font-size:8.5px}.direct-chat-messages{padding:14px 11px}.direct-bubble{max-width:84%}.direct-chat-form{padding:9px}.direct-thread-title{padding:13px 12px}.narrative-profile-head>.app-primary-btn{grid-column:1/-1;width:100%;text-align:center}}
.support-department-picker{display:grid;gap:10px;padding:15px;border-bottom:1px solid #e3ece8;background:#f4faf7}.support-department-picker label{font-size:12px;font-weight:800;color:#194d3d}.support-department-picker select{width:100%;min-height:44px;padding:9px 12px;border:1px solid #bdcfc7;border-radius:11px;background:#fff;color:#1d3f33;font:inherit}.support-department-picker .app-primary-btn{min-height:42px}.support-department-picker p{margin:0;color:#9f1239;font-size:11px}.support-department-picker select:focus-visible,.support-department-picker button:focus-visible,.support-start-btn:focus-visible{outline:3px solid #80d5bb;outline-offset:2px}.direct-official-label{display:block;margin-bottom:4px;font-size:10px;font-weight:900;color:#0b7458}.direct-bubble.mine .direct-official-label{color:#fff}
.narrative-feed-card .feed-audio{position:relative}
.narrative-feed-card .feed-audio img{width:100%;max-height:56vh;object-fit:cover;opacity:.55}
.narrative-feed-card .feed-audio audio{position:absolute;inset-inline:14px;bottom:14px;width:calc(100% - 28px);height:42px}
.narrative-feed-card .feed-caption{margin:0;padding:12px 14px 0;line-height:2.2;color:#3d4a45;font-size:13.5px}
.narrative-campaign-notice{display:grid;gap:4px;margin:12px 14px;padding:12px 14px;border:1px solid #e6a9a9;border-radius:12px;background:#fff1f1;color:#8f2424;line-height:1.9;font-size:13px}
.narrative-campaign-notice b{font-size:13.5px}
.narrative-post-comments .narrative-campaign-notice{margin:12px 0}
.narrative-feed-card .feed-foot{display:flex;align-items:center;gap:16px;padding:12px 14px 14px;flex-wrap:wrap}
.narrative-feed-card .feed-stat{display:inline-flex;align-items:center;gap:5px;color:#5d6b66;font-size:13px}
.narrative-feed-card .feed-stat .app-svg-icon{width:18px;height:18px}
.narrative-feed-card .feed-open{margin-inline-start:auto;font-size:12.5px;font-weight:700;color:var(--app-green-dark,#0c5b47);text-decoration:none}
.narrative-feed-card .feed-open:hover{text-decoration:underline}

/* جدول امتیاز تأیید در پویش */
.campaign-award-title{margin:20px 0 10px;font-size:15px;color:var(--app-green-dark,#0c5b47)}
.campaign-point-row.award{background:#fff7ed;border-color:#fed7aa}
.campaign-point-row.award b{color:#9a3412}
.campaign-award-note{margin-top:12px!important;font-size:12px;color:#8a948f!important}

/* ===== نسخه ۲.۱.۲۵ ===== */

/* کارت‌های تعاملی فید */
.narrative-feed-card .feed-actions{padding:8px 10px 0}
.narrative-feed-card .feed-counts{display:flex;align-items:center;gap:14px;padding:2px 14px 8px;font-size:12.5px;color:#5d6b66}
.narrative-feed-card .feed-counts b{color:#26332e}
.feed-count-btn{border:0;background:transparent;font:inherit;font-size:12.5px;color:#5d6b66;cursor:pointer;padding:0;text-decoration:underline}
.feed-count-btn:hover{color:var(--app-green-dark,#0c5b47)}
.feed-comments{max-height:280px;overflow-y:auto;padding:6px 14px;border-top:1px solid #eef2f0;background:#fbfdfc}
.feed-comments-loading{padding:10px 0;font-size:12.5px;color:#8a948f}
.feed-comment-form{padding:10px 14px 14px;border-top:1px solid #eef2f0}
.narrative-feed-card .feed-open{margin-inline-start:auto}

/* تفأل به شهیدان */
.fal-page{padding:28px 0 60px}
.fal-hero{text-align:center;margin-bottom:22px}
.fal-hero-icon{display:inline-flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:24px;background:linear-gradient(135deg,rgba(12,91,71,.12),rgba(12,91,71,.04));color:var(--app-green-dark,#0c5b47);font-size:32px;margin-bottom:12px}
.fal-hero h1{margin:0 0 6px;font-size:27px}
.fal-hero p{margin:0;color:#5d6b66;font-size:14.5px}
.fal-intro{width:min(760px,100%);margin:0 auto 22px;padding:22px;border-radius:20px;background:#fff;border:1px solid #e7ece9;box-shadow:0 10px 26px rgba(14,45,35,.05)}
.fal-intro p{margin:0 0 12px;line-height:2.4;color:#3d4a45;text-align:justify}
.fal-note{font-size:12.5px;color:#8a948f!important;margin-bottom:0!important}
.fal-action{text-align:center;margin:18px 0}
.fal-btn{min-width:230px;font-size:15px;padding:14px 26px}
.fal-login-box{width:min(520px,100%);margin:0 auto;padding:22px;text-align:center;border-radius:18px;background:#f2f8f5;border:1px solid #d9e8e1}
.fal-login-box b{display:block;margin-bottom:6px;font-size:15px}
.fal-login-box p{margin:0 0 14px;font-size:13px;color:#5d6b66}
.fal-result{position:relative;width:min(760px,100%);margin:26px auto 0;padding:34px 26px 26px;border-radius:22px;background:linear-gradient(160deg,#0c5b47,#0f7359);color:#fff;box-shadow:0 20px 50px rgba(12,91,71,.3);animation:falIn .4s ease}
@keyframes falIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.fal-quote-mark{position:absolute;top:12px;inset-inline-start:22px;font-size:44px;opacity:.28;line-height:1}
.fal-text{margin:0;font-size:15.5px;line-height:2.7;text-align:justify;white-space:pre-line}
.fal-martyr{display:flex;align-items:center;gap:14px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.22)}
.fal-martyr img{width:62px;height:62px;border-radius:16px;object-fit:cover;flex:none;border:2px solid rgba(255,255,255,.35)}
.fal-martyr small{display:block;font-size:11.5px;opacity:.82}
.fal-martyr b{display:block;font-size:15px;margin:2px 0 4px}
.fal-martyr-link{color:#d1fae5;font-size:12.5px;text-decoration:none}
.fal-martyr-link:hover{text-decoration:underline}
@media(max-width:600px){.fal-result{padding:28px 18px 20px}.fal-text{font-size:14px;line-height:2.5}.fal-hero h1{font-size:22px}}

/* راهنمای سامانه */
.guide-page{padding:28px 0 56px}
.guide-hero{text-align:center;margin-bottom:24px}
.guide-hero h1{margin:6px 0 8px;font-size:26px}
.guide-hero p{margin:0;color:#5d6b66}
.guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:14px}
.guide-card{display:flex;flex-direction:column;gap:8px;padding:20px;border-radius:18px;background:#fff;border:1px solid #e7ece9;text-decoration:none;color:inherit;transition:border-color .16s,transform .16s}
.guide-card:hover{border-color:var(--app-green-dark,#0c5b47);transform:translateY(-2px)}
.guide-card-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;background:#f2f8f5;color:var(--app-green-dark,#0c5b47)}
.guide-card-icon .app-svg-icon{width:23px;height:23px}
.guide-card b{font-size:15px}
.guide-card p{margin:0;font-size:12.5px;line-height:2.1;color:#5d6b66}
.guide-card-go{margin-top:auto;font-size:12px;font-weight:700;color:var(--app-green-dark,#0c5b47)}
.guide-points{margin-top:28px;padding:22px;border-radius:20px;background:#fff;border:1px solid #e7ece9}
.guide-points h2{margin:0 0 14px;font-size:18px;color:var(--app-green-dark,#0c5b47)}
.guide-points-note{margin-top:12px;font-size:12px;color:#8a948f}
.guide-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

/* ===== نسخه ۲.۱.۲۶ ===== */

/* نوار پیشرفت آپلود */
.upload-progress{margin-top:10px}
.upload-progress-bar{height:8px;border-radius:99px;background:#e7ece9;overflow:hidden}
.upload-progress-bar i{display:block;height:100%;background:linear-gradient(90deg,#0c5b47,#12876a);border-radius:99px;transition:width .2s ease}
.upload-progress small{display:block;margin-top:6px;font-size:11.5px;color:#5d6b66;text-align:center}

/* دکمه دیدن همه اخبار */
.home-news-more{margin-top:18px;text-align:center}

/* فهرست اخبار */
.news-list-page{padding:26px 0 56px}
.news-list-head{margin-bottom:22px}
.news-list-head h1{margin:6px 0 6px;font-size:25px}
.news-list-head p{margin:0;color:#8a948f;font-size:13px}
.news-list{display:flex;flex-direction:column;gap:14px}
.news-list-card{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:16px;padding:14px;border-radius:18px;background:#fff;border:1px solid #e7ece9;box-shadow:0 8px 22px rgba(14,45,35,.045)}
.news-list-media{display:block;border-radius:14px;overflow:hidden;background:#f2f5f3;aspect-ratio:16/10}
.news-list-media img,.news-list-media video{width:100%;height:100%;object-fit:cover;display:block}
.news-list-copy{display:flex;flex-direction:column;gap:8px;min-width:0}
.news-list-copy h2{margin:0;font-size:17px;line-height:1.9}
.news-list-copy h2 a{color:inherit;text-decoration:none}
.news-list-copy h2 a:hover{color:var(--app-green-dark,#0c5b47)}
.news-list-copy p{margin:0;font-size:13px;line-height:2.2;color:#5d6b66}
.news-list-copy .news-more{margin-top:auto;align-self:flex-start}
@media(max-width:640px){.news-list-card{grid-template-columns:1fr}.news-list-media{aspect-ratio:16/9}}

/* جدول تفکیک امتیاز در پویش */
.campaign-points-card{padding:0!important;overflow:hidden}
.campaign-points-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:16px 18px;border:0;background:#f2f8f5;font:inherit;cursor:pointer;text-align:right}
.campaign-points-toggle b{flex:1;font-size:15px;color:var(--app-green-dark,#0c5b47)}
.campaign-points-toggle span{font-size:13px;font-weight:700;color:#26332e}
.campaign-points-toggle i{font-style:normal;color:#8a948f}
.campaign-points-body{padding:16px 18px 18px}
.points-table{display:flex;flex-direction:column;gap:6px}
.points-row{display:grid;grid-template-columns:minmax(0,1fr) 62px 74px 78px;gap:8px;align-items:center;padding:10px 12px;border-radius:11px;background:#f7faf8;border:1px solid #eef2f0;font-size:12.5px}
.points-row span{min-width:0;line-height:1.9}
.points-row b{text-align:center;font-size:12.5px}
.points-row .points-sum{color:var(--app-green-dark,#0c5b47)}
.points-head{background:#eef4f1;font-weight:700;color:#5d6b66}
.points-total{background:#ecfdf5;border-color:#a7f3d0}
.points-total span{font-weight:700}
.points-total b:last-child{color:#065f46;font-size:14px}
.points-note{display:block;margin-top:10px;font-size:11.5px;color:#8a948f;line-height:1.9}
@media(max-width:600px){.points-row{grid-template-columns:minmax(0,1fr) 46px 56px 62px;font-size:11.5px;padding:9px}}
/* patch14: گفت‌وگوی هوش مصنوعی ویژه پرسش‌های مرتبط با شهدا */
.ai-shohada-page{min-height:72vh;padding:28px 0 60px;background:radial-gradient(circle at 8% 10%,rgba(16,185,160,.13),transparent 28%),linear-gradient(180deg,#f4fffc,#f8fbff)}
.ai-shohada-hero{display:flex;align-items:center;gap:18px;max-width:900px;margin:0 auto 20px}
.ai-shohada-orbit{display:grid;place-items:center;flex:none;width:76px;height:76px;border-radius:25px;background:linear-gradient(145deg,#07545a,#10a99a);color:#fff;box-shadow:0 14px 34px rgba(0,105,101,.23)}
.ai-shohada-orbit .app-svg-icon{width:36px;height:36px}
.ai-shohada-hero h1{margin:4px 0 3px;color:#07545a;font-size:clamp(22px,3vw,31px)}
.ai-shohada-hero p{margin:0;max-width:760px;color:#64748b;line-height:2;font-size:13.5px}
.ai-shohada-login{max-width:620px;margin:30px auto;padding:32px;text-align:center;border:1px solid #d8ece8;border-radius:24px;background:#fff;box-shadow:0 17px 44px rgba(0,75,73,.08)}
.ai-shohada-login b{font-size:18px;color:#07545a}.ai-shohada-login p{color:#64748b;line-height:2}
.ai-chat-shell{display:flex;flex-direction:column;max-width:900px;min-height:560px;margin:0 auto;overflow:hidden;border:1px solid #d6e9e5;border-radius:26px;background:#fff;box-shadow:0 20px 55px rgba(0,68,75,.1)}
.ai-chat-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;border-bottom:1px solid #e3eeeb;background:linear-gradient(90deg,#f4fffc,#f7fbff)}
.ai-chat-top b,.ai-chat-top small{display:block}.ai-chat-top b{color:#07545a}.ai-chat-top small{margin-top:3px;color:#7a899b;font-size:11.5px}
.ai-chat-tools{display:flex;align-items:center;gap:7px}.ai-chat-tools button{padding:6px 9px;border:1px solid #d3e5e1;border-radius:10px;background:#fff;color:#52677a;font:inherit;font-size:10.5px;cursor:pointer}
.ai-quota{flex:none;padding:7px 12px;border-radius:999px;background:#ddf8f2;color:#08776c;font-size:11.5px;font-weight:800}
.ai-chat-error,.ai-chat-unavailable{margin:14px 18px 0;padding:11px 14px;border:1px solid #fecaca;border-radius:12px;background:#fef2f2;color:#991b1b;font-size:12.5px;white-space:pre-line}
.ai-chat-unavailable{margin:auto;background:#fff8e7;border-color:#fde2a5;color:#805600}
.ai-chat-loading{margin:auto;color:#718096}
.ai-chat-welcome{margin:auto;padding:44px 24px;text-align:center;max-width:690px}
.ai-chat-welcome>span{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 12px;border-radius:18px;background:#e2faf5;color:#078174;font-size:25px}
.ai-chat-welcome h2{margin:0 0 6px;color:#07545a;font-size:20px}.ai-chat-welcome p{margin:0;color:#64748b;line-height:2;font-size:13px}
.ai-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}
.ai-suggestions button{padding:9px 12px;border:1px solid #cde6e1;border-radius:999px;background:#f8fffd;color:#31536a;font:inherit;font-size:11.5px;cursor:pointer}
.ai-suggestions button:hover{border-color:#10a99a;color:#08776c}
.ai-chat-messages{display:flex;flex-direction:column;gap:13px;flex:1;padding:20px;overflow-y:auto}
.ai-message{display:flex;align-items:flex-start;gap:9px;max-width:82%;white-space:pre-wrap;line-height:2;font-size:13.5px}
.ai-message>div{padding:11px 14px;border-radius:17px;background:#edf5f3;color:#284653}
.ai-message.user{align-self:flex-end;flex-direction:row-reverse}.ai-message.user>div{background:#075e58;color:#fff;border-bottom-left-radius:17px;border-bottom-right-radius:5px}
.ai-message.assistant{align-self:flex-start}.ai-message.assistant>div{border-bottom-right-radius:5px}.ai-message.out-of-scope>div{background:#fff3e6;color:#8a4d12}
.ai-message-avatar{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:11px;background:#ddf7f1;color:#08776c;font-size:10px;font-weight:800}.ai-message.user .ai-message-avatar{background:#e6edf4;color:#39536b}
.ai-message.thinking i{display:inline-block;width:7px;height:7px;margin:0 3px;border-radius:50%;background:#0a8f82;animation:aiDot 1s infinite}.ai-message.thinking i:nth-child(2){animation-delay:.16s}.ai-message.thinking i:nth-child(3){animation-delay:.32s}
@keyframes aiDot{0%,70%,100%{opacity:.25;transform:translateY(0)}35%{opacity:1;transform:translateY(-4px)}}
.ai-chat-form{display:grid;grid-template-columns:1fr auto;gap:9px;padding:14px 16px;border-top:1px solid #e3eeeb;background:#fbfefd}
.ai-chat-form textarea{width:100%;resize:none;padding:11px 13px;border:1px solid #cfdeda;border-radius:14px;background:#fff;font:inherit;line-height:1.8;outline:none}.ai-chat-form textarea:focus{border-color:#10a99a;box-shadow:0 0 0 3px rgba(16,169,154,.12)}
.ai-chat-form button{min-width:86px}.ai-limit-note{display:block;padding:0 18px 13px;color:#a45d15;text-align:center;background:#fbfefd}
@media(max-width:640px){.ai-shohada-page{padding-top:18px}.ai-shohada-hero{align-items:flex-start}.ai-shohada-orbit{width:58px;height:58px;border-radius:18px}.ai-shohada-orbit .app-svg-icon{width:28px;height:28px}.ai-shohada-hero p{font-size:12px}.ai-chat-shell{min-height:66vh;border-radius:20px}.ai-chat-top{align-items:flex-start;padding:14px}.ai-chat-top small{max-width:210px}.ai-quota{font-size:10.5px}.ai-message{max-width:92%;font-size:13px}.ai-chat-messages{padding:15px 12px}.ai-chat-form{grid-template-columns:1fr;padding:11px}.ai-chat-form button{width:100%}.ai-suggestions{flex-direction:column}.ai-suggestions button{border-radius:12px}}
.feed-comments-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;padding:10px 12px;border:1px solid #fecaca;border-radius:12px;background:#fef2f2;color:#991b1b;font-size:12px}.feed-comments-error button{border:1px solid #ef4444;border-radius:9px;background:#fff;color:#991b1b;font:inherit;font-weight:800;padding:6px 10px;cursor:pointer}
.campaign-upload-points-note{margin:-2px 0 14px;padding:12px 14px;border:1px solid #ef4444;border-radius:12px;background:#fff1f2;color:#991b1b;font-size:13px;font-weight:800;line-height:1.9}
.narrative-edit-modal .narrative-martyr-results{max-height:220px;overflow:auto}.narrative-edit-modal textarea{resize:vertical;min-height:120px}

/* ستاره‌گرام: جستجوی روایت و راوی */
.narrative-discovery{max-width:900px;margin:0 auto 30px;padding:24px;background:#fff;border:1px solid #dce9e2;border-radius:20px;box-shadow:0 12px 35px rgba(18,65,48,.05)}
.narrative-discovery-heading{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:17px}.narrative-discovery-heading small{display:block;color:#0b7556;font-weight:800}.narrative-discovery-heading h2{margin:3px 0 5px;font-size:19px;color:#173f34}.narrative-discovery-heading p{margin:0;color:#60746a;font-size:12px}.narrative-discovery-clear{color:#0b7556;white-space:nowrap;font-size:12px}
.narrative-discovery-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.narrative-discovery-field{display:grid;gap:7px;min-width:0;color:#36594d;font-size:12px;font-weight:700}.narrative-discovery-input{display:flex;align-items:center;gap:9px;min-height:48px;padding:0 13px;border:1px solid #cbded4;border-radius:12px;background:#f9fcfa}.narrative-discovery-input:focus-within{border-color:#0b7556;box-shadow:0 0 0 3px rgba(11,117,86,.12)}.narrative-discovery-input .app-svg-icon{width:19px;height:19px;flex:none;color:#0b7556}.narrative-discovery-input input{width:100%;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-weight:500;color:#173f34}.narrative-discovery-input input::placeholder{color:#7d8e85}.narrative-discovery-form button{min-height:48px;white-space:nowrap}
.narrative-discovery-error{margin:10px 0 0;color:#a12f26;font-size:12px}.narrative-discovery-authors{margin-top:19px;padding-top:15px;border-top:1px solid #e6eee9}.narrative-discovery-authors h3{margin:0 0 10px;font-size:14px;color:#264b3e}.narrative-discovery-author-list{display:flex;flex-wrap:wrap;gap:8px}.narrative-discovery-author{display:flex;align-items:center;gap:9px;min-width:150px;padding:8px 10px;border:1px solid #e0ebe5;border-radius:12px;background:#f7fbf9;color:#1f4e3e;text-decoration:none}.narrative-discovery-author img,.narrative-discovery-avatar{width:34px;height:34px;flex:none;border-radius:50%;object-fit:cover}.narrative-discovery-avatar{display:grid;place-items:center;background:#dcefe5;font-weight:800}.narrative-discovery-author b,.narrative-discovery-author small{display:block;line-height:1.4}.narrative-discovery-author small{color:#678074}.narrative-search-summary{margin:0 0 12px;color:#36594d;font-weight:700}
.narrative-discovery a:focus-visible,.narrative-discovery input:focus-visible,.narrative-discovery button:focus-visible{outline:3px solid #77baa0;outline-offset:3px}
@media(max-width:600px){.narrative-discovery{padding:16px;margin-bottom:18px;border-radius:16px}.narrative-discovery-heading{display:block}.narrative-discovery-clear{display:inline-block;margin-top:8px}.narrative-discovery-form{grid-template-columns:1fr}.narrative-discovery-form button{width:100%}.narrative-discovery-author{flex:1 1 145px}}

/* فاصلهٔ هشدار، چک‌باکس استاندارد و گوشه‌های بنر خانه */
.campaign-points-card .campaign-upload-points-note{margin:16px 18px 14px}
.campaign-ravian-check{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid #dce8e1;border-radius:12px;background:#f8fbf9;color:#26483d;cursor:pointer;line-height:1.9}.campaign-ravian-check input[type=checkbox]{width:18px;height:18px;min-width:18px;min-height:18px;flex:0 0 18px;margin:4px 0 0;padding:0;accent-color:#0c6a51}.campaign-ravian-check span{font-size:13px}.campaign-ravian-check:focus-within{outline:3px solid rgba(12,106,81,.2);outline-offset:2px}
.home-hero-slider{border-radius:10px}
.martyr-narrative-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px}.martyr-narrative-card{min-width:0;border:1px solid #e2eae6;border-radius:16px;padding:12px;background:#fafcfb}.martyr-narrative-card img,.martyr-narrative-card video{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:#eaf2ee}.martyr-narrative-card audio{display:block;width:100%;margin:18px 0}.martyr-narrative-card p{line-height:1.8;overflow-wrap:anywhere}.martyr-narrative-card a{display:inline-block;padding:8px 12px;border-radius:9px;color:#0b7355;background:#eaf7f1;font-weight:700}.martyr-narrative-card a:focus-visible{outline:3px solid #69bba2;outline-offset:2px}

/* Suppress Android/WebView's transient blue tap flash without changing keyboard focus. */
html{-webkit-tap-highlight-color:transparent}
.home-news-grid .news-image{height:220px;background:#f3f6f4}
.home-news-grid .news-image img{width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:820px){.app-bottom-nav .app-nav-item.active{color:#fff}}
