.family-layout{margin:0;background:#f5f7f8;color:#172b32;font-family:Arial,sans-serif;letter-spacing:0}.family-header{height:80px;background:#fff;border-bottom:1px solid #dde4e7;padding:0 max(20px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:12px}.family-brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:#183c34}.family-brand img{width:48px;height:48px;object-fit:contain}.family-brand strong{font-size:21px;display:block}.family-brand small{display:block;color:#596d77;margin-top:4px}.family-header .account{display:flex;align-items:center;gap:10px}.family-nav{max-width:1120px;margin:auto;display:flex;gap:24px;border-bottom:1px solid #dce3e6;padding:0 4px}.family-nav a{display:flex;align-items:center;gap:8px;padding:18px 0;text-decoration:none;color:#576972;border-bottom:3px solid transparent;font-weight:600;font-size:14px}.family-nav a.current{color:#176c5b;border-bottom-color:#176c5b}.family-layout i svg,.family-layout svg{width:20px;height:20px;flex-shrink:0}.family-main{max-width:1120px;margin:32px auto;padding:0 20px;min-height:70vh}.family-main h1{font-size:28px;margin:8px 0 24px;line-height:1.2}.family-main h2{font-size:18px}.family-main h3{font-size:16px}.family-main .eyebrow{font-size:12px;color:#60747e;font-weight:600}.family-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.family-child{border:1px solid #dce5e5;border-radius:8px;background:#fff;text-decoration:none;color:inherit;padding:24px;min-width:0;display:block}.family-child:hover{border-color:#176c5b;box-shadow:0 3px 10px #152e3412}.family-child h2{margin:14px 0 8px;overflow-wrap:anywhere}.family-child small{color:#62757c}.family-child .child-bottom{margin-top:24px;display:flex;align-items:center;justify-content:space-between;color:#176c5b}.family-tabs{display:flex;gap:6px;overflow:auto;border-bottom:1px solid #dce3e6;margin-bottom:24px}.family-tabs a{white-space:nowrap;padding:14px 12px;text-decoration:none;color:#586d76;font-size:14px;border-bottom:2px solid transparent}.family-tabs a.current{color:#176c5b;border-color:#176c5b;font-weight:700}.family-panel{background:#fff;padding:24px;border:1px solid #dce4e7;border-radius:8px;margin:20px 0}.family-main table{width:100%;border-collapse:collapse;font-size:14px}.family-main th{background:#f0f4f6;text-align:left;color:#526773;font-size:12px}.family-main th,.family-main td{padding:14px 12px;border-bottom:1px solid #e6ebed}.family-main .table-wrap{overflow:auto}.family-main p{line-height:1.6}.family-status{display:inline-flex;padding:4px 9px;border-radius:4px;background:#edf4f2;color:#176c5b;font-size:12px}.family-status.pendente{background:#fff2d9;color:#785313}.family-status.recusado{background:#faeeee;color:#9b3535}.family-main .field{margin:14px 0}.family-main input,.family-main select,.family-main textarea{box-sizing:border-box;max-width:100%;font:inherit}.family-main textarea{width:100%}.family-main .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.family-main .btn,.family-main button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;min-height:40px;box-sizing:border-box}.family-main .family-poll{display:flex;flex-direction:column;gap:14px}.family-poll label{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #dce4e7;border-radius:6px}.family-main .family-record{border-bottom:1px solid #e1e7eb;padding:18px 0}.family-record:last-child{border:0}.family-record p{white-space:pre-wrap;overflow-wrap:anywhere}.family-media{display:block;max-width:100%;max-height:560px;object-fit:contain;margin:20px auto}.family-main .muted{color:#637780}.family-main .btn.alt{background:#edf1f6;color:#28598a}.family-footer{text-align:center;border-top:1px solid #dce4e7;padding:20px;color:#60747e;font-size:12px}.family-header .icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center}.family-main .icon-button{width:40px;height:40px}.family-main .section{border-radius:8px}.family-main small{line-height:1.5}
.family-poll input[type=radio],.family-main input[type=checkbox]{width:18px;height:18px;min-height:0;flex:0 0 18px;padding:0}.family-poll label{justify-content:flex-start;text-align:left}
.family-launcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 28px}.family-launcher>a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:110px;text-align:center;text-decoration:none;background:#fff;border:1px solid #dce4e7;border-radius:8px;color:#275d53;padding:16px 10px;min-width:0}.family-launcher>a svg{width:26px;height:26px}.family-launcher>a:nth-child(3n+2){color:#2d6289}.family-launcher>a:nth-child(3n){color:#8a526c}.family-launcher strong{font-size:14px;overflow-wrap:anywhere}.family-finance-alert{display:flex;align-items:center;gap:14px;text-decoration:none;padding:16px;border:1px solid;border-radius:6px;margin:20px 0 24px}.family-finance-alert>span{flex:1;min-width:0}.family-finance-alert strong,.family-finance-alert small{display:block}.family-finance-alert small{margin-top:4px}.family-finance-alert.overdue{background:#fff0f0;color:#9b3030;border-color:#edbebe}.family-finance-alert.pending{background:#fff7e6;color:#805c15;border-color:#e8d8aa}.finance-state{font-size:12px;font-weight:700;padding:5px 8px;border-radius:4px;display:inline-block}.finance-row.overdue .finance-state{background:#fce4e4;color:#a03232}.finance-row.pending .finance-state{background:#fff1cd;color:#806014}.finance-row.paid .finance-state{background:#e6f4ec;color:#236749}.finance-row.suspended .finance-state{background:#eef0f3;color:#65717a}.family-main .family-finance-table td:first-child{font-weight:600}.poll-question{border:0;border-top:1px solid #e1e7eb;padding:18px 0;min-width:0;margin:0}.poll-question legend{font-weight:700;font-size:15px;max-width:100%;overflow-wrap:anywhere;padding:0 0 8px}.poll-question label{margin:8px 0}.poll-summary{padding:18px 0;border-bottom:1px solid #dce4e7}.poll-summary>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;overflow-wrap:anywhere}.poll-summary>div>strong{flex-shrink:0}.poll-response{padding:20px 0;border-bottom:1px solid #dce4e7}.poll-response header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.poll-response h3{margin:0}.poll-response dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.poll-response dt{font-weight:600;font-size:12px;color:#61727c}.poll-response dd{margin:6px 0 0;overflow-wrap:anywhere}.poll-editor-question{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;align-items:start;gap:12px;border-bottom:1px solid #dce4e7;padding:12px 0}.poll-editor-question .icon-button{margin-top:30px}.family-main .btn{max-width:100%;overflow-wrap:anywhere;white-space:normal}.family-main .family-poll input[type=radio]{width:18px;min-height:18px}.family-panel{min-width:0;overflow-wrap:anywhere}
@media(max-width:650px){.family-launcher{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.family-launcher>a{min-height:100px}.poll-editor-question{grid-template-columns:minmax(0,1fr) 36px}.poll-editor-question>.field{grid-column:1}.poll-editor-question>.icon-button{grid-column:2;grid-row:1}.poll-response dl{grid-template-columns:1fr}.family-main .family-finance-table,.family-main .family-finance-table tbody{display:block;width:100%}.family-main .family-finance-table thead{display:none}.family-main .finance-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid #dce4e7;padding:14px 0;gap:12px;background:transparent}.family-main .finance-row td{display:block;border:0;padding:0;min-width:0;overflow-wrap:anywhere}.family-main .finance-row td:first-child{grid-column:1 / -1}.family-main .finance-row td[data-label]:before{content:attr(data-label);display:block;font-size:11px;font-weight:400;color:#637780;margin-bottom:5px}.family-finance-alert{padding:14px;gap:10px}.family-finance-alert>svg{flex-shrink:0}}
.family-login-page{min-height:100vh;display:flex;flex-direction:column;background:#f3f6f5 url('/static/brand/login-background.png') center/cover fixed no-repeat}.family-login-page .family-header{padding:0 28px;flex-shrink:0}.family-login-page .family-main{display:flex;align-items:center;justify-content:center;flex-direction:column;flex:1;width:100%;min-height:0;margin:0 auto;padding:32px 24px;box-sizing:border-box}.family-login-page .family-footer{background:#ffffffe6}.family-signin{width:min(380px,100%);text-align:center}.family-signin-logo{width:92px;height:92px;object-fit:contain;margin:0 auto 20px;display:block}.family-signin h1{font-size:30px;margin:10px 0 30px}.family-signin form{text-align:left}.family-signin button{width:100%;margin-top:16px}.family-login-page .alert{width:min(420px,100%);box-sizing:border-box}.family-login-page .family-header{background:#fffffff2}
@media(max-width:680px){.family-header{height:72px;padding:0 16px}.family-brand img{width:40px;height:40px}.family-brand strong{font-size:18px}.family-header .account{gap:4px}.family-nav{gap:20px;margin:0 20px}.family-nav a{font-size:12px;gap:6px}.family-nav svg{width:17px;height:17px}.family-main{margin:24px auto;padding:0 16px}.family-cards,.family-main .grid{grid-template-columns:1fr}.family-child,.family-panel{padding:18px}.family-main h1{font-size:24px;overflow-wrap:anywhere}.family-tabs{margin-left:-4px;margin-right:-4px}.family-tabs a{padding:12px 9px;font-size:13px}.family-main th,.family-main td{padding:12px 8px}.family-main .filter-bar{flex-wrap:wrap}}
