body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body,html{max-width:100%;overflow-x:hidden}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}img,video{height:auto;max-width:100%}.table-scroll-x{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:900px){.main,.main-content{min-width:0}}*{font-family:Segoe UI,sans-serif}.login-page{background:url(/unicontracts/static/media/background%20image.5036b72df49b1625093b.jpg) 50%/cover no-repeat;height:100vh;position:relative;width:100%}.overlay{align-items:center;background:#000f28a6;display:flex;flex-direction:column;height:100%;justify-content:space-between;width:100%}.top-bar{color:#fff;padding:20px 40px;width:100%}.top-bar h2{font-size:24px;font-weight:600}.login-container{align-items:center;display:flex;flex:1 1;justify-content:center}.split-card{background:#fffffff2;border-radius:16px;box-shadow:0 10px 35px #0000004d;display:flex;max-width:95%;overflow:hidden;width:900px}.left-side{background:linear-gradient(180deg,#0b2c56,#154784);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:40px;width:40%}.left-side .logo{margin-bottom:30px;width:120px}.left-side h1,.login-welcome-title{font-size:24px;margin-bottom:16px}.login-welcome-title{align-items:flex-start;display:flex;flex-direction:column;font-weight:700;line-height:1.25}.login-welcome-line{display:block}.left-side p{color:#ffffffe6;line-height:1.6}.right-side{align-items:center;background:#fff;display:flex;justify-content:center;padding:40px;width:60%}.form-container{max-width:380px;width:100%}.form-container h2{color:#0b2c56;margin-bottom:8px}.form-subtitle{color:gray;display:block;margin-bottom:25px}.input-group{align-items:center;background:#fff;border:1px solid #ccc;border-radius:6px;display:flex;margin-bottom:20px;padding:12px}.input-group .icon{color:#0b2c56;margin-right:10px}.input-group input{border:none;font-size:15px;outline:none;width:100%}.login-btn{align-items:center;background:#0b2c56;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:14px;transition:.3s;width:100%}.login-btn:hover{background:#154784}.login-btn:active:not(:disabled){transform:scale(.98)}.login-btn.is-loading,.login-btn:disabled{background:#154784;cursor:wait;opacity:.85}.login-spinner{animation:login-spin .7s linear infinite;border:2px solid #ffffff59;border-radius:50%;border-top-color:#fff;height:18px;width:18px}@keyframes login-spin{to{transform:rotate(1turn)}}.links{margin-top:15px;text-align:center}.links a{color:#0b2c56;font-size:14px;text-decoration:none}.notice-box{background:#fff6df;border-left:4px solid #f5c542;border-radius:6px;margin-top:25px;padding:15px}.notice-box h4{color:#8a6500;margin-bottom:5px}.notice-box p{color:#555;font-size:14px}.footer{align-items:center;background:#0006;color:#fff;display:flex;justify-content:space-between;padding:20px 40px;width:100%}.footer-links{gap:20px}.footer-links a{color:#fff}.role-page{align-items:center;color:#0b2c56;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:40px;text-align:center}.role-page h1{font-size:32px;margin-bottom:16px}.role-page button{background:#0b2c56;border:none;border-radius:8px;color:#fff;cursor:pointer;margin-top:20px;padding:12px 24px}.login-error{color:#c92a2a;margin-bottom:12px}@media (max-width:900px){.split-card{flex-direction:column;width:95%}.left-side,.right-side{padding:30px;width:100%}.footer{flex-direction:column;gap:10px;text-align:center}}:root{--navy:#0b2c56;--navy-2:#153a6a;--gold:#b8860b;--muted:#f4f6f8;--card-bg:#fff;--text-dark:#0b2c56}.admin-app{background:#f1f3f5;display:flex;min-height:100vh}.sidebar{background:linear-gradient(180deg,#0b2c56,#153a6a);background:linear-gradient(180deg,var(--navy),var(--navy-2));color:#fff;padding:24px 16px;width:220px}.sidebar .brand{align-items:center;display:flex;gap:10px;margin-bottom:20px}.sidebar .brand .sidebar-logo{background:#ffffff0d;border-radius:6px;height:62px;object-fit:contain;padding:6px;width:70px}.sidebar .brand .brand-text{font-size:16px;font-weight:700}.sidebar nav ul{display:flex;flex-direction:column;height:calc(100vh - 120px);list-style:none;padding:0}.sidebar nav li{border-radius:8px;color:#fff;cursor:pointer;font-size:14px;margin-bottom:8px;padding:12px 10px;transition:all .2s ease}.sidebar nav li:hover{background:#ffffff1f;transform:translateX(4px)}.sidebar nav li.active{background:#ffffff0f;border-left:3px solid #fff;font-weight:600;padding-left:7px}.sidebar nav li.logout{background:#0000;margin-top:24px}.logout-btn{background:#fff;border:2px solid #c62828;border-radius:8px;color:#c62828;cursor:pointer;font-weight:600;padding:10px 14px;text-align:left;width:100%}.logout-btn:hover{background:#fff7f7}.logout-li{margin-top:auto}.main{display:flex;flex:1 1;flex-direction:column}.topbar{align-items:center;background:#0000;border-bottom:1px solid #0b2c560f;display:flex;height:64px;padding:0 20px}.topbar .menu-icon{color:#0b2c56;color:var(--text-dark);font-size:20px;margin-right:12px}.topbar .topbar-title{color:#0b2c56;color:var(--text-dark);flex:1 1;font-size:18px;font-weight:700}.topbar-right{align-items:center;display:flex;gap:16px}.topbar-user-info{align-items:center;background:#0b2c560a;border:1px solid #0b2c560f;border-radius:10px;display:flex;gap:10px;padding:6px 14px 6px 10px;transition:all .2s ease}.topbar-user-info:hover{background:#0b2c5614;border-color:#0b2c561f}.topbar-user-info .user-icon{color:#0b2c56;color:var(--navy);font-size:28px}.user-details{display:flex;flex-direction:column;line-height:1.3}.user-name{color:#0b2c56;color:var(--text-dark);font-size:13px;font-weight:700}.user-role{color:#64748b;font-size:11px;font-weight:500}.topbar-logout-btn{background:#fff;border:2px solid #c62828;border-radius:6px;color:#c62828;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s ease}.topbar-logout-btn:hover{background:#fff7f7}.president-card{background:linear-gradient(#0b2c56b3,#0b2c56b3),url(/unicontracts/static/media/background%20image.5036b72df49b1625093b.jpg);background-position:50%;background-size:cover;border:3px solid #0b2c56;border:3px solid var(--navy);border-radius:10px;box-shadow:0 4px 12px #0b2c5614;cursor:pointer;margin:16px 20px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.president-card:hover{border-color:#153a6a;box-shadow:0 12px 28px #0b2c5626;transform:translateY(-4px)}.president-card-header{color:#fff;font-size:15px;font-weight:700;margin-bottom:12px}.president-card-body{display:flex;gap:28px}.president-info-item{display:flex;flex-direction:column;gap:6px}.info-label{color:#fffc;font-size:13px;font-weight:600}.info-value{color:#fff;font-size:15px;font-weight:600}.content{display:flex;gap:14px;padding:18px}.cards{grid-gap:6px;display:grid;flex:1 1;gap:6px;grid-template-columns:repeat(2,1fr)}.card{align-items:flex-start;background:#fff;background:var(--card-bg);border:1px solid #0b2c560f;border-radius:16px;box-shadow:0 8px 20px -8px #0b2c5614;cursor:pointer;display:flex;gap:12px;height:138px;overflow:hidden;padding:1rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.card:before{background:linear-gradient(135deg,#0b2c5614,#fff0);border-radius:16px;content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:2px;pointer-events:none;position:absolute}.card{border-right:4px solid #0b2c56;border-right:4px solid var(--navy)}.card:after{background:#0b2c56;background:var(--navy);border-bottom-right-radius:16px;border-top-right-radius:16px;content:"";height:100%;opacity:.12;pointer-events:none;position:absolute;right:0;top:0;width:6px}.card:hover:after{opacity:.22}.card-icon-bg{bottom:-10px;color:#0b2c56;color:var(--navy);font-size:80px;opacity:.08;pointer-events:none;position:absolute;right:-5px;transition:all .4s cubic-bezier(.4,0,.2,1)}.card:hover .card-icon-bg{opacity:.15;transform:scale(1.1) rotate(-5deg)}.card:first-child .card-icon-bg{color:#0b2c56;color:var(--navy)}.card:nth-child(2) .card-icon-bg{color:#16a34a}.card:nth-child(3) .card-icon-bg{color:#dc2626}.card:nth-child(4) .card-icon-bg{color:#ca8a04}.card:first-child,.card:nth-child(2),.card:nth-child(3),.card:nth-child(4){background:linear-gradient(145deg,#fff,#dbeafe);border-color:#3b82f62e}.card:first-child .card-index,.card:nth-child(2) .card-index,.card:nth-child(3) .card-index,.card:nth-child(4) .card-index{background:linear-gradient(135deg,#dbeafe,#bfdbfe);box-shadow:0 4px 8px #3b82f62e;color:#0b2c56;color:var(--navy)}.card:hover{border-color:#0b2c5626;box-shadow:0 16px 32px -12px #0b2c562e;transform:translateY(-6px)}.card:hover .card-icon-bg{opacity:.2;transform:scale(1.2) rotate(-8deg)}.card:active{box-shadow:0 8px 16px #0b2c561a;transform:translateY(-2px)}.card.wide{grid-column:span 2}.card-index{align-items:center;border-radius:14px;color:#0b2c56;color:var(--navy);display:flex;font-size:22px;height:48px;justify-content:center;min-width:48px;transition:all .3s ease;width:48px;z-index:1}.card:hover .card-index{transform:scale(1.05) rotate(-2deg)}.card-body{flex:1 1;min-width:0;padding-right:80px;z-index:1}.card-label{color:#0b2c56;color:var(--text-dark);font-size:15px;font-weight:700;letter-spacing:-.01em;margin-bottom:8px;transition:color .3s ease}.card:hover .card-label{color:#0a2347}.card-value{color:#64748b;font-size:14px;font-weight:500;line-height:1.5;transition:color .3s ease}.card:hover .card-value{color:#475569}.card-img{height:70px;object-fit:contain;opacity:.85;pointer-events:none;position:absolute;right:20px;top:50%;transform:translateY(-50%);transition:all .3s ease;width:70px;z-index:2}.card:hover .card-img{opacity:1;transform:translateY(-50%) scale(1.05)}.right-panel{flex-shrink:0;width:320px}.donut-card{background:#fff;background:var(--card-bg);border:1px solid #0b2c560f;border-radius:16px;box-shadow:0 8px 24px -8px #0b2c5614;cursor:pointer;padding:20px 20px 24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.donut-card:hover{border-color:#0b2c561f;box-shadow:0 16px 36px -12px #0b2c5624;transform:translateY(-4px)}.donut-title{color:#0b2c56;color:var(--text-dark);font-size:15px;font-weight:700;letter-spacing:-.01em;margin-bottom:16px}.donut-placeholder{align-items:center;background:linear-gradient(180deg,#0b2c5614,#0b2c5605);border-radius:90px;color:#9aa7bb;height:160px}.donut-placeholder,.legend{display:flex;justify-content:center}.legend{flex-wrap:wrap;gap:14px;margin-top:16px}.legend-item{align-items:center;background:#00000005;border-radius:20px;color:#475569;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;padding:6px 12px;transition:all .2s ease}.legend-item:hover{background:#0b2c560f;color:#0b2c56;transform:translateY(-1px)}.swatch{border-radius:50%;box-shadow:0 1px 3px #0000001a;display:inline-block;height:12px;width:12px}.swatch.ip{background:#0b2c56}.swatch.accepted{background-color:#16a34a}.swatch.rejected{background-color:#dc2626}.swatch.pending{background-color:#ca8a04}.contracts-distribution-card{background:linear-gradient(#0b2c56b3,#0b2c56b3),url(/unicontracts/static/media/background%20image.5036b72df49b1625093b.jpg);background-position:50%;background-size:cover;border:3px solid #0b2c56;border:3px solid var(--navy);border-radius:10px;box-shadow:0 4px 12px #0b2c5614;cursor:pointer;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.contracts-distribution-card:hover{border-color:#fff;box-shadow:0 12px 28px #0b2c5626;transform:translateY(-4px)}.contracts-distribution-card .donut-title{color:#fff}.contracts-distribution-card .legend-item{color:#fffc}@media (max-width:900px){.admin-app{flex-direction:column}.sidebar{display:flex;flex-direction:row;gap:12px;overflow:auto;width:100%}.content{flex-direction:column}.right-panel{width:100%}.cards{grid-template-columns:1fr}}.contract-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b2c5699;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:24px 16px;position:fixed;z-index:1000}.contract-modal{background:#fff;border-radius:20px;box-shadow:0 40px 80px #0b2c5659,0 0 0 1px #0b2c561a;display:flex;flex-direction:column;font-family:system-ui,Segoe UI,Roboto,Arial,sans-serif;max-height:calc(100vh - 48px);max-width:900px;overflow:hidden;position:relative;width:100%}.contract-detail-hero{background:linear-gradient(135deg,#0d3a6e,#0b2c56);border-bottom:1px solid #ffffff14;color:#fff;flex-shrink:0;padding:32px 40px 28px;position:relative}.contract-detail-hero-label{color:#ffffffb3;display:block;font-size:.75rem;font-weight:700;letter-spacing:.15em;margin-bottom:12px;text-transform:uppercase}.contract-detail-hero-title{font-size:1.75rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;margin:0 0 18px;max-width:90%}.contract-detail-hero-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.contract-detail-id-pill{background:#ffffff26;border:1px solid #ffffff40;border-radius:10px;color:#fff;font-family:ui-monospace,monospace;font-size:.8rem;font-weight:700;padding:8px 16px}.contract-detail-hero .status-badge{font-size:.8rem;padding:8px 14px}.contract-modal-close{align-items:center;background:#ffffff1f;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1.75rem;height:44px;justify-content:center;line-height:1;position:absolute;right:20px;top:20px;transition:all .2s ease;width:44px}.contract-modal-close:hover{background:#ffffff38;transform:rotate(90deg)}.contract-detail-body{display:flex;flex:1 1;flex-direction:column;gap:20px;overflow-y:auto;padding:28px 32px 20px}.detail-panel{background:#fff;border:1px solid #0b2c5614;border-radius:12px;box-shadow:0 2px 10px #0b2c560d;cursor:pointer;padding:18px 20px;transition:all .2s ease}.detail-panel:hover{background:#f8fafc;border-color:#0b2c5626;box-shadow:0 6px 16px #0b2c5614}.detail-panel-head{align-items:center;border-bottom:1px solid #0b2c5614;display:flex;gap:12px;margin-bottom:14px;padding-bottom:12px}.detail-panel-step{align-items:center;background:linear-gradient(180deg,#0b2c56,#153a6a);background:linear-gradient(180deg,var(--navy) 0,var(--navy-2) 100%);border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:.875rem;font-weight:800;height:32px;justify-content:center;width:32px}.detail-panel-head h3{color:#0b2c56;color:var(--navy);font-size:1rem;font-weight:700;margin:0}.detail-panel-content--split{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}@media (min-width:720px){.detail-panel-content--split{grid-template-columns:1fr minmax(200px,32%)}}.detail-chip-group{display:flex;flex-wrap:wrap;gap:8px}.detail-chip{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;display:inline-flex;font-size:.8125rem;font-weight:500;gap:6px;padding:8px 14px}.detail-chip--active{background:#fff;border-color:#0b2c56;border-color:var(--navy);box-shadow:0 0 0 2px #0b2c5626;color:#0b2c56;color:var(--navy);font-weight:700}.detail-chip-dot{background:#0b2c56;background:var(--navy);border-radius:50%;flex-shrink:0;height:8px;width:8px}.detail-chip--success{background:#ecfdf5;border-color:#6ee7b7;color:#166534;font-weight:700}.detail-highlight-note{background:#f8fafc;border-left:3px solid #0b2c56;border-left:3px solid var(--navy);border-radius:10px;color:#334155;font-size:.875rem;line-height:1.5;margin:14px 0 0;padding:12px 14px}.detail-highlight-label{color:#64748b;display:block;font-size:.6875rem;font-weight:700;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase}.detail-callout{background:linear-gradient(180deg,#fffbeb,#fef3c7);border:1px solid #fcd34d;border-radius:10px;padding:14px 16px}.detail-callout-label{color:#92400e;display:block;font-size:.6875rem;font-weight:700;letter-spacing:.06em;margin-bottom:6px;text-transform:uppercase}.detail-callout p{color:#78350f;font-size:.8125rem;line-height:1.45;margin:0}.detail-text-block{color:#334155;font-size:.9375rem;line-height:1.6;margin:0;padding:4px 0}.contractor-info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}@media (min-width:560px){.contractor-info-grid{grid-template-columns:repeat(2,1fr)}}.contractor-info-card{background:#f7f9fc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:18px 20px;transition:all .2s ease}.contractor-info-card:hover{background:#f3f7fb;border-color:#cbd5e1;box-shadow:0 4px 12px #0b2c5614}.contractor-info-label{color:#7c8fa3;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contractor-info-value{color:#1e293b;font-size:1rem;font-weight:600;line-height:1.5;word-break:break-word}.detail-panel--contractor .detail-panel-head{margin-bottom:16px}.contract-decision-banner{border-radius:10px;font-size:.9375rem;font-weight:500;line-height:1.5;margin-top:16px;padding:14px 16px}.contract-decision-banner--success{background:#ecfdf5;border:1px solid #6ee7b7;color:#166534}.contract-decision-banner--rejection{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.contract-decision-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}.contract-btn{border:2px solid;border-radius:12px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;min-width:120px;padding:12px 28px;transition:all .2s ease}.contract-btn:active{transform:scale(.98)}.contract-btn--approve{background:#fff;border-color:#16a34a;color:#16a34a}.contract-btn--approve:hover{background:#f0fdf4;box-shadow:0 4px 12px #16a34a33}.contract-btn--reject{background:#fff;border-color:#dc2626;color:#dc2626}.contract-btn--reject:hover{background:#fef2f2;box-shadow:0 4px 12px #dc262633}.contract-reject-box{background:#f8fafc;border:1px solid #0b2c561f;border-radius:10px;margin-top:16px;padding:16px}.contract-reject-label{color:#64748b;display:block;font-size:.75rem;font-weight:700;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}.contract-reject-textarea{border:1px solid #0b2c562e;border-radius:10px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:.9375rem;line-height:1.45;min-height:100px;padding:12px 14px;resize:vertical;transition:border-color .15s,box-shadow .15s;width:100%}.contract-reject-textarea:focus{border-color:#0b2c56;border-color:var(--navy);box-shadow:0 0 0 3px #0b2c561f;outline:none}.contract-reject-error{color:#b91c1c;font-size:.8125rem;font-weight:600;margin:8px 0 0}.contract-btn--submit-reject{background:#b91c1c;box-shadow:0 2px 8px #b91c1c4d;color:#fff;margin-top:12px}.contract-btn--submit-reject:hover{background:#991b1b;transform:translateY(-1px)}.contract-detail-footer{background:#fff;border-top:1px solid #e2e8f0;display:flex;flex-shrink:0;justify-content:flex-end;padding:20px 28px 24px}.contract-detail-close-btn{background:#0b2c56;border:none;border-radius:12px;box-shadow:0 4px 12px #0b2c5640;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 32px;transition:all .2s ease}.contract-detail-close-btn:hover{background:#0a1e3a;box-shadow:0 6px 16px #0b2c5659;transform:translateY(-2px)}@media (max-width:640px){.contract-detail-hero{padding:24px 48px 20px 20px}.contract-detail-hero-title{font-size:1.2rem;max-width:100%}.contract-detail-body{padding:16px}}.reports-intro{background:linear-gradient(#0b2c56b3,#0b2c56b3),url(/unicontracts/static/media/background%20image.5036b72df49b1625093b.jpg);background-position:50%;background-size:cover;border:3px solid #0b2c56;border:3px solid var(--navy);border-radius:10px;box-shadow:0 4px 12px #0b2c5614;margin:20px 24px 0;padding:22px 24px}.reports-intro-title{color:#fff;font-size:1.25rem;font-weight:700;margin:0 0 10px}.reports-intro-text{color:#ffffffe6;font-size:.9375rem;line-height:1.55;margin:0 0 16px}.reports-policy-list{color:#ffffffe6;font-size:.875rem;line-height:1.65;margin:0;padding-left:1.25rem}.reports-policy-list strong{color:#fff}.reports-policy-list li{margin-bottom:6px}.reports-content{padding-top:16px}.reports-list{display:flex;flex-direction:column;gap:16px;width:100%}.reports-contract-card{background:#fff;border:1px solid #0b2c561a;border-radius:14px;box-shadow:0 4px 14px #0b2c560f;padding:20px 22px}.reports-contract-header{margin-bottom:10px}.reports-contract-name{color:#0b2c56;color:var(--navy);font-size:1.0625rem;font-weight:700;margin:0 0 8px}.reports-contract-meta{align-items:center;display:flex;flex-wrap:wrap;gap:10px 14px;margin:0}.reports-contract-id{background:#0b2c5614;border-radius:6px;color:#0b2c56;color:var(--navy);font-family:ui-monospace,monospace;font-size:.8125rem;font-weight:700;padding:4px 10px}.reports-contract-amount{color:#0f172a;font-size:.9375rem;font-weight:700}.reports-tier-line{color:#64748b;font-size:.8125rem;line-height:1.45;margin:0 0 16px}.approval-flow{align-items:center;background:linear-gradient(180deg,#f8fafc,#f1f5f9);border:1px solid #0b2c561a;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px 6px;padding:14px 16px}.approval-step{align-items:center;background:linear-gradient(180deg,#0b2c56,#153a6a);background:linear-gradient(180deg,var(--navy) 0,var(--navy-2) 100%);border-radius:10px;box-shadow:0 2px 6px #0b2c5633;color:#fff;display:inline-flex;font-size:.8125rem;font-weight:700;justify-content:center;padding:8px 14px}.approval-connector{color:#0b2c56;color:var(--navy);font-size:.875rem;font-weight:700;-webkit-user-select:none;user-select:none}.eng-requests-section{padding-top:0}.eng-add-request-btn{background:#0b2c56;background:var(--navy);border:none;border-radius:10px;box-shadow:0 2px 8px #0b2c5640;color:#fff;cursor:pointer;font-size:.875rem;font-weight:700;padding:10px 20px;transition:background .15s,transform .1s;white-space:nowrap}.eng-add-request-btn:hover{background:#153a6a;background:var(--navy-2);transform:translateY(-1px)}.eng-request-modal{max-width:560px}.eng-request-form{display:flex;flex-direction:column;gap:6px}.eng-request-form label{color:#64748b;font-size:.75rem;font-weight:700;letter-spacing:.04em;margin-top:10px;text-transform:uppercase}.eng-request-form label:first-child{margin-top:0}.eng-request-form input,.eng-request-form select,.eng-request-form textarea{border:1px solid #0b2c562e;border-radius:8px;color:#1e293b;font-family:inherit;font-size:.9375rem;padding:10px 12px}.eng-request-form input:focus,.eng-request-form select:focus,.eng-request-form textarea:focus{border-color:#0b2c56;border-color:var(--navy);box-shadow:0 0 0 3px #0b2c561f;outline:none}.eng-request-modal-footer{gap:12px;justify-content:flex-end}.contract-detail-close-btn--secondary{background:#fff;border:2px solid #0b2c56;border:2px solid var(--navy);box-shadow:none;color:#0b2c56;color:var(--navy)}.contract-detail-close-btn--secondary:hover{background:#0b2c560f;transform:translateY(-1px)}.app-footer{background:#0b2c56;background:var(--navy);border-top:1px solid #ffffff1a;color:#fff;margin-top:auto;padding:24px 40px;text-align:center;width:100%}.footer-content{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 auto;max-width:1400px}.footer-content p{color:#ffffffe6;font-size:14px;margin:0}.footer-links{align-items:center;display:flex;gap:12px}.footer-links a{color:#ffffffe6;font-size:14px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-separator{color:#ffffff80}@media (max-width:768px){.app-footer{padding:16px 20px}.footer-content{flex-direction:column;gap:12px}.footer-links{flex-wrap:wrap;justify-content:center}.contract-modal-overlay{align-items:flex-end;padding:0}.contract-modal{border-radius:20px 20px 0 0;max-height:96vh;max-width:100%}.detail-panel-content--split{grid-template-columns:1fr}}.contracts-table-card{background:#fff;background:var(--card-bg);border:1px solid #0b2c561a;border-radius:14px;box-shadow:0 8px 24px #0b2c5614;overflow:hidden;transition:box-shadow .3s ease;width:100%}.contracts-table-card:hover{box-shadow:0 12px 32px #0b2c561f}.contracts-toolbar{align-items:flex-end;background:linear-gradient(180deg,#f8f9fb,#fafbfc);border-bottom:1px solid #0b2c561a;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:24px 28px}.contracts-toolbar-title h3{color:#0b2c56;color:var(--navy);font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0 0 6px}.contracts-toolbar-count{color:#64748b;font-size:.8125rem;margin:0}.contracts-toolbar-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.contracts-search-wrap{align-items:center;display:flex;min-width:260px;position:relative}.contracts-search-icon{color:#94a3b8;font-size:1rem;left:14px;pointer-events:none;position:absolute}.contracts-search-input{background:#fff;border:1px solid #0b2c5626;border-radius:10px;color:#0b2c56;color:var(--text-dark);font-size:.875rem;min-width:260px;padding:11px 36px 11px 40px;transition:all .2s ease;width:100%}.contracts-search-input:hover{border-color:#0b2c5640;box-shadow:0 2px 8px #0b2c560f}.contracts-search-input::placeholder{color:#94a3b8}.contracts-search-input:focus{border-color:#0b2c56;border-color:var(--navy);box-shadow:0 0 0 3px #0b2c561f;outline:none}.contracts-search-clear{background:#f1f5f9;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:1.125rem;height:28px;line-height:1;position:absolute;right:8px;width:28px}.contracts-search-clear:hover{background:#e2e8f0;color:#0b2c56;color:var(--navy)}.contracts-filter-select{-webkit-appearance:none;appearance:none;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%230b2c56' d='M6 8 1 3h10z'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid #0b2c5626;border-radius:10px;color:#0b2c56;color:var(--navy);cursor:pointer;font-size:.875rem;font-weight:600;min-width:160px;padding:11px 36px 11px 14px;transition:all .2s ease}.contracts-filter-select:hover{border-color:#0b2c5640;box-shadow:0 2px 8px #0b2c560f}.contracts-filter-select:focus{border-color:#0b2c56;border-color:var(--navy);box-shadow:0 0 0 3px #0b2c561f;outline:none}.contracts-table-scroll{overflow-x:auto;padding:0 4px 4px}.contracts-table{border-collapse:collapse;min-width:720px;width:100%}.contracts-table thead th{background:linear-gradient(180deg,#e6ecf5,#dde5f0);border-bottom:2px solid #0b2c561f;color:#0b2c56;font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:16px 18px;text-align:left;text-transform:uppercase;-webkit-user-select:none;user-select:none}.contracts-table tbody td{border-bottom:1px solid #0b2c5614;color:#0b2c56;color:var(--text-dark);font-size:.9375rem;padding:16px 18px;text-align:left;transition:background .15s ease;vertical-align:middle}.contracts-table tbody tr{transition:all .2s ease}.contracts-table tbody tr:nth-child(odd){background:#fafbfc}.contracts-table tbody tr:nth-child(2n){background:#fff}.contracts-table tbody tr:hover:not(:has(.contracts-empty-cell)){background:#0b2c560f;box-shadow:inset 0 0 12px #0b2c560a}.contracts-table .col-num{color:#64748b;font-size:.875rem;font-weight:700;width:60px}.contracts-table .col-name{color:#1e293b;font-weight:600;letter-spacing:-.01em}.contracts-table .col-action{text-align:center;width:130px}.contract-id-cell{background:#0b2c560f;border-radius:8px;color:#0b2c56;color:var(--navy);display:inline-block;font-family:ui-monospace,Cascadia Code,monospace;font-size:.8125rem;font-weight:600;padding:5px 12px;transition:all .2s ease}.contracts-table tbody tr:hover .contract-id-cell{background:#0b2c561f;color:#0a2347}.status-badge{border-radius:20px;display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.02em;padding:6px 14px;transition:all .2s ease}.status-badge--approved{background:#dcfce7;border:1px solid #86efac;color:#166534}.contracts-table tbody tr:hover .status-badge--approved{box-shadow:0 4px 12px #16a34a40;transform:translateY(-1px)}.status-badge--review{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.contracts-table tbody tr:hover .status-badge--review{box-shadow:0 4px 12px #1e40af40;transform:translateY(-1px)}.status-badge--rejected{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.contracts-table tbody tr:hover .status-badge--rejected{box-shadow:0 4px 12px #dc262640;transform:translateY(-1px)}.status-badge--pending{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.contracts-table tbody tr:hover .status-badge--pending{box-shadow:0 4px 12px #ca8a0440;transform:translateY(-1px)}.contracts-empty-cell{background:#fff!important;padding:56px 32px!important;text-align:center}.contracts-empty p{color:#64748b;font-size:.9375rem;letter-spacing:-.01em;margin:0 0 16px}.contracts-reset-btn{background:#0000;border:2px solid #0b2c56;border:2px solid var(--navy);border-radius:10px;color:#0b2c56;color:var(--navy);cursor:pointer;font-size:.875rem;font-weight:700;padding:10px 20px;transition:all .2s ease}.contracts-reset-btn:hover{box-shadow:0 4px 12px #0b2c5633;transform:translateY(-2px)}.contracts-reset-btn:hover,.table-view-btn{background:#0b2c56;background:var(--navy);color:#fff}.table-view-btn{border:none;border-radius:10px;box-shadow:0 2px 8px #0b2c5633;cursor:pointer;font-size:.8125rem;font-weight:700;letter-spacing:.03em;padding:10px 22px;transition:all .2s cubic-bezier(.4,0,.2,1)}.table-view-btn:hover{background:#0a2347;box-shadow:0 6px 16px #0b2c564d;transform:translateY(-2px)}.table-view-btn:active{box-shadow:0 2px 8px #0b2c5633;transform:translateY(0)}@media (max-width:640px){.contracts-toolbar{align-items:stretch}.contracts-toolbar,.contracts-toolbar-controls{flex-direction:column}.contracts-search-input,.contracts-search-wrap{min-width:0;width:100%}.contracts-filter-select{width:100%}}@media (max-width:600px){.topbar-right{gap:8px}.topbar-user-info .user-icon{font-size:22px}.user-name{font-size:11px}.user-role{font-size:10px}.topbar-logout-btn{font-size:12px;padding:6px 12px}}*{box-sizing:border-box;margin:0;padding:0}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.req-modal-overlay{align-items:center;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:1.5rem;position:fixed;z-index:10000}.req-modal-backdrop-blur{animation:blurFadeIn .4s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);background:#0a2540a6;inset:0;position:fixed;z-index:-1}@keyframes blurFadeIn{0%{backdrop-filter:blur(0) saturate(100%);-webkit-backdrop-filter:blur(0) saturate(100%);opacity:0}to{backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);opacity:1}}.req-modal-container{animation:modalSlideUp .5s cubic-bezier(.16,1,.3,1);max-height:90vh;max-width:1000px;position:relative;width:100%;z-index:1}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.req-modal{background:#fff;border-radius:32px;box-shadow:0 25px 50px -12px #00000059,0 0 0 1px #ffffff1a;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;transition:box-shadow .3s ease}.req-modal-header{align-items:flex-start;background:linear-gradient(135deg,#0a2540,#1a3a5c);display:flex;gap:1rem;justify-content:space-between;overflow:hidden;padding:1.75rem 2rem 3.25rem;position:relative}.req-modal-header:before{animation:shine 3s infinite;background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shine{0%{left:-100%}20%,to{left:100%}}.req-modal-header-content{flex:1 1;position:relative;z-index:1}.req-modal-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:100px;color:#fffffff2;display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.1em;margin-bottom:.85rem;padding:.35rem 1rem;text-transform:uppercase}.req-modal-title{color:#fff;font-size:1.4rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin:0;overflow:visible;white-space:nowrap}.req-modal-ref{align-items:center;display:flex;gap:.6rem;margin-top:.85rem}.req-ref-label{color:#fff9;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.req-ref-code{background:#ffffff1f;border-radius:10px;font-family:SF Mono,Fira Code,Courier New,monospace;font-size:.75rem;letter-spacing:.02em;padding:.3rem .7rem}.req-modal-close,.req-ref-code{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff}.req-modal-close{align-items:center;background:#ffffff1a;border:none;border-radius:20px;cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:44px}.req-modal-close:hover{background:#ffffff40;transform:rotate(90deg) scale(1.05)}.req-modal-close:active{transform:rotate(90deg) scale(.95)}.req-modal-status-bar{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #0a254014;display:flex;flex-wrap:wrap;gap:2rem;padding:1rem 2rem}.req-status-item{align-items:center;display:flex;gap:.85rem}.req-status-label{color:#5b6e8c;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.req-status-amount{color:#0a2540;font-size:1rem;font-weight:700}.req-status-date{color:#3a5a7a;font-size:.85rem;font-weight:500}.req-status{align-items:center;border-radius:100px;display:inline-flex;font-size:.75rem;font-weight:700;letter-spacing:.02em;padding:.4rem 1.1rem;transition:all .2s ease}.req-status--approved{background:linear-gradient(135deg,#dcfce7,#bbf7d0);box-shadow:0 2px 8px #1665341a;color:#166534}.req-status--review{background:linear-gradient(135deg,#dbeafe,#bfdbfe);box-shadow:0 2px 8px #1e40af1a;color:#1e40af}.req-status--rejected{background:linear-gradient(135deg,#fee2e2,#fecaca);box-shadow:0 2px 8px #991b1b1a;color:#991b1b}.req-status--pending{background:linear-gradient(135deg,#fef3c7,#fde68a);box-shadow:0 2px 8px #92400e1a;color:#92400e}.req-modal-body{background:#fff;flex:1 1;overflow-y:auto;padding:2rem}.req-modal-body::-webkit-scrollbar{width:6px}.req-modal-body::-webkit-scrollbar-track{background:#f0f2f5;border-radius:10px}.req-modal-body::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#cbd5e1,#94a3b8);border-radius:10px}.req-modal-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#94a3b8,#64748b)}.req-view-content{display:flex;flex-direction:column;gap:2rem}.req-view-section{animation:sectionFadeIn .4s ease-out}@keyframes sectionFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.req-view-section-title{align-items:center;border-bottom:2px solid #eef2f8;color:#5b6e8c;display:flex;font-size:.85rem;font-weight:700;gap:.6rem;letter-spacing:.08em;margin-bottom:1.25rem;padding-bottom:.6rem;text-transform:uppercase}.section-icon{font-size:1.1rem}.req-view-grid{display:flex;flex-direction:column;gap:1rem}.req-view-grid.two-columns{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.req-view-field{display:flex;flex-direction:column;gap:.4rem}.req-view-field.full-width{grid-column:span 2}.req-view-label{color:#8a9bb0;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.req-view-value{color:#1e2f44;font-size:.9rem;font-weight:500;line-height:1.5}.req-view-amount{color:#0a2540;font-size:1.3rem;font-weight:700}.req-view-description{background:linear-gradient(135deg,#fafcff,#f8fafc);border:1px solid #eef2f8;border-radius:14px;color:#3a5a7a;font-size:.85rem;line-height:1.6;padding:.85rem 1.1rem}.req-view-value-badge{background:linear-gradient(135deg,#f0f4fa,#e8edf5);border-radius:100px;color:#1e2f44;display:inline-block;font-size:.8rem;font-weight:600;padding:.4rem 1rem}.req-view-tags{display:flex;flex-wrap:wrap;gap:.6rem}.req-view-tag{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:100px;color:#2c5f8a;font-size:.75rem;font-weight:600;padding:.35rem .9rem;transition:all .2s ease}.req-view-tag:hover{box-shadow:0 2px 6px #2c5f8a26;transform:translateY(-1px)}.req-view-link{align-items:center;color:#2c5f8a;display:inline-flex;font-size:.85rem;font-weight:600;gap:.35rem;text-decoration:none;transition:all .2s ease}.req-view-link:hover{color:#0a2540;gap:.5rem}.req-form-tabs{border-bottom:2px solid #eef2f8;display:flex;gap:.5rem;margin-bottom:1.75rem;overflow-x:auto;padding-bottom:0}.req-tab{background:none;border:none;border-radius:14px 14px 0 0;color:#6a7c98;cursor:pointer;font-size:.85rem;font-weight:600;padding:.8rem 1.4rem;position:relative;transition:all .25s ease;white-space:nowrap}.req-tab:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#0a2540}.req-tab.active{background:#fff;color:#0a2540;font-weight:700}.req-tab.active:after{background:linear-gradient(135deg,#0a2540,#1a3a5c);border-radius:3px;bottom:-2px;content:"";height:3px;left:0;position:absolute;right:0}.req-form-tab-content{animation:tabFade .3s ease}@keyframes tabFade{0%{opacity:0;transform:translateX(6px)}to{opacity:1;transform:translateX(0)}}.req-form-tab-pane{gap:1.5rem}.req-form,.req-form-row,.req-form-tab-pane{display:flex;flex-direction:column}.req-form-row{gap:.6rem}.req-form-row-group{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.req-label{color:#1e2f44;font-size:.75rem;font-weight:700;letter-spacing:.03em}.required{color:#e5484d;margin-left:.25rem}.req-input{background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;font-family:inherit;font-size:.85rem;padding:.8rem 1.1rem;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%}.req-input:hover{background:#fefefe;border-color:#cbd5e1}.req-input:focus{background:#fff;border-color:#0a2540;box-shadow:0 0 0 4px #0a254014;outline:none}.req-textarea{line-height:1.5;min-height:100px;resize:vertical}.req-checkboxes-group{display:flex;flex-wrap:wrap;gap:1.2rem;padding:.6rem 0}.req-checkbox-item{align-items:center;display:flex;gap:.6rem}.req-checkbox{accent-color:#0a2540;cursor:pointer;height:18px;width:18px}.req-checkbox-label{color:#3a5a7a;cursor:pointer;font-size:.8rem;font-weight:500;transition:color .2s ease}.req-checkbox-label:hover{color:#0a2540}.req-file-upload{position:relative}.req-file-input{height:.1px;opacity:0;overflow:hidden;position:absolute;width:.1px}.req-file-label{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1.5px dashed #cbd5e1;border-radius:14px;color:#2c5f8a;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:600;gap:.6rem;padding:.75rem 1.2rem;transition:all .25s ease}.req-file-label--error{border-color:#ef4444!important;border-color:var(--color-error,#ef4444)!important;color:#ef4444;color:var(--color-error,#ef4444)}.req-file-label:hover{background:linear-gradient(135deg,#f1f5f9,#eef2ff);border-color:#0a2540;color:#0a2540;transform:translateY(-1px)}.req-file-info{color:#6a7c98;display:block;font-size:.7rem;margin-top:.6rem}.req-modal-footer{background:linear-gradient(135deg,#fafcff,#fff);border-top:1px solid #eef2f8;display:flex;gap:1rem;justify-content:flex-end;padding:1.25rem 2rem}.req-btn{border:none;border-radius:14px;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:700;letter-spacing:.02em;padding:.8rem 2rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.req-btn-secondary{background:#fff;border:1.5px solid #e2e8f0;color:#3a5a7a}.req-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 4px 12px #0000000d;transform:translateY(-2px)}.req-btn-primary{background:linear-gradient(135deg,#0a2540,#1a3a5c);box-shadow:0 4px 14px #0a254040;color:#fff;overflow:hidden;position:relative}.req-btn-primary:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.req-btn-primary:hover:before{left:100%}.req-btn-primary:hover{box-shadow:0 8px 22px #0a254059;transform:translateY(-2px)}.req-btn-primary:active{transform:translateY(0)}@media (max-width:768px){.req-modal-overlay{align-items:flex-end;padding:0}.req-modal-backdrop-blur{backdrop-filter:blur(8px) saturate(180%);-webkit-backdrop-filter:blur(8px) saturate(180%)}.req-modal-container{max-height:96vh;max-width:100%}.req-modal{border-radius:20px 20px 0 0;max-height:96vh}.req-modal-header{border-radius:20px 20px 0 0;padding:1.25rem 1.5rem 2rem}.req-modal-title{font-size:1.2rem}.req-modal-body{padding:1.25rem}.req-view-grid.two-columns{grid-template-columns:1fr}.req-view-field.full-width{grid-column:span 1}.req-form-row-group{gap:1rem;grid-template-columns:1fr}.req-modal-status-bar{align-items:flex-start;flex-direction:column;gap:1rem;padding:.75rem 1.25rem}.req-modal-footer{flex-direction:column-reverse;gap:.5rem;padding:1rem 1.5rem}.req-btn{justify-content:center;text-align:center;width:100%}.req-tab{font-size:.75rem;padding:.6rem 1.1rem}.req-modal-tabs{gap:.25rem;overflow-x:auto}.req-tab{white-space:nowrap}}@media (max-width:480px){.req-modal-title{font-size:1rem}.req-modal-badge{font-size:.6rem;padding:.25rem .75rem}.req-view-amount{font-size:1.1rem}}@media print{.req-modal-overlay{background:#fff;padding:0;position:relative}.req-form-tabs,.req-modal-backdrop-blur,.req-modal-close,.req-modal-footer,.req-modal-status-bar{display:none}.req-modal{border:1px solid #e2e8f0;box-shadow:none;max-height:none}.req-modal-header{background:#0a2540;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.table-toolbar-wrap{background:#fff;border-bottom:1px solid #0b2c5614}.table-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:4px;padding:8px 12px}.table-toolbar-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#0b2c56;cursor:pointer;display:inline-flex;font-family:system-ui,Segoe UI,Roboto,Arial,sans-serif;font-size:.8125rem;font-weight:600;gap:8px;padding:8px 14px;transition:all .2s ease}.table-toolbar-btn--active,.table-toolbar-btn:hover{background:#0b2c561a;color:#0a2347;transform:translateY(-1px)}.table-toolbar-btn svg{flex-shrink:0}.table-toolbar-panel{background:#fafbfc;border-top:1px solid #0b2c560f;padding:12px 16px 14px}.table-toolbar-panel--filters{padding:14px 16px}.table-toolbar-panel-title{color:#0b2c56;font-size:.75rem;font-weight:700;letter-spacing:.04em;margin:0 0 10px;text-transform:uppercase}.table-toolbar-panel-hint{color:#64748b;font-size:.8125rem;margin:0}.table-toolbar-columns-list{display:flex;flex-wrap:wrap;gap:12px 20px;list-style:none;margin:0;padding:0}.table-toolbar-columns-list label{align-items:center;color:#0b2c56;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:8px}.table-toolbar-columns-list input{accent-color:#0b2c56}.table-toolbar-density-options{display:flex;flex-wrap:wrap;gap:8px}.table-toolbar-density-btn{background:#fff;border:1px solid #0b2c5633;border-radius:10px;color:#0b2c56;cursor:pointer;font-size:.8125rem;font-weight:600;padding:10px 16px;transition:all .2s ease}.table-toolbar-density-btn:hover{background:#0b2c560f;border-color:#0b2c564d;box-shadow:0 2px 8px #0b2c5614;transform:translateY(-1px)}.table-toolbar-density-btn--active{background:#0b2c561a;border-color:#0b2c56;box-shadow:0 2px 8px #0b2c561f;color:#0a2347}.contracts-table--comfortable tbody td{padding:20px 18px}.contracts-table--compact tbody td{font-size:.8125rem;padding:8px 12px}.contracts-table--compact thead th{font-size:.6875rem;padding:10px 12px}.table-toolbar-filter-fields{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.table-toolbar-filter-fields .contracts-search-wrap{flex:1 1;min-width:240px}@media (max-width:640px){.table-toolbar{gap:2px;padding:6px 8px}.table-toolbar-btn{font-size:.75rem;gap:5px;padding:6px 10px}.table-toolbar-filter-fields{align-items:stretch;flex-direction:column}.table-toolbar-filter-fields .contracts-search-wrap{min-width:0;width:100%}.table-toolbar-panel{padding:10px 12px}.table-toolbar-columns-list{gap:8px 14px}.table-toolbar-density-options{gap:6px}.table-toolbar-density-btn{font-size:.75rem;padding:8px 12px}}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0px;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}@media only screen and (max-width:480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.2d936c12.css.map*/