:root{--font-display:"Fraunces",Georgia,serif;--font-ui:"Plus Jakarta Sans",system-ui,sans-serif;--font-kid:"Fredoka","Plus Jakarta Sans",sans-serif;--text-display:clamp(32px,5vw,40px);--lh-display:1.1;--text-headline:28px;--lh-headline:1.2;--fw-headline:700;--text-title:20px;--lh-title:1.3;--fw-title:600;--text-body:16px;--lh-body:1.5;--fw-body:500;--text-small:13px;--lh-small:1.5;--text-caption:11px;--lh-caption:1.4;--brand-50:#edf6ee;--brand-200:#a9d4b0;--brand-400:#3f9c5c;--brand-500:#1f7044;--brand-700:#0f4928;--coral-100:#fbd9c9;--coral-500:#e87439;--energia:#f5b400;--realegres:#16a8b9;--ouro:#e5b549;--ok:#1f7044;--atencao:#847a0b;--alerta:#b23822;--ink:#1f2a24}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-size:var(--text-body);line-height:var(--lh-body);font-weight:var(--fw-body);color:var(--ink);background:#f5f5f0;-webkit-font-smoothing:antialiased}body,h1,h2,h3,h4,h5,h6{font-family:var(--font-ui)}h1,h2,h3,h4,h5,h6{font-weight:var(--fw-headline);line-height:var(--lh-headline)}.page{display:flex;flex-direction:column;gap:28px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-title{font-size:var(--text-headline);font-weight:700;color:var(--ink);line-height:var(--lh-headline)}.page-subtitle{font-size:var(--text-small);color:#6b7280;margin-top:4px}.card{background:#fff;border-radius:12px;padding:24px;border:1px solid #e5e7eb}.card-title{font-weight:600;color:var(--ink);margin-bottom:16px}.card-title,.data-table{font-size:var(--text-body)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;border-bottom:1px solid #e5e7eb;padding:12px 16px;white-space:nowrap}.data-table td{padding:14px 16px;border-bottom:1px solid #f3f4f6;color:var(--ink);vertical-align:middle;font-size:var(--text-body)}.data-table tbody tr:hover td{background:#f9fafb}.data-table tr:last-child td{border-bottom:none}.data-table .actions{display:flex;gap:4px;justify-content:flex-end}.data-table td.col-center,.data-table th.col-center{text-align:center}.data-table td.col-shrink,.data-table th.col-shrink{width:1%;white-space:nowrap}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.badge--ok{background:#d1fae5;color:#065f46}.badge--off{background:#f3f4f6;color:#9ca3af}.badge--atencao{background:#fef9c3;color:#854d0e}.badge--alerta{background:#fee2e2;color:#991b1b}.badge--info{background:#dbeafe;color:#1e40af}.badge--coral{background:var(--coral-100);color:#9a3412}.btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-ui);font-size:var(--text-small);font-weight:600;border-radius:8px;padding:8px 16px;border:none;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap;line-height:1}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--brand-500);color:#fff}.btn--primary:hover:not(:disabled){background:var(--brand-700)}.btn--secondary{background:var(--brand-50);color:var(--brand-500)}.btn--secondary:hover:not(:disabled){background:var(--brand-200);color:#fff}.btn--ghost{background:transparent;color:#6b7280}.btn--ghost:hover:not(:disabled){background:#f3f4f6;color:var(--ink)}.btn--danger{background:#fee2e2;color:#991b1b}.btn--danger:hover:not(:disabled){background:#fca5a5}.btn--sm{padding:4px 10px;font-size:12px;border-radius:6px}.btn--icon{padding:6px;border-radius:6px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:var(--text-small);font-weight:600;color:var(--ink)}.field-hint{font-size:12px;color:#9ca3af;margin-top:2px}.field-input,.field-select,.field-textarea{font-family:var(--font-ui);font-size:var(--text-small);font-weight:500;color:var(--ink);background:var(--brand-50);border:1.5px solid var(--brand-200);border-radius:8px;padding:10px 12px;outline:none;transition:border-color .15s,background .15s;width:100%}.field-input::-moz-placeholder,.field-textarea::-moz-placeholder{color:#b3c9b8}.field-input::placeholder,.field-textarea::placeholder{color:#b3c9b8}.field-input:focus,.field-select:focus,.field-textarea:focus{border-color:var(--brand-500);background:#fff}.field-textarea{resize:vertical;min-height:80px}.field-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.toggle{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:38px;height:22px;background:#d1d5db;border-radius:999px;cursor:pointer;transition:background .2s;position:relative;flex-shrink:0}.toggle input[type=checkbox]:checked{background:var(--brand-500)}.toggle input[type=checkbox]:after{content:"";position:absolute;width:16px;height:16px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.15)}.toggle input[type=checkbox]:checked:after{transform:translateX(16px)}.toggle-label{font-size:var(--text-small);color:var(--ink);font-weight:500}.modal-overlay{position:fixed;inset:0;background:rgba(15,23,18,.45);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}.modal-card{background:#fff;border-radius:16px;width:100%;max-width:640px;max-height:90vh;overflow-y:auto;padding:28px;display:flex;flex-direction:column;gap:20px;box-shadow:0 20px 60px rgba(0,0,0,.15)}.modal-card--lg{max-width:860px}.modal-header{display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--text-title);font-weight:700;color:var(--ink)}.modal-form{display:flex;flex-direction:column;gap:16px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px;border-top:1px solid #f3f4f6;margin-top:4px}.tags{display:flex;flex-wrap:wrap;gap:4px}.tag{display:inline-flex;gap:4px;padding:2px 8px;background:var(--brand-50);color:var(--brand-500);border-radius:6px;font-size:11px;font-weight:600;border:1px solid var(--brand-200)}.empty-state,.tag{align-items:center}.empty-state{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:48px 24px;color:#9ca3af;text-align:center}.empty-state p{font-size:var(--text-small)}.divider{height:1px;background:#e5e7eb;border:none}.confirm-backdrop[data-v-362d0f84]{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center}.confirm-dialog[data-v-362d0f84]{background:#fff;border-radius:14px;padding:24px 28px;width:340px;box-shadow:0 20px 60px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:8px}.confirm-title[data-v-362d0f84]{font-size:15px;font-weight:700;color:var(--ink);margin:0}.confirm-desc[data-v-362d0f84]{font-size:13px;color:#6b7280;margin:0}.confirm-actions[data-v-362d0f84]{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.app-layout[data-v-6fd80052]{display:flex;height:100vh;overflow:hidden}.sidebar[data-v-6fd80052]{width:252px;min-width:252px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;transition:width .22s ease,min-width .22s ease;overflow:hidden}.app-layout.is-collapsed .sidebar[data-v-6fd80052]{width:64px;min-width:64px}.sidebar-top[data-v-6fd80052]{display:flex;align-items:center;justify-content:space-between;padding:14px 12px 12px;border-bottom:1px solid #f3f4f6;flex-shrink:0;gap:8px}.brand-row[data-v-6fd80052]{display:flex;align-items:center;gap:8px;overflow:hidden;min-width:0}.logo[data-v-6fd80052]{width:26px;height:26px;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.brand-name[data-v-6fd80052]{font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;opacity:1;transition:opacity .15s;overflow:hidden}.app-layout.is-collapsed .brand-name[data-v-6fd80052]{opacity:0;max-width:0}.toggle-btn[data-v-6fd80052]{flex-shrink:0;background:none;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;padding:5px;transition:background .15s,color .15s,border-color .15s}.toggle-btn[data-v-6fd80052]:hover{background:var(--brand-50);color:var(--brand-500);border-color:var(--brand-200)}.sidebar-nav[data-v-6fd80052]{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 8px 4px;display:flex;flex-direction:column;gap:2px}.nav-group[data-v-6fd80052]{display:flex;flex-direction:column;gap:1px;margin-bottom:4px}.nav-section[data-v-6fd80052]{font-size:10px;font-weight:700;letter-spacing:.07em;color:#9ca3af;padding:10px 8px 3px;margin:0;white-space:nowrap;overflow:hidden;transition:opacity .15s,max-height .15s,padding .15s;max-height:40px}.app-layout.is-collapsed .nav-section[data-v-6fd80052]{opacity:0;max-height:0;padding:0;pointer-events:none}.nav-item[data-v-6fd80052]{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:8px;font-size:13px;font-weight:500;color:#374151;text-decoration:none;transition:background .12s,color .12s;white-space:nowrap;overflow:hidden}.nav-item[data-v-6fd80052]:not(.nav-item--active):hover{background:var(--brand-50);color:var(--brand-500)}.nav-item--active[data-v-6fd80052]{background:var(--brand-500);color:#fff;font-weight:600}.nav-icon[data-v-6fd80052]{flex-shrink:0}.nav-icon-wrap[data-v-6fd80052]{position:relative;display:flex;align-items:center;justify-content:center}.nav-badge[data-v-6fd80052]{position:absolute;top:-5px;right:-8px;min-width:16px;height:16px;border-radius:8px;background:#ef4444;color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.nav-label[data-v-6fd80052]{overflow:hidden;opacity:1;transition:opacity .15s}.app-layout.is-collapsed .nav-label[data-v-6fd80052]{opacity:0;max-width:0}.app-layout.is-collapsed .nav-item[data-v-6fd80052]{justify-content:center;padding:10px}.sidebar-footer[data-v-6fd80052]{display:flex;align-items:center;gap:8px;padding:10px 10px;border-top:1px solid #e5e7eb;flex-shrink:0;overflow:hidden}.user-block[data-v-6fd80052]{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden}.user-avatar[data-v-6fd80052]{width:30px;height:30px;border-radius:50%;background:#d1fae5;color:var(--brand-500);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-details[data-v-6fd80052]{display:flex;flex-direction:column;min-width:0;overflow:hidden;opacity:1;transition:opacity .15s}.app-layout.is-collapsed .user-details[data-v-6fd80052]{opacity:0;max-width:0}.user-name[data-v-6fd80052]{font-size:12px;font-weight:600;color:var(--ink)}.user-name[data-v-6fd80052],.user-role[data-v-6fd80052]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role[data-v-6fd80052]{font-size:11px;color:#6b7280}.logout-btn[data-v-6fd80052]{background:none;border:none;cursor:pointer;color:#9ca3af;flex-shrink:0;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.logout-btn[data-v-6fd80052]:hover{background:#fee2e2;color:#991b1b}.main-content[data-v-6fd80052]{flex:1;overflow-y:auto;background:#f5f5f0;padding:32px}