@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-color:#0f172a;--panel-bg:#1e293bf2;--modal-bg:#1e293b;--modal-backdrop:#0f172ad9;--sub-panel-bg:#0f172a80;--panel-border:#ffffff1a;--primary-color:#3b82f6;--primary-hover:#2563eb;--danger-color:#ef4444;--danger-hover:#dc2626;--text-primary:#f8fafc;--text-secondary:#94a3b8}[data-theme=light]{--bg-color:#f1f5f9;--panel-bg:#fff;--modal-bg:#fff;--modal-backdrop:#0f172a73;--panel-border:#cbd5e1;--text-primary:#0f172a;--text-secondary:#475569;--sub-panel-bg:#f8fafc}[data-theme=light] body{color:#0f172a;background-color:#f1f5f9;background-image:radial-gradient(at 0 0,#f1f5f9 0,#0000 50%),radial-gradient(at 50% 0,#f8fafc 0,#0000 50%),radial-gradient(at 100% 0,#eaf0f6 0,#0000 50%)}*{box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none;margin:0;padding:0}::-webkit-scrollbar{width:0;height:0;display:none}body{background-color:var(--bg-color);color:var(--text-primary);background-image:radial-gradient(at 0 0,#100f15 0,#0000 50%),radial-gradient(at 50% 0,#2f3e6a 0,#0000 50%),radial-gradient(at 100% 0,#722741 0,#0000 50%);background-size:cover;background-attachment:fixed;min-height:100vh;font-family:Inter,sans-serif}#root{width:100%;min-height:100vh;display:flex}.modal-backdrop{background:var(--modal-backdrop);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:999999;box-sizing:border-box;justify-content:center;align-items:center;width:100vw;height:100vh;padding:24px;display:flex;position:fixed;inset:0}.app-container{width:100%;height:100vh;display:flex}.sidebar{background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid var(--panel-border);flex-direction:column;width:260px;padding:24px 16px;display:flex}.sidebar h1{margin:0}.brand-logo{align-items:center;gap:12px;font-size:20px;font-weight:700;display:flex}.brand-icon{color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex;box-shadow:0 4px 12px #3b82f666}.brand-logo span{background:-webkit-linear-gradient(45deg,#f8fafc,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text}[data-theme=light] .brand-logo span{background:-webkit-linear-gradient(45deg,#1e293b,#475569);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.sidebar nav{flex-direction:column;gap:12px;display:flex}.sidebar-btn{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;font-family:inherit;font-size:16px;font-weight:500;transition:all .3s;display:flex}.sidebar-btn:hover{color:var(--text-primary);background:#ffffff0d;transform:translate(4px)}.sidebar-btn.active{background:var(--primary-color);color:#fff;box-shadow:0 4px 12px #3b82f666}.main-content{box-sizing:border-box;flex-direction:column;flex:1;min-height:100vh;padding:32px;display:flex;overflow-y:auto}.page-header{margin-bottom:24px}.page-header h2{font-size:28px;font-weight:600}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--panel-border);border-radius:16px;padding:24px;box-shadow:0 8px 32px #0003}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);margin-bottom:8px;font-size:14px;display:block}.form-control{border:1px solid var(--panel-border);width:100%;color:var(--text-primary);box-sizing:border-box;background:#0f172a80;border-radius:8px;padding:12px 16px;font-family:inherit;transition:border-color .3s}select.form-control{vertical-align:middle!important;height:40px!important;padding:6px 12px!important;line-height:1.4!important}select.form-control option{color:#f8fafc;background-color:#1e293b;padding:8px 12px}[data-theme=light] select.form-control option{color:#0f172a;background-color:#fff}.month-year-selector{border:1px solid var(--panel-border);background:#0f172a80;border-radius:12px;align-items:center;gap:12px;padding:6px 14px;display:flex}.month-year-selector button{color:var(--text-primary);border:1px solid var(--panel-border);cursor:pointer;background:#ffffff14;border-radius:6px;justify-content:center;align-items:center;padding:6px 10px;transition:all .2s;display:flex}.month-year-selector button:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}[data-theme=light] .month-year-selector{background:#f1f5f9;border:1px solid #cbd5e1;box-shadow:0 2px 8px #0000000d}[data-theme=light] .month-year-selector button{color:#0f172a;background:#fff;border:1px solid #cbd5e1;box-shadow:0 1px 3px #00000014}[data-theme=light] .month-year-selector button:hover{color:#fff;background:#3b82f6;border-color:#3b82f6}[data-theme=light] .form-control,[data-theme=light] input.form-control,[data-theme=light] select.form-control,[data-theme=light] textarea.form-control{color:#0f172a!important;background-color:#fff!important;border-color:#cbd5e1!important}[data-theme=light] input.form-control::placeholder,[data-theme=light] textarea.form-control::placeholder{color:#64748b!important}[data-theme=light] .form-group label{color:#1e293b!important}.form-control:focus{border-color:var(--primary-color);outline:none}.btn{cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-family:inherit;font-weight:600;transition:all .3s}.btn-primary,.btn-confirm,.btn-success,.btn-safe{color:#fff;background:#10b981}.btn-primary:hover,.btn-confirm:hover,.btn-success:hover,.btn-safe:hover{background:#059669;transform:translateY(-2px)}.btn-danger{color:#fff;background:#ef4444}.btn-danger:hover{background:#dc2626;transform:translateY(-2px)}.filter-bar{align-items:center;gap:16px;margin-bottom:24px;display:flex}.filter-bar input{flex:1}.filter-select-tipo{width:180px}.filter-select-status{width:150px}.mobile-header,.sidebar-close-btn{display:none}@media (width<=768px){.app-container{flex-direction:column}.mobile-header{background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50;border-bottom:none;justify-content:flex-start;align-items:center;gap:16px;margin-bottom:16px;padding:16px;display:flex;box-shadow:0 4px 20px #0003}.sidebar{z-index:100;height:100vh;transition:left .3s;position:fixed;top:0;left:-320px;box-shadow:4px 0 24px #00000080}.sidebar.open{left:0}.sidebar-overlay{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;position:fixed;inset:0}.sidebar-close-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;font-size:24px;display:block}.main-content{padding:16px}.filter-bar{flex-direction:column!important;align-items:stretch!important}.filter-select-tipo,.filter-select-status{width:100%!important}.person-card{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}.person-card-header{width:100%!important;min-width:100%!important}.person-card-body{width:100%;grid-template-columns:1fr 1fr!important}.person-card-footer{flex-wrap:wrap;width:100%;justify-content:flex-start!important;margin-left:0!important}.person-card-footer button{flex:1;min-width:45%;width:auto!important}}.data-table{border-collapse:collapse;width:100%;margin-top:24px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--panel-border);padding:16px}.data-table th{color:var(--text-secondary);font-size:14px;font-weight:500}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .3s}.data-table tbody tr:hover{background:#ffffff08}[data-theme=light] .data-table tbody tr:hover{background:#00000008}.actions{gap:8px;display:flex}.actions button{padding:6px 12px;font-size:12px}.cards-grid{flex-direction:column;gap:12px;margin-top:24px;display:flex}.person-card{border:1px solid var(--panel-border);background:#0f172a66;border-radius:12px;flex-direction:row;align-items:center;gap:24px;padding:16px 8px 16px 24px;transition:transform .2s,box-shadow .2s;display:flex}[data-theme=light] .person-card{background:#fff9}.person-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000004d}.empty-date::-webkit-datetime-edit{color:#0000}.empty-date:focus::-webkit-datetime-edit{color:inherit}.person-card-header{flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-start;width:250px;display:flex}.person-card-header h3{color:var(--text-primary);margin:0 0 4px;font-size:16px;font-weight:600}.person-card-header span{color:var(--text-secondary);font-size:12px}.person-card-body{flex:1;grid-template-columns:140px 150px;align-items:center;gap:16px;display:grid}.person-card-body p{color:var(--text-secondary);margin:0;font-size:14px}.person-card-body p strong{color:var(--text-primary);font-weight:500}.person-card-footer{flex-shrink:0;justify-content:flex-start;gap:8px;width:424px;margin-left:auto;display:flex}.person-card-footer button{text-align:center;width:100px;padding:6px 4px}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:32px;display:flex}.pagination button{border:1px solid var(--panel-border);color:var(--text-primary);cursor:pointer;background:#0f172a80;border-radius:6px;padding:8px 16px;transition:background .2s}[data-theme=light] .pagination button{background:#fffc}.pagination button:hover:not(:disabled){background:var(--primary-color);color:#fff}.pagination button:disabled{opacity:.5;cursor:not-allowed}.badge{border-radius:4px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-block}.badge.ativo{color:#10b981;background:#10b98133}.badge.inativo{color:#ef4444;background:#ef444433}@media (width<=960px){.login-wrapper{flex-direction:column!important;height:auto!important;max-height:none!important;position:relative!important;overflow-y:auto!important}.login-hero{flex:auto!important;min-height:340px!important;padding:32px 24px!important}.login-form-side{border-left:none!important;border-top:1px solid var(--panel-border)!important;flex:auto!important;width:100%!important;min-width:100%!important;height:auto!important;max-height:none!important;padding:36px 24px!important}}.sub-panel-box{background:#0f172a99;border:1px solid #ffffff14}[data-theme=light] .sub-panel-box{background:#fff;border:1px solid #cbd5e1;box-shadow:0 4px 12px #0000000a}.sidebar-close-btn,.mobile-header{display:none}@media (width<=768px){.app-container{flex-direction:column;height:100vh;overflow:hidden}.main-content{min-height:calc(100vh - 56px);overflow-y:auto;padding:12px!important}.mobile-header{background:var(--panel-bg);border-bottom:1px solid var(--panel-border);z-index:99;justify-content:space-between;align-items:center;padding:10px 14px;position:sticky;top:0;display:flex!important}.sidebar{z-index:999999;width:280px;height:100vh;transition:transform .3s ease-in-out;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:4px 0 25px #00000080}.sidebar.open{transform:translate(0)}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99999;background:#0009;position:fixed;inset:0}.sidebar-close-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;font-size:20px;display:block!important}.page-header{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;margin-bottom:16px!important}.page-header h2{font-size:20px!important}.glass-panel{border-radius:12px!important;height:auto!important;max-height:none!important;padding:14px!important}.person-card{flex-direction:column!important;align-items:flex-start!important;gap:12px!important;padding:14px!important}.person-card-header{width:100%!important}.person-card-footer{flex-wrap:wrap!important;justify-content:flex-start!important;width:100%!important;margin-left:0!important}.person-card-footer button{flex:calc(50% - 6px)}.modal-content,[class*=modal-container]{box-sizing:border-box!important;max-width:95vw!important}.month-year-selector{flex-wrap:wrap;justify-content:space-between;width:100%}.data-table{white-space:nowrap;display:block;overflow-x:auto}}.swal2-container{z-index:99999999!important}.custom-swal-popup{border:1px solid var(--panel-border,#ffffff26)!important;-webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;background:var(--modal-bg,#1e293b)!important;border-radius:16px!important;padding:24px!important;box-shadow:0 20px 50px #00000080,0 0 30px #3b82f626!important}.custom-swal-title{color:var(--text-primary,#f8fafc)!important;padding-top:10px!important;font-size:18px!important;font-weight:700!important}.custom-swal-html{color:var(--text-secondary,#94a3b8)!important;margin-top:8px!important;font-size:14px!important}.custom-swal-btn{border-radius:8px!important;margin:6px!important;padding:8px 24px!important;font-size:13px!important}
