/* Amasystem Gestão de Igrejas v1.9.51.10.178 - Correção do conflito global .qr na home */
:root{--ink:#f8ffff;--muted:#d2edf0;--card-a:rgba(8,74,86,.48);--card-b:rgba(4,51,62,.70);--line:rgba(198,241,246,.34);--shadow:0 18px 44px rgba(0,21,29,.24)}
.site-header{display:none!important}
.public-body{margin:0!important;min-height:100vh!important;background:#063b48!important;overflow-x:hidden!important}
.portal-home,.portal-home *{box-sizing:border-box}
.portal-home{min-height:100svh;padding:28px 34px 20px;color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:radial-gradient(circle at 50% 0,rgba(28,185,199,.10),transparent 30%),linear-gradient(180deg,#064351 0%,#063743 100%)}
.portal-shell{width:min(1498px,100%);margin:0 auto;position:relative}
.portal-topbar{height:74px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.portal-brandmark{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,rgba(4,90,105,.78),rgba(3,56,68,.92));border:1px solid rgba(133,242,250,.33);box-shadow:0 0 0 5px rgba(26,210,222,.09),0 0 27px rgba(27,221,230,.24)}
.portal-brandmark svg{width:41px;height:41px;stroke:#eaffff;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.portal-topbar-actions{display:flex;align-items:center;gap:12px}
.portal-help{width:42px;height:42px;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:rgba(255,255,255,.035);color:#fff;font:800 19px/1 inherit;cursor:pointer}
.portal-welcome{min-height:52px;display:flex;align-items:center;gap:10px;padding:7px 14px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(255,255,255,.045);font-size:15px;font-weight:750}
.portal-avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#f2e9ff,#c6b6dd);color:#665475;border:1px solid rgba(255,255,255,.76);font-size:13px}.portal-welcome b{color:#fff}
.portal-head{text-align:center;margin:-66px auto 28px;max-width:900px;text-shadow:0 3px 14px rgba(0,0,0,.30)}
.portal-head h1{margin:0;font-size:clamp(46px,3.55vw,61px);line-height:1;font-weight:900;letter-spacing:-1.7px}.portal-head>p{margin:8px 0 0;color:#d8f2f3;font-size:clamp(17px,1.25vw,21px);font-weight:500}
.portal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.portal-card{position:relative;min-width:0;height:254px;padding:17px 17px 14px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:17px;background:linear-gradient(155deg,var(--card-a),var(--card-b));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--shadow);overflow:hidden;backdrop-filter:blur(9px)}
.portal-card:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 28%,transparent 72%,rgba(255,255,255,.025));pointer-events:none}
.portal-card-main,.portal-card-foot{position:relative;z-index:1}
.portal-card-main{flex:1;min-height:0;display:grid;grid-template-columns:72px minmax(0,1fr);column-gap:18px;align-content:start}
.portal-icon{grid-column:1;grid-row:1;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;overflow:hidden;color:#233137;background:radial-gradient(circle at 35% 28%,#fff 0 13%,#c5fbff 54%,#73dce4 100%);border:1px solid rgba(255,255,255,.86);box-shadow:0 0 0 7px rgba(50,233,239,.10),0 0 24px rgba(35,225,232,.44),inset 0 0 12px rgba(255,255,255,.82)}
.portal-icon svg{width:38px;height:38px;stroke:currentColor;stroke-width:2.05;fill:none;stroke-linecap:round;stroke-linejoin:round}.portal-icon img{width:100%;height:100%;object-fit:cover;display:block}
.portal-card.member .portal-icon{background:radial-gradient(circle at 35% 28%,#fff 0 13%,#e0ffdc 54%,#abeeb1 100%);box-shadow:0 0 0 7px rgba(126,250,160,.09),0 0 24px rgba(111,242,150,.36),inset 0 0 12px rgba(255,255,255,.82)}
.portal-card.portal-qr-card.member-qr .portal-icon{background:radial-gradient(circle at 35% 28%,#fff 0 13%,#f4d9ff 54%,#d99be8 100%);box-shadow:0 0 0 7px rgba(220,102,245,.09),0 0 24px rgba(221,90,244,.36),inset 0 0 12px rgba(255,255,255,.82)}
.portal-copy{grid-column:2;grid-row:1;min-width:0;padding-top:4px}
.portal-copy h2{margin:0 0 9px;color:#fff;font-size:20px;line-height:1.08;font-weight:850;letter-spacing:-.2px;text-shadow:0 2px 8px rgba(0,0,0,.32)}
.portal-copy p{margin:0;color:#f0ffff;font-size:13.4px;line-height:1.45;font-weight:520;text-shadow:0 2px 7px rgba(0,0,0,.34)}
.portal-card-foot{margin-top:auto;padding-top:10px;width:100%}
.portal-btn{width:100%;height:39px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 13px;border:1px solid rgba(255,255,255,.15);border-radius:9px;background:linear-gradient(180deg,#0dc2ce,#07869b);box-shadow:0 0 17px rgba(15,215,224,.27),inset 0 1px 0 rgba(255,255,255,.25);color:#fff;text-decoration:none;font:800 13.2px/1 inherit;cursor:pointer}.portal-btn.blue{background:linear-gradient(180deg,#148edc,#1966cb);box-shadow:0 0 17px rgba(25,130,226,.28),inset 0 1px 0 rgba(255,255,255,.24)}.portal-btn.member-btn{background:linear-gradient(180deg,#3a9a4b,#237337)}.portal-btn.purple,.portal-card.portal-qr-card .portal-btn{background:linear-gradient(180deg,#9c27c8,#68108f);box-shadow:0 0 17px rgba(201,60,224,.25),inset 0 1px 0 rgba(255,255,255,.24)}
.portal-card.portal-qr-card .portal-card-main{grid-template-columns:72px minmax(0,1fr) 96px;column-gap:16px}.portal-card.portal-qr-card .portal-copy{grid-column:2;grid-row:1}.portal-card.portal-qr-card .portal-qr-box{grid-column:3;grid-row:1;align-self:end;justify-self:end;margin-top:62px}
.portal-qr-box{width:92px;height:92px;padding:6px;border-radius:11px;background:#fff;box-shadow:0 0 0 4px rgba(225,75,245,.10),0 0 20px rgba(228,85,244,.30)}.portal-qr-box img{display:block;width:100%;height:100%;object-fit:contain}
.portal-badge{position:absolute;top:12px;right:12px;z-index:3;padding:6px 11px;border-radius:999px;background:linear-gradient(180deg,#278fea,#1e66bb);border:1px solid rgba(255,255,255,.17);box-shadow:0 8px 17px rgba(8,68,141,.30);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase}
.portal-highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:18px;padding:15px 22px;border:1px solid rgba(206,247,251,.17);border-radius:17px;background:linear-gradient(160deg,rgba(7,63,75,.40),rgba(4,48,59,.52));box-shadow:var(--shadow)}.portal-highlights article{display:flex;align-items:flex-start;gap:12px}.portal-highlights article>span{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:12px;background:rgba(0,0,0,.14);font-size:18px}.portal-highlights b{display:block;margin:0 0 3px;color:#fff;font-size:13.7px}.portal-highlights small{display:block;color:#d7eef0;font-size:12px;line-height:1.35}
.portal-footer{display:flex;align-items:center;justify-content:center;position:relative;padding:18px 4px 0;color:rgba(255,255,255,.70);font-size:12.5px;font-weight:600}.portal-version{position:absolute;right:4px;color:rgba(255,255,255,.55);font-size:11.5px;font-weight:700}

/* Proteção contra classes globais do app.css: os cards QR da home nunca devem herdar largura fixa. */
.portal-card.portal-qr-card{width:auto!important;max-width:none!important;min-width:0!important}
/* Modais */
body.modal-open{overflow:hidden}.portal-modal{position:fixed;inset:0;z-index:500;display:none;place-items:center;padding:18px}.portal-modal.open{display:grid}.portal-modal-backdrop{position:absolute;inset:0;background:rgba(0,20,27,.72);backdrop-filter:blur(10px)}.portal-modal-card{position:relative;z-index:1;width:min(760px,96vw);max-height:min(82vh,760px);overflow:auto;border:1px solid rgba(255,255,255,.45);border-radius:24px;padding:26px;background:linear-gradient(145deg,rgba(20,84,94,.98),rgba(7,47,58,.99));box-shadow:0 30px 80px rgba(0,0,0,.44);color:#fff}.portal-modal-card.qr-dialog{width:min(520px,96vw);text-align:center}.portal-modal-close{position:absolute;right:15px;top:13px;width:39px;height:39px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:25px;cursor:pointer}.portal-modal-card h2{margin:0 45px 8px 0;font-size:28px}.portal-modal-card>p{margin:0 0 18px;color:#d8f7f5}.church-modal-search{width:100%;height:46px;border:1px solid rgba(255,255,255,.38);border-radius:12px;padding:0 15px;background:rgba(255,255,255,.11);color:#fff;font:700 15px/1 inherit;outline:none}.church-modal-search::placeholder{color:#d8efef}.church-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.church-option{display:grid;grid-template-columns:54px 1fr;gap:12px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.22);border-radius:15px;background:rgba(255,255,255,.09);color:#fff;text-decoration:none}.church-option:hover{background:rgba(255,255,255,.16);border-color:#9dffff}.church-option.hidden{display:none}.church-option-avatar{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#70f6ee,#1a8fa5);font-size:25px}.church-option-avatar img{width:100%;height:100%;object-fit:cover}.church-option b{display:block;font-size:16px}.church-option small{display:block;color:#d2eeee;margin-top:3px}.church-option-actions{grid-column:1/-1;display:flex;gap:7px;margin-top:4px}.church-option-actions span{flex:1;text-align:center;padding:6px;border-radius:8px;background:rgba(3,36,45,.46);font-size:12px;font-weight:800}.church-option-actions button{display:contents;border:0;padding:0;margin:0;color:inherit;font:inherit;cursor:pointer}.church-option-actions .site-unavailable{background:rgba(105,57,28,.72);color:#ffe8d2}.portal-site-toast{position:fixed;left:50%;top:24px;z-index:900;transform:translate(-50%,-20px);min-width:min(92vw,390px);padding:14px 18px;border:1px solid rgba(255,214,170,.68);border-radius:14px;background:rgba(91,48,23,.97);color:#fff8ef;text-align:center;font-weight:850;box-shadow:0 18px 48px rgba(0,0,0,.38);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.portal-site-toast.show{opacity:1;transform:translate(-50%,0)}.qr-dialog .portal-qr-box{width:240px;height:240px;margin:20px auto}.qr-url-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:12px}.qr-url-row input{min-width:0;height:44px;border:1px solid #b9dfe2;border-radius:10px;padding:0 12px}.qr-url-row button,.qr-actions button,.qr-actions a{border:0;border-radius:10px;padding:11px 14px;font-weight:800;cursor:pointer;text-decoration:none;background:#22cbd3;color:#06313a}.qr-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:15px}.qr-actions .secondary{background:#e7f5f5;color:#12404a}.qr-local-warning{margin:12px 0;padding:10px;border-radius:10px;background:#fff3cd;color:#6f4d00}.portal-help-list{display:grid;gap:8px;margin-top:15px}.portal-help-list div{padding:11px 13px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.08)}
@media(max-width:1180px){.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-head{margin:-36px auto 24px}.portal-card{height:246px}}
@media(max-width:680px){.portal-home{padding:14px 12px 20px}.portal-topbar{height:auto;margin-bottom:14px}.portal-brandmark{width:60px;height:60px}.portal-topbar-actions{align-items:flex-start}.portal-welcome{padding:6px 9px;font-size:13px}.portal-head{text-align:left;margin:0 0 18px}.portal-head h1{font-size:35px}.portal-head>p{font-size:15px}.portal-grid,.portal-highlights{grid-template-columns:1fr}.portal-card{height:auto;min-height:230px}.portal-card-main{grid-template-columns:64px minmax(0,1fr);column-gap:14px}.portal-icon{width:62px;height:62px}.portal-card.portal-qr-card .portal-card-main{grid-template-columns:64px minmax(0,1fr) 82px}.portal-card.portal-qr-card .portal-qr-box{width:80px;height:80px;margin-top:58px}.portal-copy h2{font-size:18px}.portal-copy p{font-size:13px}.portal-highlights{gap:14px}.portal-footer{justify-content:flex-start;padding-right:0;flex-direction:column;align-items:flex-start;gap:6px}.portal-version{position:static}.church-option-grid{grid-template-columns:1fr}.qr-url-row{grid-template-columns:1fr}.qr-dialog .portal-qr-box{width:210px;height:210px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.portal-home{background:#fff!important}.portal-grid,.portal-help,.portal-highlights,.portal-footer{display:none!important}.portal-modal{position:static;display:block}.portal-modal-backdrop,.portal-modal-close,.qr-url-row,.qr-actions,.qr-local-warning{display:none!important}.portal-modal-card{box-shadow:none;color:#111;background:#fff;border:0}.portal-modal-card>p{color:#333}}
