*{box-sizing:border-box}html,body{color:#16223b;background:#f3f6fb;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{grid-template-columns:270px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#142441;flex-direction:column;height:100vh;padding:26px 20px;display:flex;position:sticky;top:0}.brand{margin-bottom:30px;font-size:23px;font-weight:800;line-height:1.15}.brand small{opacity:.72;margin-top:8px;font-size:12px;font-weight:500;display:block}.nav{gap:7px;display:grid}.nav a{color:#e8eef9;border-radius:11px;align-items:center;gap:11px;padding:12px 14px;transition:all .15s;display:flex}.nav a:hover{background:#20385f;transform:translate(2px)}.navicon{text-align:center;width:24px;font-weight:800}.sidebar-foot{margin-top:auto;padding-top:20px}.version-pill{color:#dce7fb;background:#20385f;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700;display:inline-block}.main{padding:30px}.topbar{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.topbar h1{margin:0;font-size:30px}.top-subtitle{margin-top:5px}.muted{color:#6a7487}.note{color:#6c7687;margin-top:6px;font-size:12px}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.card{background:#fff;border:1px solid #e2e8f2;border-radius:16px;padding:18px;box-shadow:0 8px 24px #1927490d}.metric{margin-top:8px;font-size:30px;font-weight:800}.metric.small{font-size:24px}.sticky-family-head{z-index:8;background:#f3f6fb;padding:0 0 10px;position:sticky;top:0}.family-hero{grid-template-columns:1.5fr repeat(3,1fr);gap:14px;display:grid}.hero-main{color:#fff;background:linear-gradient(135deg,#172b4f,#213c68)}.hero-main .muted{color:#cfd9ea}.hero-main h2{margin:7px 0 0}.alertbar{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.alertbox{border:1px solid #0000;border-radius:11px;padding:11px 13px;font-size:13px;font-weight:700}.alertbox.warn{color:#765300;background:#fff7df;border-color:#f0d58a}.alertbox.danger{color:#8b2323;background:#ffecec;border-color:#f3b4b4}.alertbox.ok{color:#1f6d3e;background:#edf9f1;border-color:#b9e0c7}.tabs{flex-wrap:wrap;gap:8px;margin:14px 0 0;display:flex}.tabs a{background:#fff;border:1px solid #dce3ed;border-radius:9px;padding:9px 12px;font-size:13px;font-weight:700}.tabs a.active{color:#fff;background:#142441;border-color:#142441}.workflow-tabs{padding-bottom:2px}.section-title{justify-content:space-between;align-items:end;gap:18px;margin:28px 0 14px;display:flex}.section-title h2{margin:0}.form{background:#fff;border:1px solid #e2e8f2;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px;display:grid}.form.compact{padding:16px}.field{gap:7px;min-width:0;display:grid}.field.full{grid-column:1/-1}label{font-size:13px;font-weight:700}input,select,textarea{color:#172033;background:#fff;border:1px solid #cdd6e4;border-radius:9px;outline:none;width:100%;padding:11px 12px}input:focus,select:focus,textarea:focus{border-color:#617cae;box-shadow:0 0 0 3px #546fa41f}textarea{resize:vertical;min-height:100px}.section-grid{grid-template-columns:1.2fr .8fr;gap:16px;display:grid}.modalcard{background:#f8fafc;border:1px solid #e3e8f0;border-radius:14px;padding:14px}.inline-edit{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.tablewrap{background:#fff;border:1px solid #e2e8f2;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #1927490a}table{border-collapse:collapse;width:100%}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #edf0f5;padding:14px 16px}th{text-transform:uppercase;letter-spacing:.06em;color:#667085;background:#fafbfc;font-size:11px}tr:last-child td{border-bottom:0}.badge{background:#eef2f7;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700;display:inline-block}.badge.ok{color:#17663b;background:#e9f8ef}.badge.warn{color:#855f00;background:#fff6dd}.badge.danger{color:#9b2525;background:#ffe9e9}.badge.info{color:#204d91;background:#e9f1ff}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn{color:#fff;cursor:pointer;background:#142441;border:0;border-radius:10px;justify-content:center;align-items:center;padding:10px 14px;font-weight:700;display:inline-flex}.btn:hover{filter:brightness(1.08)}.btn.secondary{color:#172033;background:#eef2f7}.btn.light{color:#142441;background:#fff;border:1px solid #dbe2ec}.btn.danger{background:#a72d2d}.btn.small{padding:7px 10px;font-size:12px}.receipt-chip{color:#204d91;background:#e9f1ff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-block}.empty{text-align:center;color:#738095;padding:24px}@media (max-width:1100px){.family-hero{grid-template-columns:repeat(2,1fr)}.section-grid{grid-template-columns:1fr}}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.main{padding:20px}.form,.inline-edit{grid-template-columns:1fr}.field.full,.inline-edit .full{grid-column:auto}.sticky-family-head{position:relative}}@media (max-width:620px){.family-hero{grid-template-columns:1fr}.main{padding:14px}.tablewrap{overflow:auto}.topbar{align-items:flex-start}.tabs a{text-align:center;flex:1;min-width:110px}}.stack-list{gap:14px;display:grid}.empty-state-card{text-align:center;background:#fff;border:1px solid #e2e8f2;border-radius:16px;width:100%;padding:28px;box-shadow:0 8px 24px #1927490a}.empty-state-title{margin-bottom:6px;font-size:18px;font-weight:800}.wide-form{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.record-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}@media (max-width:900px){.wide-form{grid-template-columns:1fr}}.main{padding-top:20px}.topbar{margin-bottom:16px}.topbar h1{font-size:27px}.sticky-family-head{padding-bottom:6px}.family-hero{gap:12px}.family-hero .card{min-height:108px;padding:14px 16px}.family-hero .metric{font-size:26px}.family-hero .metric.small{font-size:22px}.hero-main h2{font-size:24px}.alertbar{margin-top:8px}.alertbox{padding:8px 11px;font-size:12px}.tabs{margin-top:10px}.tabs a{padding:7px 11px;font-size:12px}.section-title{margin:16px 0 10px}.section-title h2{font-size:21px}.compact-title{margin-top:14px}.empty-state-card{padding:16px 18px}.empty-state-title{font-size:16px}.compact-single-form{border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px;width:100%;padding:16px;display:grid}.compact-single-form .field{gap:5px}.compact-single-form .field.full{grid-column:1/-1}.compact-single-form label{font-size:12px}.compact-single-form input,.compact-single-form select{min-height:42px;padding:9px 10px}.compact-single-form textarea{min-height:72px;max-height:90px;padding:9px 10px}.compact-single-form .btn{min-height:42px}.stack-list{gap:10px}.modalcard{padding:12px}.inline-edit{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 10px}.inline-edit .full{grid-column:1/-1}.inline-edit textarea{min-height:68px}.record-head{margin-bottom:2px}.attachment-row{margin-top:7px}.receipt-chip{padding:5px 8px}@media (max-width:1250px){.compact-single-form,.inline-edit{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1000px){.compact-single-form,.inline-edit{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.compact-single-form,.inline-edit{grid-template-columns:1fr}.compact-single-form .field.full,.inline-edit .full{grid-column:auto}}.operational-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.operational-kpis .card{min-height:104px;padding:15px 17px}.operational-kpis .metric{margin-top:7px;font-size:27px}.attention-card{background:#fffaf0!important;border-color:#f1cf82!important}.danger-card{background:#fff5f5!important;border-color:#efb2b2!important}.operational-filter{grid-template-columns:minmax(240px,1fr) minmax(170px,240px) auto auto;align-items:center;gap:8px;display:grid}.operational-filter input,.operational-filter select{min-height:42px}.operational-form-card{background:#fff;border:1px solid #e2e8f2;border-radius:16px;padding:16px;box-shadow:0 8px 24px #1927490a}.status-badge,.priority-badge{white-space:nowrap;background:#f4f7fb;border:1px solid #dbe3ef;border-radius:999px;align-items:center;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.status-agendada,.status-aberta,.status-pendente{color:#244d87;background:#eef4ff;border-color:#cdddf7}.status-realizada,.status-resolvida,.attendance-presente{color:#176332;background:#ecf9f0;border-color:#bfe5c9}.status-cancelada,.attendance-falta{color:#9d2525;background:#fff0f0;border-color:#efc2c2}.status-em-andamento,.status-aguardando-familia,.attendance-justificada{color:#7a5b0b;background:#fff8e8;border-color:#ecd89c}.priority-critica{color:#a32121;background:#ffecec;border-color:#efb4b4}.priority-alta{color:#934f00;background:#fff3e6;border-color:#efc68f}.priority-normal{color:#315d91;background:#eef4ff;border-color:#cbdcf5}.priority-baixa{color:#5f6975;background:#f3f5f7;border-color:#dce1e6}.overdue-row{background:snow}.overdue-note{color:#a32121;margin-top:4px;font-size:11px;font-weight:800}.pending-hero{background:#fff;border:1px solid #e2e8f2;border-radius:16px;grid-template-columns:1.2fr .7fr .7fr .8fr auto;align-items:center;gap:12px;margin-bottom:12px;padding:15px 17px;display:grid}.pending-overdue{background:snow;border-color:#efb2b2}.operational-alert{border-radius:12px;margin-bottom:12px;padding:10px 13px;font-size:13px;font-weight:800}.operational-alert.danger{color:#8d2424;background:#fff0f0;border:1px solid #efc2c2}table select.status-badge{min-height:36px;padding:5px 28px 5px 9px}@media (max-width:1100px){.operational-kpis,.pending-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-hero .actions{grid-column:1/-1}.operational-filter{grid-template-columns:1fr 1fr}}@media (max-width:700px){.operational-kpis,.operational-filter,.pending-hero{grid-template-columns:1fr}.pending-hero .actions{grid-column:auto}}.bulk-toolbar{background:#fff;border:1px solid #e2e8f2;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;padding:12px 14px;display:flex}.bulk-toolbar-title{gap:3px;display:grid}.bulk-toolbar-title span{color:#6c7687;font-size:12px}.attendance-select{font-weight:700}.attendance-presente{color:#176332!important;background:#edf9f1!important;border-color:#bfe5c9!important}.attendance-falta{color:#9d2525!important;background:#fff0f0!important;border-color:#efc2c2!important}.attendance-justificada{color:#7a5b0b!important;background:#fff8e8!important;border-color:#ecd89c!important}.attendance-pendente{color:#244d87!important;background:#eef4ff!important;border-color:#cdddf7!important}.btn.success{color:#fff;background:#1e7a43}.family-quick-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}@media (max-width:800px){.bulk-toolbar{flex-direction:column;align-items:flex-start}.family-quick-actions{flex-wrap:wrap;justify-content:flex-start}}@media (max-width:1000px){.report-filter{grid-template-columns:1fr 1fr}.report-summary-grid{grid-template-columns:1fr}}@media (max-width:650px){.report-filter{grid-template-columns:1fr}.report-tabs a{text-align:center;flex:1;min-width:120px}}.report-filter{background:#fff;border:1px solid #e2e8f2;border-radius:16px;grid-template-columns:minmax(240px,1.4fr) 170px 170px auto;align-items:end;gap:12px;margin-bottom:12px;padding:16px;display:grid}.report-filter-actions{padding-bottom:1px}.report-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.report-tabs a{background:#fff;border:1px solid #dce3ed;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:700}.report-tabs a.active{color:#fff;background:#142441;border-color:#142441}.report-kpis .card{min-height:105px}.report-summary-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.report-mini-list{gap:8px;margin-top:12px;display:grid}.report-mini-list span{border-bottom:1px solid #edf0f5;justify-content:space-between;gap:12px;padding-bottom:7px;font-size:13px;display:flex}@media (max-width:1000px){.report-filter{grid-template-columns:1fr 1fr}.report-summary-grid{grid-template-columns:1fr}}@media (max-width:650px){.report-filter{grid-template-columns:1fr}.report-tabs a{text-align:center;flex:1;min-width:120px}}.report-pdf-btn{white-space:nowrap}@media (max-width:1000px){.report-filter-actions{grid-column:1/-1}}.mobile-topbar,.mobile-menu-button,.mobile-nav-panel,.mobile-nav-backdrop{display:none}img,svg,canvas,video{max-width:100%;height:auto}.tablewrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.tablewrap table{min-width:760px}.form,.compact-single-form,.family-form,.report-filter,.filterbar{min-width:0}input,select,textarea,button{max-width:100%}.actions{min-width:0}.report-tabs,.tabs,.workflow-tabs{scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.report-tabs a,.tabs a,.workflow-tabs a{flex:none}@media (max-width:1180px){.main{padding-left:22px;padding-right:22px}.grid,.operational-kpis,.report-kpis,.family-hero,.compact-single-form,.inline-edit,.report-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-actions{grid-column:1/-1}.pending-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-hero .actions{grid-column:1/-1}}@media (max-width:900px){body{overflow-x:hidden}.shell{min-height:100vh;display:block}.sidebar{display:none}.main{width:100%;padding:14px 16px 24px}.mobile-topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.mobile-menu-button{color:#fff;cursor:pointer;background:#142441;border:0;border-radius:10px;align-items:center;gap:8px;padding:10px 13px;font-weight:800;display:inline-flex}.mobile-version{color:#6a7487;font-size:11px;font-weight:700}.mobile-nav-panel{z-index:1002;color:#fff;background:#142441;width:min(330px,88vw);padding:20px;display:block;position:fixed;inset:0 auto 0 0;overflow:auto;box-shadow:20px 0 60px #00000047}.mobile-nav-backdrop{z-index:1001;background:#08101e7a;border:0;display:block;position:fixed;inset:0}.mobile-nav-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.mobile-nav-head strong{font-size:18px;display:block}.mobile-nav-head span{color:#cbd6e9;margin-top:5px;font-size:11px;display:block}.mobile-nav-close{color:#fff;cursor:pointer;background:#20385f;border:0;border-radius:10px;width:36px;height:36px;font-size:24px;line-height:1}.mobile-nav-links{gap:7px;display:grid}.mobile-nav-links a{color:#eef3fb;background:#ffffff09;border-radius:10px;align-items:center;gap:10px;padding:12px 13px;display:flex}.mobile-nav-links a:active{background:#20385f}.topbar{align-items:flex-start;gap:12px;margin-bottom:16px}.topbar h1{font-size:25px;line-height:1.1}.topbar .btn{min-height:40px}.sticky-family-head{position:relative;top:auto}.grid,.operational-kpis,.report-kpis,.family-hero,.section-grid,.report-summary-grid,.form,.compact-single-form,.inline-edit,.form-grid,.wide-form,.report-filter,.filterbar,.operational-filter{grid-template-columns:1fr 1fr}.report-filter-actions{grid-column:1/-1}.bulk-toolbar{flex-direction:column;align-items:flex-start}.bulk-toolbar .actions{width:100%}.bulk-toolbar .btn{flex:180px}.family-quick-actions{flex-wrap:wrap;justify-content:flex-start}.modalcard,.card,.form-section,.operational-form-card{border-radius:14px}}@media (max-width:640px){.main{padding:10px 10px 20px}.topbar{flex-direction:column}.topbar form,.topbar .btn{width:100%}.topbar h1{font-size:22px}.top-subtitle{font-size:12px}.grid,.operational-kpis,.report-kpis,.family-hero,.section-grid,.report-summary-grid,.form,.compact-single-form,.inline-edit,.form-grid,.wide-form,.report-filter,.filterbar,.operational-filter,.pending-hero{grid-template-columns:1fr}.field.full,.compact-single-form .field.full,.inline-edit .full,.form-grid .full,.form-grid .span-2,.pending-hero .actions,.report-filter-actions{grid-column:auto}.card,.family-hero .card,.operational-kpis .card{min-height:0;padding:13px 14px}.metric,.family-hero .metric,.operational-kpis .metric{font-size:24px}.metric.small,.family-hero .metric.small{font-size:20px}.section-title{flex-direction:column;align-items:flex-start;gap:8px}.section-title .btn{width:100%}.form,.compact-single-form,.family-form,.operational-form-card,.form-section,.empty-state-card{padding:13px}input,select,textarea{font-size:16px}.btn{min-height:42px}.actions{width:100%}.actions .btn,.actions form{flex:100%}.actions form .btn{width:100%}.tablewrap{border-radius:12px;margin-left:-2px;margin-right:-2px}.tablewrap table{min-width:680px}th,td{white-space:nowrap;padding:11px 12px}td .note{white-space:normal}.report-tabs,.tabs,.workflow-tabs{margin-left:-2px;margin-right:-2px}.report-tabs a,.tabs a,.workflow-tabs a{min-width:auto;padding:8px 10px;font-size:12px}.bulk-toolbar{padding:11px}.bulk-toolbar .actions{grid-template-columns:1fr;display:grid}.bulk-toolbar .actions .btn{width:100%}.family-quick-actions{grid-template-columns:1fr;display:grid}.family-quick-actions .btn{width:100%}.receipt-meta{grid-template-columns:1fr}}@media (max-width:420px){.mobile-menu-button{padding:9px 11px}.mobile-version{display:none}.main{padding-left:8px;padding-right:8px}.topbar h1{font-size:20px}.card,.form,.compact-single-form,.operational-form-card,.form-section{border-radius:12px}.tablewrap table{min-width:620px}}
