.layout-container{width:100%;min-height:100vh;display:flex}.layout-sidebar{color:#fff;z-index:50;background:linear-gradient(#061e3d 0%,#031327 100%);flex-direction:column;width:260px;height:100vh;transition:transform .3s;display:flex;position:sticky;top:0}.sidebar-logo{border-bottom:1px solid #ffffff1a;align-items:center;gap:.75rem;padding:1.5rem;font-size:1.25rem;font-weight:600;display:flex}.sidebar-nav{flex-direction:column;flex:1;gap:.25rem;padding:1rem 0;display:flex;overflow-y:auto}.sidebar-link{color:#fffc;align-items:center;gap:.75rem;padding:.75rem 1.5rem;font-size:.95rem;transition:all .2s;display:flex;position:relative}.sidebar-link:hover{color:#fff;background-color:#ffffff1a}.sidebar-link.active{color:#f7d774;background:#d4af3729;border-left:3px solid #d4af37;font-weight:500}.sidebar-footer{border-top:1px solid #ffffff1a;padding:1.5rem}.plan-card{border-radius:var(--radius-md);background-color:#ffffff1a;margin-bottom:1rem;padding:1rem}.plan-card h4{color:var(--color-gold);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.plan-card p{color:#fffc;margin-bottom:.75rem;font-size:.75rem}.btn-outline-white{color:#fff;border-radius:var(--radius-md);border:1px solid #ffffff4d;width:100%;padding:.5rem;font-size:.8rem;transition:background .2s}.btn-outline-white:hover{background-color:#ffffff1a}.church-selector{cursor:pointer;align-items:center;gap:.75rem;display:flex}.church-avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.church-info{flex:1}.church-name{font-size:.85rem;font-weight:500}.church-pastor{color:#ffffffb3;font-size:.75rem}.layout-main{flex-direction:column;flex:1;min-width:0;display:flex}.layout-header{background-color:var(--color-bg-card);border-bottom:1px solid var(--color-border);z-index:40;justify-content:space-between;align-items:center;height:70px;padding:0 2rem;display:flex;position:sticky;top:0}.header-left,.header-right{align-items:center;gap:1rem;display:flex}.mobile-menu-btn{color:var(--color-text-muted);display:none}.header-title{color:var(--color-text-main);font-size:1rem;font-weight:500}.header-search{background-color:var(--color-bg-main);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:.5rem;width:300px;padding:.5rem 1rem;display:flex}.header-search input{color:var(--color-text-main);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.header-icon-btn{color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s;display:flex;position:relative}.header-icon-btn:hover{background-color:var(--color-bg-main);color:var(--color-primary)}.notification-badge{background-color:var(--color-error);border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px}.layout-content{flex:1;padding:2rem;overflow-y:auto}.layout-overlay{z-index:45;background-color:#00000080;display:none;position:fixed;inset:0}@media (width<=1024px){.layout-sidebar{position:fixed;transform:translate(-100%)}.layout-sidebar.open{transform:translate(0)}.mobile-menu-btn,.layout-overlay{display:block}}@media (width<=768px){.header-search{display:none}.layout-content{padding:1rem}.layout-header{padding:0 1rem}}.master-sidebar{background-color:var(--color-primary-dark);color:#f8fafc;z-index:100;width:260px;height:100vh;font-family:var(--font-family);flex-direction:column;transition:width .3s;display:flex;position:fixed;top:0;left:0;overflow:hidden;box-shadow:2px 0 10px #0000001a}.ms-header{border-bottom:1px solid #ffffff0d;align-items:center;gap:.75rem;padding:1.5rem;display:flex}.ms-logo-container{color:var(--color-gold);justify-content:center;align-items:center;display:flex}.ms-title-container{flex-direction:column;display:flex}.ms-title-container h2{color:var(--color-bg-main);margin:0;font-size:1.1rem;font-weight:700;line-height:1.2}.ms-title-container span{color:#fff9;font-size:.75rem}.ms-nav{flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem 1rem;display:flex;overflow-y:auto}.ms-nav::-webkit-scrollbar{width:4px}.ms-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.ms-nav-group{flex-direction:column;gap:.25rem;display:flex}.ms-group-title{color:#fff6;letter-spacing:.5px;margin-bottom:.5rem;padding:0 .75rem;font-size:.65rem;font-weight:700}.ms-nav-item{color:#ffffffb3;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.ms-nav-item:hover{color:#f8fafc;background-color:#ffffff0d}.ms-nav-item.active{background-color:var(--color-gold);color:var(--color-primary-dark);font-weight:600}.ms-footer{border-top:1px solid #ffffff0d;padding:1rem}.ms-admin-card{background-color:#0003;border:1px solid #ffffff0d;border-radius:12px;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.ms-admin-role{color:var(--color-gold);text-transform:uppercase;align-items:center;gap:.35rem;margin-bottom:.25rem;font-size:.7rem;font-weight:700;display:flex}.ms-admin-name{color:#fff;font-size:.9rem;font-weight:600}.ms-admin-email{color:#ffffff80;margin-bottom:.75rem;font-size:.75rem}.ms-btn-logout{color:#ffffffb3;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:6px;justify-content:flex-start;align-items:center;gap:.5rem;width:100%;padding:.5rem;font-size:.8rem;font-weight:500;transition:all .2s;display:flex}.ms-btn-logout:hover{color:#fff;background-color:#ffffff1a}.ms-collapse-btn{color:#f8fafc;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-left:auto;padding:4px;display:flex}.ms-collapse-btn:hover{color:var(--color-gold);background:#fff3}.master-sidebar.collapsed{width:80px}.master-sidebar.collapsed .ms-title-container,.master-sidebar.collapsed .ms-nav-item span,.master-sidebar.collapsed .ms-group-title,.master-sidebar.collapsed .ms-admin-role,.master-sidebar.collapsed .ms-admin-name,.master-sidebar.collapsed .ms-admin-email,.master-sidebar.collapsed .ms-btn-logout span{display:none}.master-sidebar.collapsed .ms-header{flex-direction:column;align-items:center;padding:1rem 0}.master-sidebar.collapsed .ms-collapse-btn{margin:1rem 0 0}.master-sidebar.collapsed .ms-nav-item{justify-content:center;padding:.75rem 0}.master-sidebar.collapsed .ms-btn-logout{justify-content:center}.master-header{background-color:var(--color-bg-card);border-bottom:1px solid var(--color-border);z-index:90;align-items:center;height:72px;padding:0 2rem;display:flex;position:sticky;top:0}.mh-content{justify-content:space-between;align-items:center;width:100%;display:flex}.mh-left{align-items:center;display:flex}.mh-title-wrapper{align-items:center;gap:1rem;display:flex}.mh-crown-icon{background-color:#d4af371a;border:1px solid #d4af374d;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.mh-title-texts{flex-direction:column;display:flex}.mh-title-texts h1{color:var(--color-text-main);margin:0;font-size:1.15rem;font-weight:700;line-height:1.2}.mh-title-texts p{color:var(--color-text-secondary);margin:0;font-size:.8rem}.mh-right{align-items:center;gap:1.5rem;display:flex}.mh-date-picker{border:1px solid var(--color-border);color:var(--color-text-main);cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.mh-date-picker:hover{background-color:var(--color-bg-main)}.mh-date-picker span{margin:0 .5rem}.mh-notifications{border:1px solid var(--color-border);width:40px;height:40px;color:var(--color-text-main);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative}.mh-notifications:hover{background-color:var(--color-bg-main)}.mh-badge{color:#fff;border:2px solid var(--color-bg-card);background-color:#ef4444;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-2px;right:-2px}.mh-avatar{background-color:var(--color-gold);width:40px;height:40px;color:var(--color-primary-dark);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.master-layout{background-color:var(--color-bg,#f8fafc);height:100vh;display:flex;overflow:hidden}.master-main-content{flex-direction:column;flex:1;height:100vh;margin-left:260px;transition:margin-left .3s;display:flex}.master-page-content{flex:1;padding:2rem 2.5rem;overflow-y:auto}@media (width<=1024px){.master-main-content{margin-left:240px}}@media (width<=768px){.master-main-content{margin-left:0}}.master-layout.collapsed .master-main-content{margin-left:80px}.auth-container{background:linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary-light) 100%);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.auth-card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid #ffffff1a;width:100%;max-width:420px;padding:2.5rem 2rem;box-shadow:0 20px 40px #0003}.auth-card.card:hover{transform:none;box-shadow:0 20px 40px #0003}.auth-logo{flex-direction:column;align-items:center;margin-bottom:1.5rem;display:flex}.auth-logo img{border-radius:50%;transition:transform .3s;box-shadow:0 4px 12px #0000001a}.auth-logo img:hover{transform:scale(1.05)}.auth-logo h2{color:var(--color-primary);letter-spacing:-.5px;margin-top:1rem;font-size:1.75rem;font-weight:800}.auth-title{text-align:center;color:var(--color-text-secondary);margin-bottom:2rem;font-size:1rem;line-height:1.5}.auth-error{color:#b91c1c;border-radius:var(--radius-sm);text-align:center;background-color:#fee2e2;border:1px solid #fca5a5;margin-bottom:1.5rem;padding:.875rem;font-size:.875rem;font-weight:500}.auth-form{flex-direction:column;gap:1.25rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-label{color:var(--color-primary);font-size:.875rem;font-weight:600}.form-input{width:100%;color:var(--color-text-main);background-color:var(--color-bg-main);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;padding:.875rem 1rem;font-size:1rem;transition:all .2s}.form-input:focus{border-color:var(--color-secondary);background-color:#fff;box-shadow:0 0 0 3px #1189d926}.auth-submit{text-transform:uppercase;letter-spacing:.5px;width:100%;box-shadow:var(--shadow-gold);margin-top:1rem;padding:1rem;font-size:1.05rem}.auth-footer{text-align:center;color:var(--color-text-secondary);margin-top:2rem;font-size:.9rem}.auth-link{color:var(--color-secondary);margin-top:.5rem;font-weight:700;text-decoration:none;transition:color .2s;display:inline-block}.auth-link:hover{color:var(--color-primary-light);text-decoration:none}.cadastro-header{text-align:center;margin-bottom:2rem}.cadastro-header h2{color:var(--color-text-main);margin-bottom:1.5rem}.progress-bar{justify-content:center;gap:.5rem;margin-bottom:.5rem;display:flex}.progress-step{background-color:var(--color-border);border-radius:3px;width:30%;height:6px;transition:background-color .3s}.progress-step.active{background-color:var(--color-primary)}.step-indicator{color:var(--color-text-light);font-size:.875rem}.step-content{flex-direction:column;gap:1.25rem;animation:.3s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-actions{justify-content:space-between;margin-top:1rem;display:flex}.step-actions button{flex:1}.step-actions button:first-child{margin-right:1rem}.file-upload-wrapper{border:2px dashed var(--color-border);border-radius:var(--radius-md);text-align:center;cursor:pointer;background-color:#fafafa;padding:1.5rem;transition:border-color .2s;position:relative}.file-upload-wrapper:hover{border-color:var(--color-primary)}.file-upload-wrapper input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.upload-placeholder{color:var(--color-text-light);font-size:.875rem}.preview-img{border-radius:var(--radius-sm);object-fit:cover;max-width:100%}.logo-preview-img{max-height:100px}.capa-preview-img{width:100%;max-height:150px}:root{--font-family:"Inter", system-ui, -apple-system, sans-serif;--color-primary:#061e3d;--color-primary-dark:#031327;--color-primary-light:#0b4f9c;--color-secondary:#1189d9;--color-gold:#d4af37;--color-gold-light:#f7d774;--color-gold-dark:#a97812;--color-bg-main:#f8fafc;--color-bg-card:#fff;--color-bg-sidebar:#061e3d;--color-bg-sidebar-hover:#0b4f9c;--color-text-main:#0f172a;--color-text-secondary:#64748b;--color-text-light:#fff;--color-text-gold:#d4af37;--color-border:#e2e8f0;--color-border-gold:#d4af37;--color-success:#16a34a;--color-warning:#f59e0b;--color-danger:#dc2626;--color-info:#1189d9;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:1rem;--shadow-sm:0 2px 8px #0f172a0f;--shadow-md:0 8px 24px #0f172a1a;--shadow-gold:0 8px 24px #d4af3738}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--color-bg-main);color:var(--color-text-main);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul{list-style:none}.card{background-color:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);padding:1.5rem;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.page-animate{animation:.3s ease-out forwards fadeSlideUp}button{cursor:pointer;background:0 0;border:none;font-family:inherit;transition:transform .1s,filter .2s,opacity .2s}button:hover{filter:brightness(.95)}button:active{transform:scale(.96)}.data-table tbody tr{transition:background-color .2s}.data-table tbody tr:hover{background-color:var(--color-bg-main)}.btn-primary{color:#061e3d;border-radius:var(--radius-md);cursor:pointer;background:linear-gradient(135deg,#d4af37 0%,#f7d774 100%);border:none;padding:.75rem 1.5rem;font-weight:700;transition:opacity .2s}.btn-primary:hover{opacity:.9}.btn-secondary{color:#d4af37;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:1px solid #d4af37;padding:.75rem 1.5rem;font-weight:600;transition:background .2s}.btn-secondary:hover{background:#d4af371a}
