.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}*{margin:0;padding:0;box-sizing:border-box;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}:root{--blue: #123B7A;--blue-hover: #0E2E5E;--green: #16A34A;--orange: #D97706;--red: #DC2626;--gray: #6B7280;--bg: #F5F6F8;--card-bg: #FFFFFF;--topbar-bg: #FFFFFF;--sidebar-bg: #FFFFFF;--text-primary: #1A1A1A;--text-secondary: #555555;--border: #E0E0E0;--table-header-bg: #F5F6F8;--table-hover-bg: #F1F3F5;--modal-bg: #FFFFFF;--input-bg: #FFFFFF;--input-border: #D1D5DB;--shadow: 0 1px 3px rgba(18, 59, 122, .06), 0 1px 2px rgba(18, 59, 122, .04)}[data-theme=dark]{--bg: #0F172A;--card-bg: #1E293B;--topbar-bg: #1E293B;--sidebar-bg: #1E293B;--text-primary: #F8FAFC;--text-secondary: #94A3B8;--border: #334155;--table-header-bg: #0F172A;--table-hover-bg: #334155;--modal-bg: #1E293B;--input-bg: #0F172A;--input-border: #475569;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2)}body{background:var(--bg);color:var(--text-primary);min-height:100vh;transition:background-color .3s ease,color .3s ease}#login-page{display:flex;height:100vh;align-items:center;justify-content:center;background:var(--bg)}.login-box{background:var(--card-bg);padding:40px;border-radius:16px;box-shadow:0 10px 40px #0003;width:400px;max-width:90vw;text-align:center;border:1px solid var(--border)}.login-box h1{color:var(--blue);font-size:26px;margin-bottom:6px}.login-box p{color:var(--text-secondary);font-size:14px;margin-bottom:24px}.login-box input{width:100%;padding:12px 14px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);border-radius:8px;font-size:14px;margin-bottom:14px;outline:0;transition:border-color .2s}.login-box input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1a56db33}.login-box button{width:100%;padding:12px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;font-weight:600;transition:background .2s}.login-box button:hover{background:var(--blue-hover)}.login-box .erro{color:var(--red);font-size:13px;margin-top:10px}.login-box .hint{font-size:12px;color:var(--text-secondary);margin-top:16px;background:var(--bg);padding:8px;border-radius:6px;border:1px solid var(--border)}.topbar{background:var(--topbar-bg);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:10px 24px;position:sticky;top:0;z-index:100;transition:background-color .3s ease,border-color .3s ease}.toast-stack{position:fixed;top:76px;right:18px;z-index:1400;display:flex;flex-direction:column;gap:10px;max-width:min(440px,calc(100vw - 28px))}.toast{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:10px;box-shadow:0 10px 28px #0f172a33;border:1px solid transparent;font-size:13px;line-height:1.4;background:var(--card-bg);color:var(--text-primary)}.toast-success{border-color:#10b98173;background:linear-gradient(180deg,#ecfdf5fa,#dcfce7fa)}.toast-error{border-color:#ef444466;background:linear-gradient(180deg,#fef2f2fa,#fee2e2fa)}.toast-warning{border-color:#f59e0b73;background:linear-gradient(180deg,#fffbebfa,#fef3c7fa)}.toast-info{border-color:#3b82f666;background:linear-gradient(180deg,#eff6fffa,#dbeafefa)}.toast-message{flex:1}.toast-close{border:none;background:transparent;color:var(--text-secondary);font-size:18px;line-height:1;cursor:pointer;padding:0}.app-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:1500;padding:16px}.app-modal{width:min(460px,100%);background:var(--modal-bg);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:18px}.app-modal h3{margin-bottom:10px;color:var(--text-primary);font-size:18px}.app-modal p{color:var(--text-secondary);margin-bottom:18px;font-size:14px}.app-modal-actions{display:flex;justify-content:flex-end;gap:10px}[data-theme=dark] .toast-success{background:linear-gradient(180deg,#064e3beb,#047857eb);color:#ecfdf5}[data-theme=dark] .toast-error{background:linear-gradient(180deg,#7f1d1deb,#b91c1ceb);color:#fef2f2}[data-theme=dark] .toast-warning{background:linear-gradient(180deg,#78350feb,#92400eeb);color:#fffbeb}[data-theme=dark] .toast-info{background:linear-gradient(180deg,#1e40afeb,#1d4ed8eb);color:#eff6ff}.topbar .logo{font-weight:800;color:var(--blue);font-size:20px;display:flex;align-items:center;gap:8px}.topbar .logo img{height:68px;width:auto;display:block}.topbar .right{margin-left:auto;display:flex;align-items:center;gap:16px}.topbar .avatar{width:44px;height:44px;border-radius:50%;background:#ebf4ff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer;font-size:14px;border:1px solid #BFDBFE;overflow:hidden}.topbar .avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.main-container{display:flex;min-height:calc(100vh - 64px)}.sidebar{position:fixed;top:64px;left:0;bottom:0;width:240px;background:var(--sidebar-bg);border-right:1px solid var(--border);padding:16px 0;z-index:900;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1),background-color .3s ease,border-color .3s ease;display:flex;flex-direction:column;overflow-y:auto;white-space:nowrap;box-shadow:4px 0 12px #00000014}.sidebar.collapsed{transform:translate(-100%)}.sidebar-backdrop{position:fixed;top:64px;left:0;right:0;bottom:0;background:#0f172a66;z-index:850}.sidebar nav button{width:100%;display:flex;align-items:center;gap:12px;padding:12px 20px;color:var(--text-secondary);text-decoration:none;font-size:14px;border:none;border-left:3px solid transparent;background:transparent;cursor:pointer;text-align:left;transition:all .2s}.sidebar nav button .icon{font-size:18px;min-width:24px;text-align:center}.sidebar nav button:hover{background:var(--table-hover-bg);color:var(--blue)}.sidebar nav button.active{background:#ebf4ff;color:var(--blue);border-left-color:var(--blue);font-weight:600}[data-theme=dark] .sidebar nav button.active{background:#1e3a8a;color:#93c5fd}.sidebar-group{width:100%;display:flex;align-items:center;gap:12px;padding:12px 20px;color:var(--text-secondary);font-size:14px;border:none;border-left:3px solid transparent;background:transparent;cursor:pointer;text-align:left;transition:all .2s}.sidebar-group:hover{background:var(--table-hover-bg);color:var(--blue)}.sidebar-group .sidebar-caret{margin-left:auto;font-size:12px;color:var(--text-secondary)}.sidebar-submenu{display:flex;flex-direction:column}.sidebar nav .sidebar-submenu button{padding-left:48px}.content{flex:1;padding:28px;overflow-y:auto}.card{background:var(--card-bg);border-radius:12px;box-shadow:var(--shadow);padding:24px;margin-bottom:24px;border:1px solid var(--border);transition:background-color .3s ease,border-color .3s ease}.card h3{margin-bottom:16px;font-size:17px;color:var(--text-primary)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px}.stat-card{padding:20px;border-radius:12px;background:var(--card-bg);color:var(--text-primary);border:1px solid var(--border);box-shadow:var(--shadow)}.stat-card .icon{font-size:28px;margin-bottom:6px;color:var(--text-secondary)}.stat-card .label{font-size:13px;color:var(--text-secondary)}.stat-card .value{font-size:24px;font-weight:700;margin:4px 0;color:var(--blue)}.s-blue,.s-green,.s-orange,.s-red{background:var(--card-bg)}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;padding:12px 14px;background:var(--table-header-bg);color:var(--text-secondary);font-size:12px;font-weight:600;text-transform:uppercase;border-bottom:2px solid var(--border)}td{padding:12px 14px;border-bottom:1px solid var(--border);color:var(--text-primary)}tr:hover{background:var(--table-hover-bg)}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.badge-green{background:#d1fae5;color:#065f46}.badge-yellow{background:#fef3c7;color:#92400e}.badge-red{background:#fee2e2;color:#991b1b}.badge-blue{background:#dbeafe;color:#1e40af}[data-theme=dark] .badge-green{background:#064e3b;color:#a7f3d0}[data-theme=dark] .badge-yellow{background:#78350f;color:#fde68a}[data-theme=dark] .badge-red{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .badge-blue{background:#1e3a8a;color:#bfdbfe}.btn{padding:8px 18px;border-radius:8px;font-size:14px;cursor:pointer;border:none;font-weight:500;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-hover)}.btn-outline{background:transparent;border:1px solid var(--input-border);color:var(--text-primary)}.btn-outline:hover{border-color:var(--blue);color:var(--blue)}.btn-sm{padding:5px 12px;font-size:12px}.btn-success{background:var(--green);color:#fff}.btn-danger{background:var(--red);color:#fff}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.header h2{font-size:22px;color:var(--text-primary)}.filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.filters input,.filters select{padding:9px 14px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);border-radius:8px;font-size:13px;outline:0}.filters input:focus,.filters select:focus{border-color:var(--blue)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:var(--modal-bg);color:var(--text-primary);border-radius:14px;padding:32px;width:700px;max-width:95vw;max-height:88vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000080;border:1px solid var(--border)}.modal-lg{width:1100px;max-width:95vw}.modal h3{margin-bottom:20px;font-size:18px;color:var(--text-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:6px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);border-radius:8px;font-size:14px;outline:0}.form-group input:focus,.form-group select:focus{border-color:var(--blue)}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr;gap:14px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0}.info-item{padding:12px;background:var(--table-header-bg);border-radius:8px;border:1px solid var(--border)}.info-item .label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;font-weight:600}.info-item .value{font-size:15px;font-weight:600;margin-top:4px;color:var(--text-primary)}.total-geral{text-align:right;font-weight:700;font-size:16px;padding:12px 0;margin-top:12px;border-top:2px solid var(--border);color:var(--blue)}.tree-view{display:flex;flex-direction:column;gap:8px}.tree-node{display:flex;flex-direction:column;gap:4px}.tree-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;cursor:pointer;transition:background .2s;border:1px solid transparent}.tree-row:hover{background:var(--table-hover-bg);border-color:var(--border)}.ata-row{background:#f9fafb;border-color:var(--border);margin-left:24px}.ata-row.carona{background:#fffbeb;border-color:#fde68a}[data-theme=dark] .ata-row.carona{background:#78350f}.contrato-row{background:#fff;border-color:var(--border);margin-left:48px}[data-theme=dark] .contrato-row{background:var(--card-bg)}.tree-toggle{width:20px;text-align:center;font-size:12px;color:var(--text-secondary)}.tree-label{flex:1;font-size:14px;color:var(--text-primary)}.tree-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600;background:#e5e7eb;color:var(--text-secondary)}.tree-badge.s-orange{background:#fef3c7;color:#92400e}.tree-badge.s-green{background:#d1fae5;color:#065f46}.tree-badge.s-red{background:#fee2e2;color:#991b1b}.tree-badge.origem-propria{background:#d1fae5;color:#065f46}.tree-badge.origem-carona{background:#fffbeb;color:#92400e}[data-theme=dark] .tree-badge{background:#334155;color:var(--text-secondary)}[data-theme=dark] .tree-badge.s-orange{background:#78350f;color:#fde68a}[data-theme=dark] .tree-badge.s-green{background:#064e3b;color:#a7f3d0}[data-theme=dark] .tree-badge.s-red{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .tree-badge.origem-propria{background:#064e3b;color:#a7f3d0}[data-theme=dark] .tree-badge.origem-carona{background:#78350f;color:#fde68a}.tree-children{display:flex;flex-direction:column;gap:4px;margin-top:4px}.react-calendar{border:none;width:100%;font-family:inherit}:root{--color-brand-navy: #123B7A;--color-brand-navy-dark: #0E2E5E;--color-text-primary: #1A1A1A;--color-text-secondary: #555555;--color-text-muted: #9E9E9E;--color-border: #E0E0E0;--color-bg-page: #F5F6F8;--color-bg-card: #FFFFFF;--color-bg-hover: #F1F3F5;--color-success: #16A34A;--color-success-bg: #F0FDF4;--color-warning: #D97706;--color-warning-bg: #FFFBEB;--color-danger: #DC2626;--color-danger-bg: #FEF2F2;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 22px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow-card: 0 1px 3px rgba(18, 59, 122, .06);--shadow-dropdown: 0 8px 24px rgba(18, 59, 122, .12)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-family);font-size:var(--font-size-md);color:var(--color-text-primary);background-color:var(--color-bg-page);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin:0 0 8px}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}a{color:var(--color-brand-navy);text-decoration:none}a:hover{color:var(--color-brand-navy-dark);text-decoration:underline}.btn,button[type=submit],.btn-primary,.btn-success{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-family);font-weight:var(--font-weight-medium);font-size:var(--font-size-md);line-height:1;padding:10px 16px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary,.btn-success,button[type=submit]{background-color:var(--color-brand-navy);color:#fff}.btn-primary:hover,.btn-success:hover,button[type=submit]:hover{background-color:var(--color-brand-navy-dark)}.btn-outline,.btn-secondary{background-color:transparent;color:var(--color-brand-navy);border-color:var(--color-border)}.btn-outline:hover,.btn-secondary:hover{background-color:var(--color-bg-hover);border-color:var(--color-brand-navy)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover{background-color:#b91c1c}.btn-outline-danger{background-color:transparent;color:var(--color-danger);border-color:#fecaca}.btn-outline-danger:hover{background-color:var(--color-danger-bg);border-color:var(--color-danger)}.btn-sm{padding:6px 12px;font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn-lg{padding:12px 20px;font-size:var(--font-size-lg)}.card,.kpi-card,.stat-card,.dashboard-card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px}.kpi-card .value,.stat-card .value,.kpi-card .number,.stat-card .number,.kpi-card .label,.stat-card .label{color:var(--color-brand-navy)}.kpi-card .icon,.stat-card .icon{color:var(--color-text-muted)}table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}thead th{background-color:var(--color-bg-page);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);text-align:left;padding:10px 12px;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.03em}tbody td{padding:10px 12px;border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}tbody tr:hover{background-color:var(--color-bg-hover)}.form-group,.form-field{margin-bottom:16px}.form-group label,.form-field label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:6px}.form-group input,.form-group select,.form-group textarea,.form-field input,.form-field select,.form-field textarea{width:100%;padding:9px 12px;font-family:var(--font-family);font-size:var(--font-size-md);color:var(--color-text-primary);background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s ease,box-shadow .15s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-brand-navy);box-shadow:0 0 0 3px #123b7a1a}.sidebar,.menu,nav.sidebar{background-color:var(--color-bg-card);border-right:1px solid var(--color-border)}.sidebar a,.menu a,nav.sidebar a{display:flex;align-items:center;gap:10px;padding:10px 16px;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);text-decoration:none;transition:background-color .15s ease,color .15s ease}.sidebar a:hover,.menu a:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary);text-decoration:none}.sidebar a.active,.menu a.active{background-color:#123b7a14;color:var(--color-brand-navy);font-weight:var(--font-weight-semibold)}.navbar,.header,header{background-color:var(--color-bg-card);border-bottom:1px solid var(--color-border);padding:12px 24px;display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:100}.navbar .logo,.header .logo{height:36px;width:auto}.badge,.status-badge,.status-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:9999px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.badge-success,.status-badge.success{background-color:var(--color-success-bg);color:var(--color-success)}.badge-warning,.status-badge.pending{background-color:var(--color-warning-bg);color:var(--color-warning)}.badge-danger,.status-badge.danger{background-color:var(--color-danger-bg);color:var(--color-danger)}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.success{background-color:var(--color-success)}.status-dot.warning{background-color:var(--color-warning)}.status-dot.danger{background-color:var(--color-danger)}#login-page.login-shell{display:flex;align-items:stretch;width:100%;min-height:100vh;background:#fff;padding:0}.login-left{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 32px;background:linear-gradient(135deg,#f0f4ff,#fff 60%)}.login-form-wrap{width:100%;max-width:400px}.login-logo{display:block;width:220px;height:auto;margin:0 auto 40px}.login-title{font-size:26px;font-weight:700;color:var(--color-brand-navy);margin:0 0 6px}.login-subtitle{font-size:14px;color:var(--color-text-secondary);margin:0 0 28px;line-height:1.5}.login-form{display:flex;flex-direction:column;gap:16px}.login-field label{display:block;font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.login-field input{width:100%;height:44px;padding:0 14px;border:1px solid #CBD5E1;border-radius:var(--radius-md);background:#fff;color:var(--color-text-primary);font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}.login-field input:focus{border-color:var(--color-brand-navy);box-shadow:0 0 0 3px #123b7a1f}.login-input-wrap{position:relative}.login-input-wrap input{padding-right:46px}.login-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:none;background:transparent;cursor:pointer;font-size:16px;color:#94a3b8;padding:0}.login-error{background:var(--color-danger-bg);border:1px solid #FECACA;color:var(--color-danger);border-radius:var(--radius-md);padding:10px 12px;font-size:13px}.login-success{background:var(--color-success-bg);border:1px solid #BBF7D0;color:#065f46;border-radius:var(--radius-md);padding:10px 12px;font-size:13px}button.login-submit{width:100%;height:44px;border:none;border-radius:var(--radius-md);background:var(--color-brand-navy);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s}button.login-submit:hover{background:var(--color-brand-navy-dark)}button.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-links{display:flex;justify-content:space-between;gap:8px;margin-top:4px}.login-link{border:none;background:transparent;color:var(--color-brand-navy);font-size:13px;cursor:pointer;padding:4px 0}.login-link:hover{text-decoration:underline}button.login-back{width:100%;height:42px;border:1px solid #CBD5E1;border-radius:var(--radius-md);background:transparent;color:var(--color-brand-navy);font-size:14px;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s}button.login-back:hover{border-color:var(--color-brand-navy)}.login-demo{margin-top:28px;padding-top:20px;border-top:1px solid var(--color-border);text-align:center;font-size:12px;color:#94a3b8}.login-right{display:none;flex:1;position:relative;overflow:hidden;align-items:center;justify-content:center;background:linear-gradient(145deg,#0d1f4e,#1a3a8a)}@media (min-width: 1024px){.login-right{display:flex}}.login-right-circles{position:absolute;top:50%;left:50%;width:1200px;height:1200px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,transparent 0 90px,rgba(255,255,255,.14) 90px 92px,transparent 92px 200px,rgba(255,255,255,.11) 200px 202px,transparent 202px 320px,rgba(255,255,255,.09) 320px 322px,transparent 322px 450px,rgba(255,255,255,.07) 450px 452px,transparent 452px 590px,rgba(255,255,255,.05) 590px 592px,transparent 592px)}.login-right-content{position:relative;z-index:1;text-align:center;padding:48px;max-width:520px}.login-right-content h2{color:#fff;font-size:26px;font-weight:600;line-height:1.3;margin:0 0 12px}.login-right-content p{color:#ffffffa6;font-size:14px;line-height:1.6;margin:0 0 44px}.login-stats{display:flex;justify-content:center;gap:40px}.login-stat{text-align:center}.login-stat strong{display:block;color:#fff;font-size:24px;font-weight:700}.login-stat span{display:block;color:#ffffff8c;font-size:11px;margin-top:4px}.login-audit{position:absolute;bottom:24px;left:0;right:0;z-index:1;text-align:center;color:#ffffff73;font-size:11px;padding:0 24px}@media (max-width: 1023px){.login-left{padding:32px 20px}.login-stats{gap:24px}}.login-card .btn,.login-card button{width:100%;display:flex;align-items:center;justify-content:center;margin-bottom:10px;padding:10px 16px;font-size:var(--font-size-md);line-height:1.2;min-height:0;white-space:normal;overflow:visible}.login-card .btn:last-child,.login-card button:last-child{margin-bottom:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#123b7a66;display:flex;align-items:center;justify-content:center;z-index:2000}.modal{background-color:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);padding:24px;width:100%;max-width:560px}.modal h2,.modal-header{color:var(--color-brand-navy);font-size:var(--font-size-lg)}.user-menu{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown)}.user-menu .user-role{color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:12px 16px;border-bottom:1px solid var(--color-border)}.toast-container{position:fixed;top:16px;right:16px;z-index:99999;display:flex;flex-direction:column;gap:8px;max-width:360px}.toast{border-radius:var(--radius-md);padding:12px 16px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);word-break:break-word;overflow-wrap:anywhere}.toast-success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid #BBF7D0}.toast-error{background-color:var(--color-danger-bg);color:var(--color-danger);border:1px solid #FECACA}.toast-warning{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid #FDE68A}[data-theme=dark]{--color-brand-navy: #60A5FA;--color-brand-navy-dark: #93C5FD;--color-text-primary: #F8FAFC;--color-text-secondary: #94A3B8;--color-text-muted: #64748B;--color-border: #334155;--color-bg-page: #0F172A;--color-bg-card: #1E293B;--color-bg-hover: #334155;--color-success: #4ADE80;--color-success-bg: #064E3B;--color-warning: #FBBF24;--color-warning-bg: #78350F;--color-danger: #F87171;--color-danger-bg: #7F1D1D;--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-dropdown: 0 8px 24px rgba(0, 0, 0, .4)}.modal-overlay:has(.form-grid) .modal{max-width:1100px!important;width:95vw}.modal-overlay:has(.form-grid) table{width:100%;border-collapse:collapse}.modal-overlay:has(.form-grid) th,.modal-overlay:has(.form-grid) td{padding:10px 12px;white-space:nowrap}.modal-overlay:has(.form-grid) td:first-child{white-space:normal;min-width:180px}.modal-overlay:has(.form-grid) input[type=number]{width:90px;text-align:center}.modal-overlay:has(.form-grid) td:last-child{text-align:right}.modal-overlay:has(.form-grid) .modal{max-width:900px!important;width:95vw}.modal-overlay:has(.modal-lg) .modal{max-width:960px!important;width:95vw}.topbar{position:sticky;top:0;z-index:1000}.info-item .value{word-break:break-word;overflow-wrap:anywhere;white-space:normal}
