@import url("https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800;900&display=swap");
:root{--bg:#f4f6f9;--surface:#fff;--surface-soft:#f8fafc;--ink:#17202b;--muted:#7b8794;--line:#e5e9ef;--accent:#c91f24;--accent2:#e12c33;--accent-soft:#fff1f1;--dark:#0d1218;--dark2:#171d24;--dark3:#202731;--success:#16834b;--warning:#b66a08;--shadow:0 18px 55px rgba(18,25,34,.08);--shadow-lg:0 28px 80px rgba(18,25,34,.14);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Cairo,Tahoma,Arial,sans-serif;font-size:14px;line-height:1.8}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.app-shell{display:flex;min-height:100vh}
.sidebar{width:294px;background:radial-gradient(circle at 20% 8%,rgba(201,31,36,.14),transparent 26%),linear-gradient(180deg,#0d1218 0%,#151b22 55%,#10151b 100%);color:#fff;padding:22px 16px;position:fixed;right:0;top:0;bottom:0;z-index:50;box-shadow:-18px 0 55px rgba(0,0,0,.12);overflow:hidden;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;gap:13px;align-items:center;padding:8px 10px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.brand img{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:50%;padding:5px;box-shadow:0 8px 28px rgba(0,0,0,.28)}.brand strong{display:block;font-size:15px;font-weight:900}.brand small{display:block;color:#929daa;margin-top:2px;font-size:10px}.nav-caption{font-size:9px;color:#68727d;font-weight:800;padding:20px 13px 7px;letter-spacing:.4px}.side-nav{flex:1;min-height:0;overflow-y:auto;padding:2px 4px 14px 0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}.side-nav::-webkit-scrollbar{width:6px}.side-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:20px}.side-nav nav{padding:0}nav a,.logout-link{display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid transparent;border-radius:14px;color:#bfc7d0;margin:4px 0;font-size:12px;transition:.22s ease}nav a:hover,.logout-link:hover{background:rgba(255,255,255,.06);color:#fff;transform:translateX(-2px)}nav a.active{background:linear-gradient(90deg,rgba(201,31,36,.20),rgba(201,31,36,.07));border-color:rgba(201,31,36,.28);color:#fff;box-shadow:inset -3px 0 0 var(--accent)}.nav-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.045);color:#8f99a4;flex:0 0 30px;transition:.22s}.nav-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}nav a.active .nav-icon{background:rgba(201,31,36,.15);color:#ef5a60}.sidebar-bottom{flex:0 0 auto;margin-top:10px;padding:12px 0 0;border-top:1px solid rgba(255,255,255,.09);background:linear-gradient(180deg,rgba(16,21,27,.35),#10151b 30%)}.logout-link{margin:0;color:#c9d0d7}.main{margin-right:294px;min-height:100vh;width:calc(100% - 294px)}.topbar{padding:19px 38px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:30;backdrop-filter:blur(18px)}.topbar-left{display:flex;align-items:center;gap:12px}.page-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#fff1f1,#fff);border:1px solid #f2d8d8;color:var(--accent);display:grid;place-items:center;box-shadow:0 7px 18px rgba(201,31,36,.08)}.page-mark svg{width:19px;height:19px}.eyebrow{font-size:10px;color:var(--accent);font-weight:900}.topbar h1{margin:2px 0 0;font-size:22px;letter-spacing:-.6px}.user-chip{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:7px 10px 7px 12px;min-width:180px;box-shadow:0 8px 25px rgba(18,25,34,.045)}.user-avatar{width:35px;height:35px;border-radius:11px;background:linear-gradient(145deg,#202832,#11161c);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900}.user-chip span{display:block;font-weight:900;font-size:12px}.user-chip small{display:block;color:var(--muted);font-size:9px}.content{padding:30px 38px 42px;max-width:1650px;margin:auto}.footer{text-align:center;color:#9aa3ad;font-size:10px;padding:24px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:21px;box-shadow:var(--shadow)}.cards .card{position:relative;overflow:hidden;transition:.22s}.cards .card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.cards .card:after{content:"";position:absolute;right:0;top:0;width:4px;height:100%;background:linear-gradient(180deg,var(--accent2),var(--accent));opacity:.9}.metric{min-height:135px}.metric small{color:var(--muted);font-size:11px;font-weight:700}.metric strong{display:block;font-size:30px;font-weight:900;line-height:1.25;margin-top:7px}.metric .icon{position:absolute;left:18px;top:18px;width:40px;height:40px;border-radius:13px;background:var(--surface-soft);display:grid;place-items:center;color:var(--accent);font-weight:900}.grid2{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-top:18px}.panel h2{font-size:17px;margin:0 0 16px;font-weight:900}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.section-title h2{margin:0}.form-card{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);overflow:hidden}.form-card-head{padding:23px 25px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbfcfd);display:flex;align-items:center;justify-content:space-between;gap:15px}.form-card-head h2{margin:0;font-size:17px;font-weight:900}.form-card-head p{margin:3px 0 0;color:var(--muted);font-size:10px}.form-card-body{padding:25px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.field label{display:block;font-size:11px;font-weight:900;margin-bottom:7px;color:#59677d}.required{color:var(--accent)}.field input,.field select,.field textarea{width:100%;padding:11px 13px;border:1px solid #dfe4e9;border-radius:12px;font-family:inherit;background:#fff;color:var(--ink);outline:none;transition:.2s;min-height:49px}.field textarea{min-height:105px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.quick-search input:focus{border-color:#c52a33;box-shadow:0 0 0 4px rgba(197,42,51,.08)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:13px;padding:10px 17px;min-height:49px;background:linear-gradient(135deg,var(--accent2),var(--accent));color:#fff;font-family:inherit;font-weight:900;cursor:pointer;box-shadow:0 9px 22px rgba(201,31,36,.18);transition:.2s}.btn:hover{filter:brightness(.96);transform:translateY(-2px);box-shadow:0 13px 28px rgba(201,31,36,.23)}.btn.secondary{background:#eef2f5;color:#2a333d;box-shadow:none}.btn.secondary:hover{background:#e6ebef}.btn.success{background:linear-gradient(135deg,#1b9a59,#117640);box-shadow:0 9px 22px rgba(22,131,75,.16)}.btn.danger{background:#8f1519}.btn.small{padding:7px 11px;min-height:38px;font-size:10px}.actions{display:flex;gap:9px;flex-wrap:wrap}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 35px rgba(20,25,30,.045)}.table{width:100%;border-collapse:collapse;min-width:850px}.table th,.table td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:right;font-size:11px}.table th{background:#fafbfc;color:#66717d;font-weight:900;white-space:nowrap}.table tr:hover td{background:#fff9f9}.table tr:last-child td{border-bottom:0}.badge{display:inline-block;padding:5px 10px;border-radius:999px;font-size:10px;background:#eaf5ed;color:#287344;font-weight:700}.badge.orange{background:#fff3df;color:#9a6416}.badge.blue{background:#fff1f1;color:#b31e25}.badge.red{background:#fff0f0;color:#a52d2d}.flash{padding:13px 15px;border-radius:14px;margin-bottom:15px;background:#eaf6ee;color:#28623b;line-height:1.9;border:1px solid #d9eedf}.flash.error{background:#fff0f0;color:#a52d2d;border-color:#ffd9db}.flash.info{background:#fff5f5;color:#8e2025;border-color:#f3dddd}.quick-search{display:grid;grid-template-columns:1fr auto;gap:10px}.quick-search input{height:52px;border:1px solid #dfe4e9;border-radius:13px;padding:0 16px;font-family:inherit;outline:none;background:#fbfcfe}.lookup-card{margin-top:16px;background:linear-gradient(180deg,#fff,#fffafa);border:1px solid #eadfe0;border-radius:20px;padding:19px}.lookup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.lookup-item{background:#fafbfc;border:1px solid #edf0f3;border-radius:13px;padding:11px}.lookup-item small{display:block;color:#8190a3;font-size:10px;margin-bottom:4px}.lookup-item b{font-size:12px}.empty{padding:35px;text-align:center;color:#8491a2}.muted{color:#8290a2;line-height:2}.mini-card{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:15px}.mobile-menu{display:none;position:fixed;left:15px;top:15px;z-index:80;width:48px;height:48px;border:0;border-radius:15px;background:#153a5b;color:#fff;box-shadow:0 12px 28px rgba(20,58,91,.2);align-items:center;justify-content:center}.mobile-menu svg{width:23px;height:23px}.hidden{display:none!important}.overlay{display:none}
/* Login */.login-page{min-height:100svh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 88% 12%,rgba(201,31,36,.08),transparent 22%),radial-gradient(circle at 8% 88%,rgba(24,42,75,.08),transparent 24%),linear-gradient(135deg,#f8f9fb 0%,#eef2f7 52%,#fcf8f8 100%)}.login-shell{width:min(1040px,100%);display:grid;grid-template-columns:1.02fr .98fr;direction:ltr;background:#fff;border-radius:32px;box-shadow:0 30px 90px rgba(24,42,75,.16);overflow:hidden}.login-visual{direction:rtl;min-height:540px;display:flex;align-items:center;justify-content:center;padding:48px 52px;background:linear-gradient(145deg,#101a2e,#182642 58%,#422337 125%);color:#fff}.login-visual-inner{text-align:center;max-width:390px}.login-logo-ring{width:174px;height:174px;margin:0 auto 25px;padding:7px;border-radius:50%;background:linear-gradient(145deg,#fff,#e6eaf0);box-shadow:0 24px 55px rgba(0,0,0,.28)}.login-logo-ring img{width:100%;height:100%;object-fit:cover;border-radius:50%}.login-visual h1{font-size:34px;margin:9px 0}.login-visual p{color:#b9c2d1;font-size:12px}.login-card{direction:rtl;background:#fff;padding:54px 58px;min-height:540px;display:flex;flex-direction:column;justify-content:center}.login-card h2{font-size:30px}.login-form .field{margin-bottom:17px}.login-submit{width:100%}.password-wrap{position:relative}.password-toggle{position:absolute;left:8px;top:8px;height:33px;border:0;border-radius:8px;background:#eef1f5;color:#68758a;font:600 10px Cairo;cursor:pointer}
@media(max-width:1100px){.sidebar{width:255px}.main{margin-right:255px;width:calc(100% - 255px)}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.app-shell{display:block}.sidebar{right:-294px;width:294px;transition:right .25s ease}.sidebar.open{right:0}.main{margin:0;width:100%}.mobile-menu{display:flex}.topbar{position:static;padding:18px 76px 17px 18px}.topbar h1{font-size:20px}.topbar .page-mark{display:none}.user-chip{min-width:auto;padding:6px}.user-chip>div:last-child{display:none}.content{padding:20px 16px 30px}.cards,.form-grid,.lookup-grid,.grid2{grid-template-columns:1fr}.quick-search{grid-template-columns:1fr}.table{min-width:760px}.overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:40}.brand{padding-top:16px}.login-shell{grid-template-columns:1fr;max-width:520px}.login-visual{display:none}.login-card{min-height:auto;padding:36px 28px}}
@media(max-width:430px){.content{padding:15px 12px 24px}.panel{padding:17px;border-radius:19px}.topbar{padding-right:72px}.topbar p{font-size:9px}.section-title{align-items:flex-start;flex-direction:column}.section-title .btn{width:100%}.btn{width:100%}.table{min-width:700px}.login-card{padding:30px 21px}}

/* V1.3 visual fixes */
.hamburger-lines{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}.hamburger-lines i{display:block;width:24px;height:3px;border-radius:3px;background:#fff}.brand img{display:block;width:58px;height:58px;object-fit:contain;border-radius:14px;background:#fff;padding:2px}.brand{min-height:78px}
@media(max-width:780px){.brand img{width:54px;height:54px}}


/* ===== Premium navigation / assistance ===== */
.nav-group{margin:3px 0 7px;padding:0 0 2px;border-radius:16px;background:rgba(255,255,255,.018)}
.nav-group-title{display:flex;align-items:center;gap:11px;padding:9px 12px 4px;color:#eef2f6;font-size:11px;font-weight:900}
.nav-group-title .nav-icon{background:rgba(201,31,36,.10);color:#d85a5f}
.nav-group nav a{padding-right:18px}

/* ===== Premium assistance entry ===== */
.assistance-entry{position:relative}
.assistance-entry:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,transparent,var(--accent2),transparent);opacity:.85}
.assistance-head{background:radial-gradient(circle at 85% 0%,rgba(201,31,36,.07),transparent 30%),linear-gradient(180deg,#fff,#fbfcfd)}
.live-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#effaf3;color:#197442;border:1px solid #d7eddf;font-size:10px;font-weight:900;white-space:nowrap}
.live-pill i{width:7px;height:7px;border-radius:50%;background:#23a25d;box-shadow:0 0 0 5px rgba(35,162,93,.10);animation:pulseLive 1.7s infinite}
@keyframes pulseLive{50%{transform:scale(.75);opacity:.5}}

.identity-search-box{display:grid;grid-template-columns:52px minmax(260px,1fr) auto;align-items:end;gap:13px;padding:16px;border:1px solid #eadfe0;border-radius:20px;background:linear-gradient(135deg,#fff,#fff9f9);box-shadow:0 12px 30px rgba(201,31,36,.055)}
.identity-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;color:var(--accent);background:#fff;border:1px solid #f0dfe0;box-shadow:0 8px 22px rgba(201,31,36,.08)}
.identity-icon svg{width:20px;height:20px}
.identity-field{margin:0}
.identity-field input{height:52px;font-size:15px;font-weight:800;letter-spacing:.3px}
.lookup-status{height:52px;min-width:190px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border-radius:13px;font-size:10px;font-weight:900;border:1px solid #e6eaee;background:#f8fafc;color:#7a8795}
.lookup-status.loading{color:#8a5d10;background:#fff8e8;border-color:#f4e4b8}
.lookup-status.found{color:#18733f;background:#eef9f2;border-color:#d6eddd}
.lookup-status.new{color:#9a5d0b;background:#fff7e7;border-color:#f2e0b4}
.lookup-status.error{color:#a32b31;background:#fff0f0;border-color:#ffd9db}
.spinner{width:13px;height:13px;border:2px solid currentColor;border-left-color:transparent;border-radius:50%;display:inline-block;animation:spin .75s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.beneficiary-result{margin-top:16px;border-radius:19px;padding:17px 19px;animation:resultIn .32s ease both}
.beneficiary-result.found{background:linear-gradient(135deg,#f4fbf6,#fff);border:1px solid #d9eddf;box-shadow:0 12px 28px rgba(22,131,75,.06)}
.beneficiary-result.new{background:linear-gradient(135deg,#fffaf0,#fff);border:1px solid #f0e2bd}
.beneficiary-result.error-result{background:#fff5f5;border:1px solid #f3d5d6;color:#9e3034}
@keyframes resultIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.result-top{display:flex;align-items:center;gap:11px}
.result-check{width:37px;height:37px;border-radius:12px;display:grid;place-items:center;background:#e5f6eb;color:#16834b;font-size:17px;font-weight:900}
.new-check{background:#fff0d2;color:#a2670c}
.result-top strong{display:block;font-size:13px}
.result-top span{display:block;color:#7a8794;font-size:9px;margin-top:1px}
.result-badge{margin-right:auto;padding:6px 10px;border-radius:999px;background:#e9f7ed;color:#287344;font-size:9px}
.new-badge{background:#fff0d3;color:#98610e}
.result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:13px}
.result-grid>div{background:rgba(255,255,255,.72);border:1px solid rgba(225,232,227,.8);border-radius:12px;padding:9px}
.result-grid small{display:block;color:#8290a0;font-size:9px}.result-grid b{font-size:11px}
.form-divider{display:flex;align-items:center;gap:10px;margin:8px 0 0;color:#687588;font-size:10px;font-weight:900}
.form-divider:before,.form-divider:after{content:"";height:1px;background:var(--line);flex:1}
.assistance-actions{margin-top:2px}
.save-assistance-btn{min-width:220px}

/* ===== Assistance log ===== */
.log-hero{background:radial-gradient(circle at 90% 0%,rgba(201,31,36,.06),transparent 28%),#fff}
.summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}
.summary-strip>div{padding:14px 16px;border:1px solid var(--line);border-radius:15px;background:#fbfcfd}
.summary-strip span{display:block;color:#7d8998;font-size:9px}.summary-strip strong{display:block;margin-top:2px;font-size:19px}
.log-search{display:grid;grid-template-columns:44px 1fr auto auto;gap:9px;align-items:center;margin-top:8px}
.search-symbol{height:52px;border-radius:13px;display:grid;place-items:center;background:#fff3f3;border:1px solid #f1dddd;color:var(--accent)}
.search-symbol svg{width:18px}
.log-search input{height:52px;border:1px solid #dfe4e9;border-radius:13px;padding:0 15px;outline:none;font-family:inherit;background:#fbfcfe}
.log-search input:focus{border-color:#c52a33;box-shadow:0 0 0 4px rgba(197,42,51,.08)}
.beneficiary-history{animation:resultIn .3s ease both}
.history-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
.history-person{display:flex;align-items:center;gap:12px}
.history-avatar{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,#202832,#11161c);color:#fff;font-size:18px;font-weight:900;box-shadow:0 9px 24px rgba(0,0,0,.12)}
.history-person h2{margin:0;font-size:17px}.history-person span{color:#7c8897;font-size:9px}
.person-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:18px}
.person-stats>div{border:1px solid var(--line);border-radius:15px;padding:13px;background:#fafbfc}
.person-stats small{display:block;color:#7d8998;font-size:9px}.person-stats strong{display:block;margin-top:3px;font-size:17px}
.type-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}

/* ===== Premium login ===== */
.premium-login{position:relative;overflow:hidden}
.login-glow{position:fixed;width:430px;height:430px;border-radius:50%;filter:blur(65px);pointer-events:none;opacity:.26}
.glow-one{top:-180px;right:-140px;background:#d73a40}
.glow-two{bottom:-190px;left:-150px;background:#284a78}
.login-particles{position:fixed;inset:0;pointer-events:none;overflow:hidden}
.login-particles i{position:absolute;width:4px;height:4px;border-radius:50%;background:#c91f24;opacity:.18;animation:floatParticle 8s ease-in-out infinite}
.login-particles i:nth-child(1){right:12%;top:18%;animation-delay:-1s}.login-particles i:nth-child(2){right:25%;top:72%;animation-delay:-3s}.login-particles i:nth-child(3){left:18%;top:22%;animation-delay:-5s}.login-particles i:nth-child(4){left:28%;top:78%;animation-delay:-2s}.login-particles i:nth-child(5){right:48%;top:10%;animation-delay:-6s}
@keyframes floatParticle{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-18px) scale(1.5)}}
.login-shell{position:relative;z-index:2}
.login-visual{position:relative}
.login-visual:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.08),transparent 35%);animation:visualGlow 5s ease-in-out infinite}
@keyframes visualGlow{50%{transform:scale(1.12);opacity:.6}}
.login-logo-ring{position:relative;animation:logoFloat 4s ease-in-out infinite}
.login-logo-ring:after{content:"";position:absolute;inset:-10px;border:1px solid rgba(255,255,255,.15);border-radius:50%;animation:ringPulse 2.8s ease-out infinite}
.login-logo-ring span{position:absolute;inset:-22px;border-radius:50%;border:1px dashed rgba(255,255,255,.12);animation:spin 18s linear infinite}
@keyframes logoFloat{50%{transform:translateY(-7px)}}
@keyframes ringPulse{0%{transform:scale(.94);opacity:.7}100%{transform:scale(1.16);opacity:0}}
.login-kicker{display:inline-block;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);font-size:9px}
.login-features{display:flex;justify-content:center;gap:7px;margin-top:20px}.login-features span{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);font-size:9px;color:#d0d6df}
.login-heading{display:flex;align-items:center;gap:11px;margin-bottom:26px}
.login-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px rgba(201,31,36,.09),0 0 22px rgba(201,31,36,.25);animation:pulseLive 1.8s infinite}
.login-heading small{display:block;color:#8a95a3;font-size:10px}.login-heading h2{margin:1px 0 0;font-size:30px}
.login-field label{margin-bottom:8px}
.input-glow{display:flex;align-items:center;gap:8px;border:1px solid #dfe4e9;border-radius:13px;background:#fff;padding-right:12px;transition:.22s;overflow:hidden}
.input-glow:focus-within{border-color:#c52a33;box-shadow:0 0 0 4px rgba(197,42,51,.08),0 10px 28px rgba(197,42,51,.06);transform:translateY(-1px)}
.input-glow>span{color:#a6afba;font-size:12px}.input-glow input{border:0!important;box-shadow:none!important;min-height:49px;padding-right:3px}
.password-wrap{padding-left:7px}.password-toggle{position:static;margin-left:1px;flex:0 0 auto}
.login-submit{min-height:54px;margin-top:7px;position:relative;overflow:hidden}
.login-submit:after{content:"";position:absolute;top:0;bottom:0;width:65px;right:-80px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-18deg);animation:buttonShine 3.6s infinite}
@keyframes buttonShine{0%,55%{right:-90px}75%{right:120%}100%{right:120%}}
.login-submit b{font-size:16px}
.login-error{animation:shakeIn .38s ease both}.login-error b{display:block}.login-error span{display:block}
@keyframes shakeIn{0%{transform:translateX(10px);opacity:0}60%{transform:translateX(-3px)}100%{transform:none;opacity:1}}
.hint{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:20px;color:#8a95a3;font-size:9px}.hint i{width:5px;height:5px;border-radius:50%;background:#2c9a60}

/* ===== Premium logout ===== */
.logout-page{min-height:100svh;display:grid;place-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 0%,rgba(201,31,36,.13),transparent 35%),linear-gradient(145deg,#0d1218,#151d28 58%,#281b25);font-family:Cairo,Tahoma,Arial,sans-serif;color:#fff}
.logout-orb{position:fixed;width:360px;height:360px;border-radius:50%;filter:blur(70px);opacity:.18;pointer-events:none}
.orb-a{top:-170px;right:-100px;background:#d43a40}.orb-b{bottom:-190px;left:-100px;background:#476d9e}
.logout-card{position:relative;z-index:2;width:min(470px,calc(100% - 30px));text-align:center;padding:48px 35px 40px;border:1px solid rgba(255,255,255,.10);border-radius:30px;background:rgba(255,255,255,.055);box-shadow:0 35px 100px rgba(0,0,0,.32);backdrop-filter:blur(18px);animation:logoutIn .55s ease both}
@keyframes logoutIn{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:none}}
.logout-logo{width:78px;height:78px;margin:0 auto 22px;padding:5px;border-radius:50%;background:#fff;box-shadow:0 14px 35px rgba(0,0,0,.25)}
.logout-logo img{width:100%;height:100%;object-fit:contain;border-radius:50%}
.logout-check{width:76px;height:76px;margin:0 auto;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(75,199,125,.35);background:rgba(45,161,91,.12);box-shadow:0 0 0 10px rgba(45,161,91,.045);animation:checkPop .6s .2s both}
.logout-check span{font-size:34px;color:#57c782}
@keyframes checkPop{from{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}
.logout-spinner{width:22px;height:22px;border:2px solid rgba(255,255,255,.16);border-top-color:#fff;border-radius:50%;margin:21px auto 12px;animation:spin 1s linear infinite}
.logout-card h1{margin:0;font-size:25px}.logout-card p{margin:4px 0 17px;color:#aeb8c5;font-size:11px}
.logout-progress{height:4px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.logout-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#4dc47b,#9ae0b2);animation:logoutProgress 1.4s linear forwards}
@keyframes logoutProgress{to{width:100%}}
.logout-card small{display:block;margin-top:11px;color:#8895a5;font-size:9px}.logout-back{display:inline-block;margin-top:18px;color:#dbe2ea;font-size:10px;border-bottom:1px dashed rgba(255,255,255,.25);padding-bottom:2px}

/* Mobile */
@media(max-width:780px){
  .identity-search-box{grid-template-columns:44px 1fr}.identity-icon{width:44px;height:44px}.lookup-status{grid-column:1/-1;width:100%;height:42px}
  .result-grid,.summary-strip,.person-stats{grid-template-columns:1fr 1fr}
  .log-search{grid-template-columns:44px 1fr}.log-search button,.log-search .btn.secondary{grid-column:1/-1}
  .login-card{padding:36px 25px}.logout-card{padding:38px 24px}
}
@media(max-width:430px){
  .result-grid,.summary-strip,.person-stats{grid-template-columns:1fr}
  .result-badge{display:none}.identity-search-box{padding:12px}
  .assistance-actions .btn{width:100%}
}

/* ===== Fix: remove legacy decorative circle from application pages ===== */
.app-body .login-bg-orb,
.app-body .login-glow,
.app-body .logout-orb,
.app-body .orb-one,
.app-body .orb-two,
.app-body .orb-a,
.app-body .orb-b,
.app-body .big-orb,
.app-body .decorative-orb {
  display:none !important;
  width:0 !important;
  height:0 !important;
  background:none !important;
  box-shadow:none !important;
  filter:none !important;
  content:none !important;
}

/* Assistance content must never inherit a full-size circular decorative element. */
.app-body .assistance-entry img:not(.beneficiary-photo),
.app-body .assistance-entry .circle,
.app-body .assistance-entry .orb,
.app-body .assistance-entry .decorative {
  max-width:100% !important;
}

/* Keep the page clean while retaining the intended card animation. */
.assistance-entry {
  isolation:isolate;
}

/* ===== V1.4 clean sponsorship workspace ===== */
.sponsor-hero,.report-hero{background:radial-gradient(circle at 88% 0%,rgba(201,31,36,.055),transparent 28%),#fff}
.sponsor-stats,.report-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}
.sponsor-stats>div,.report-stats>div{border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:#fbfcfd}
.sponsor-stats small,.report-stats small{display:block;color:#7c8897;font-size:9px}
.sponsor-stats strong,.report-stats strong{display:block;margin-top:2px;font-size:20px}
.child-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.child-card{display:grid;grid-template-columns:62px 1fr auto;gap:13px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.22s;box-shadow:0 7px 22px rgba(20,25,30,.035)}
.child-card:hover{transform:translateY(-2px);border-color:#ecd4d5;box-shadow:0 13px 30px rgba(20,25,30,.07)}
.child-photo{width:62px;height:62px;border-radius:17px;overflow:hidden;background:linear-gradient(145deg,#f3e4e4,#fff);display:grid;place-items:center;color:#b51f26;font-size:20px;font-weight:900}
.child-photo img{width:100%;height:100%;object-fit:cover}
.child-info strong{display:block;font-size:12px}.child-info small{display:block;color:#8793a2;font-size:9px;margin-top:2px}
.profile-photo{width:70px;height:70px;border-radius:20px;overflow:hidden;background:#f3e5e5;display:grid;place-items:center;color:#b51f26;font-weight:900;font-size:22px;box-shadow:0 8px 22px rgba(20,25,30,.08)}
.profile-photo img{width:100%;height:100%;object-fit:cover}
.subheading{font-size:13px;margin:22px 0 11px;font-weight:900}
.documents-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.document-card{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:15px;padding:12px;background:#fbfcfd}
.document-icon{width:38px;height:38px;border-radius:11px;background:#fff1f1;color:var(--accent);display:grid;place-items:center;font-weight:900}
.document-card strong{display:block;font-size:10px}.document-card small{display:block;color:#8995a4;font-size:8px}.document-card a{display:inline-block;margin-top:2px;color:#a91f25;font-size:9px;font-weight:900}
.payment-context{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:10px;padding:16px;margin-top:17px;border:1px solid #eadfe0;border-radius:18px;background:linear-gradient(135deg,#fff9f9,#fff)}
.payment-context>div{padding:8px 10px;border-right:1px solid #eee4e4}.payment-context>div:first-child{border-right:0}
.payment-context strong{display:block;font-size:13px}.payment-context small{display:block;color:#8792a0;font-size:9px}.payment-context span{display:block;color:#8792a0;font-size:9px}.payment-context b{font-size:13px}
.report-filter{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;margin-top:18px}
.report-filter .field{margin:0}
.report-filter .btn{height:49px}
.sponsorship-entry{overflow:visible}
@media(max-width:900px){.child-grid{grid-template-columns:1fr}.documents-grid{grid-template-columns:1fr}.payment-context{grid-template-columns:1fr 1fr}.sponsor-stats,.report-stats{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.payment-context{grid-template-columns:1fr}.report-filter{grid-template-columns:1fr}.sponsor-stats,.report-stats{grid-template-columns:1fr}.child-card{grid-template-columns:55px 1fr}.child-card>.badge{grid-column:2}.child-photo{width:55px;height:55px}}

/* ===== Children profile / registration UI ===== */
.children-page{background:#f5f7f9;border-radius:24px;min-height:calc(100vh - 40px);padding:0 0 28px}
.children-page-head{background:#fff;border:1px solid #e7ebef;border-radius:24px 24px 0 0;padding:25px 30px 22px;display:flex;align-items:center;justify-content:space-between}
.children-page-head h1{margin:2px 0 4px;font-size:22px;font-weight:900;color:#17202c}.children-page-head p{margin:0;color:#8b96a5;font-size:11px}
.soft-btn{background:#eef3f6!important;color:#17202c!important;border:0!important;box-shadow:none!important}.soft-btn:hover{background:#e5ebef!important}.soft-btn span{font-size:16px;margin-right:5px}
.children-toolbar{display:flex;gap:10px;align-items:center;padding:16px 30px;background:#f8fafb;border:1px solid #e8edf1;border-top:0}
.children-search{height:42px;background:#fff;border:1px solid #dfe5ea;border-radius:12px;display:flex;align-items:center;padding:0 13px;flex:1;max-width:520px;color:#8d98a5}
.children-search input{border:0;outline:0;width:100%;padding:0 9px;font-family:inherit;background:transparent;font-size:11px}
.child-form-panel{background:#f5f8fa;border:1px solid #e2e8ed;border-radius:0 0 22px 22px;padding:22px}
.child-form-grid{display:grid;grid-template-columns:320px 1fr;gap:22px;align-items:start}
.photo-panel{background:#fff;border:1px solid #e1e7eb;border-radius:18px;padding:15px;position:sticky;top:15px}
.photo-title{display:flex;align-items:center;gap:9px;font-size:13px;margin:3px 5px 12px}.photo-icon{width:32px;height:32px;border-radius:10px;background:#edf3f7;color:#2474c5;display:grid;place-items:center}
.photo-preview{width:100%;aspect-ratio:1/1;border:1px solid #dfe6eb;border-radius:13px;overflow:hidden;background:#f2f5f7;display:grid;place-items:center;color:#98a4b0;font-size:11px}
.photo-preview img{width:100%;height:100%;object-fit:cover}
.photo-upload{margin-top:11px;height:44px;border:1px solid #d8e6f7;background:#f1f7ff;border-radius:11px;display:flex;align-items:center;justify-content:center;gap:7px;color:#2374c6;font-size:11px;font-weight:900;cursor:pointer}
.photo-upload input{display:none}
.photo-note{margin-top:12px;padding:12px;border:1px solid #f0dfe1;background:#fff7f7;border-radius:12px;color:#667281;font-size:9px;line-height:1.8}.photo-note strong{color:#c51f26}.photo-note ul{margin:4px 0 0;padding-right:15px}
.child-fields{background:#fff;border:1px solid #e1e7eb;border-radius:18px;overflow:hidden}
.child-section{padding:21px 25px;border-bottom:1px solid #e9edf0}.child-section:last-of-type{border-bottom:0}
.child-section h2{font-size:15px;margin:0 0 18px;padding-right:12px;border-right:4px solid #d82028;color:#17202c}.section-help{font-size:10px;color:#8b96a5;margin:-10px 0 14px}
.child-fields-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 22px}.child-fields .field{margin:0}.child-fields .field label{font-size:10px;font-weight:800;color:#283340;margin-bottom:7px}.child-fields .field input,.child-fields .field select{height:43px;border:1px solid #dce3e8;border-radius:9px;background:#fff;font-size:10px;padding:0 13px}.child-fields .field input:focus,.child-fields .field select:focus{border-color:#b8cfe5;box-shadow:0 0 0 3px rgba(50,110,170,.07)}.child-fields .full{grid-column:1/-1}
.docs-upload-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.doc-upload{border:1px dashed #cfd9e1;border-radius:13px;padding:13px;display:grid;grid-template-columns:32px 1fr;column-gap:9px;align-items:center;background:#fbfcfd;cursor:pointer;transition:.2s}.doc-upload:hover{border-color:#d51f27;background:#fffafa}.doc-upload>span{grid-row:1/3;width:32px;height:32px;border-radius:9px;background:#f0f4f7;display:grid;place-items:center;color:#b51f26}.doc-upload b{font-size:10px}.doc-upload small{font-size:8px;color:#9aa5b0}.doc-upload input{grid-column:1/-1;margin-top:8px;width:100%;font-size:8px}
.child-actions{padding:17px 25px;background:#fbfcfd;border-top:1px solid #e8edf0;display:flex;gap:8px;justify-content:flex-start}
.children-grid{padding:20px 30px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.child-list-card{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid #e3e8ec;border-radius:16px;padding:11px;text-decoration:none;color:inherit;transition:.2s}.child-list-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,30,40,.06)}
.child-list-photo{width:58px;height:58px;border-radius:13px;overflow:hidden;background:#edf2f5;display:grid;place-items:center;color:#bd2027;font-size:19px;font-weight:900}.child-list-photo img{width:100%;height:100%;object-fit:cover}
.child-list-card strong{display:block;font-size:11px}.child-list-card small{display:block;font-size:8px;color:#8d98a5;margin-top:2px}
.child-profile-new{margin:0 30px 20px;background:#fff;border:1px solid #e1e7eb;border-radius:20px;padding:22px}
.profile-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid #e8edf0}.profile-person{display:flex;align-items:center;gap:14px}.profile-person h2{margin:3px 0;font-size:17px}.profile-person>div:last-child>span{font-size:9px;color:#8b96a5}
.profile-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.profile-info-grid>div{background:#f8fafb;border:1px solid #e7ecef;border-radius:12px;padding:12px}.profile-info-grid small{display:block;color:#8b96a5;font-size:8px}.profile-info-grid b{display:block;margin-top:3px;font-size:10px}.profile-info-grid .full{grid-column:1/-1}
.child-profile-new h3{font-size:13px;margin:20px 0 10px}.child-profile-new .documents-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:1000px){.child-form-grid{grid-template-columns:250px 1fr}.children-grid{grid-template-columns:1fr}}
@media(max-width:700px){.child-form-grid{grid-template-columns:1fr}.photo-panel{position:static}.child-fields-grid,.docs-upload-grid{grid-template-columns:1fr}.children-page-head,.children-toolbar{padding-left:15px;padding-right:15px}.children-grid{padding:15px}.child-profile-new{margin:0 15px 15px}.profile-info-grid{grid-template-columns:1fr 1fr}}

/* Fast live child lookup */
.sponsor-child-search{position:relative}.live-search-box{position:relative!important;display:flex;align-items:center;gap:8px}.search-leading{font-size:20px;color:#8995a2}.live-search-box input{flex:1!important}.search-state{font-size:8px;color:#9aa4af;white-space:nowrap}.child-results{position:absolute;z-index:80;right:0;left:0;top:calc(100% + 7px);display:none;background:#fff;border:1px solid #e0e6eb;border-radius:14px;box-shadow:0 18px 45px rgba(20,30,40,.13);padding:6px;max-height:360px;overflow:auto}.child-results.show{display:block;animation:searchDrop .15s ease}@keyframes searchDrop{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.child-result-item{width:100%;border:0;background:#fff;display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;text-align:right;padding:9px;border-radius:10px;cursor:pointer;font-family:inherit}.child-result-item:hover{background:#f6f9fb}.child-result-item.disabled{cursor:not-allowed;opacity:.6}.mini-child-photo{width:42px;height:42px;border-radius:11px;background:#edf2f5;display:grid;place-items:center;overflow:hidden}.mini-child-photo img{width:100%;height:100%;object-fit:cover}.mini-child-info b{display:block;font-size:10px}.mini-child-info small{display:block;color:#8b96a5;font-size:8px;margin-top:2px}.mini-child-status{font-size:8px;color:#a91f25;font-weight:900;white-space:nowrap}.child-result-item.disabled .mini-child-status{color:#8b96a5}.child-search-message{padding:18px;text-align:center;color:#8b96a5;font-size:9px}.selected-child{display:none}.selected-child.show{display:block}
@media(max-width:600px){.search-state{display:none}.child-result-item{grid-template-columns:40px 1fr}.mini-child-status{grid-column:2}}

/* ===== Monthly sponsorship dues ===== */
.due-hero{background:radial-gradient(circle at 90% 0,rgba(190,28,35,.055),transparent 32%),#fff}
.due-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.due-head h2{margin:2px 0 4px}.due-head p{margin:0;color:#8995a2;font-size:10px}
.month-picker{display:flex;align-items:center;gap:13px;border:1px solid #e0e6eb;border-radius:14px;padding:7px 10px;background:#fafcfd}.month-picker a{width:29px;height:29px;border-radius:9px;background:#edf2f5;display:grid;place-items:center;text-decoration:none;color:#33404d;font-size:17px}.month-picker strong{font-size:11px;min-width:75px;text-align:center}
.due-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.due-stats>div{padding:15px 17px;border:1px solid #e3e8ec;border-radius:16px;background:#fbfcfd}.due-stats span{display:block;font-size:9px;color:#7f8b99}.due-stats strong{display:block;font-size:21px;margin-top:2px}.due-stats small{display:block;font-size:8px;color:#9aa4af;margin-top:2px}
.due-list{margin-top:18px}.due-table td{vertical-align:middle}.due-child{display:flex;align-items:center;gap:10px}.due-avatar{width:42px;height:42px;border-radius:11px;background:#eef2f5;overflow:hidden;display:grid;place-items:center;color:#b71f26;font-weight:900}.due-avatar img{width:100%;height:100%;object-fit:cover}.due-child strong{display:block;font-size:10px}.due-child small{display:block;color:#8995a2;font-size:8px;margin-top:2px}.due-table tr.due{background:linear-gradient(90deg,rgba(255,247,247,.6),transparent)}.badge.green{background:#eaf8ef;color:#178144}.btn.small{padding:7px 11px;font-size:9px}
.pay-modal{position:fixed;inset:0;z-index:200;background:rgba(13,18,24,.42);backdrop-filter:blur(5px);display:none;align-items:center;justify-content:center;padding:20px}.pay-modal.show{display:flex;animation:payFade .16s ease}@keyframes payFade{from{opacity:0}to{opacity:1}}
.pay-modal-card{position:relative;width:min(650px,100%);background:#fff;border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.2);padding:26px}.pay-modal-close{position:absolute;left:18px;top:16px;width:32px;height:32px;border:0;border-radius:10px;background:#f1f4f6;font-size:20px;cursor:pointer;color:#53606d}.pay-modal-card h2{margin:3px 0;font-size:19px}.pay-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:18px 0}.pay-summary>div{background:#f8fafb;border:1px solid #e7ecef;border-radius:12px;padding:10px}.pay-summary small{display:block;color:#8c97a4;font-size:8px}.pay-summary b{display:block;font-size:10px;margin-top:3px}
@media(max-width:700px){.due-head{align-items:flex-start;flex-direction:column}.due-stats{grid-template-columns:1fr}.pay-summary{grid-template-columns:1fr 1fr}.pay-modal-card{padding:20px}}

/* Unified orphan registry */
.child-directory-panel{background:linear-gradient(180deg,#fff,#fbfcfd)}.directory-search{margin:16px 0;max-width:760px}.directory-search input{flex:1}.child-directory-panel .table td{vertical-align:middle}.sponsor-from-directory{text-decoration:none!important}
