*{box-sizing:border-box;margin:0;padding:0}body,html{overflow-x:hidden;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:relative}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);background-blend-mode:overlay;background-image:linear-gradient(135deg,#667eea,#764ba2),url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z' fill='%23fff' fill-opacity='.05' fill-rule='evenodd'/%3E%3C/svg%3E");display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.login-container:before{animation:float 20s ease-in-out infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);right:-50%;top:-50%}.login-container:after,.login-container:before{content:"";height:100%;position:absolute;width:100%}.login-container:after{animation:float 25s ease-in-out infinite reverse;background:radial-gradient(circle,#ffffff14 0,#0000 70%);bottom:-50%;left:-50%}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-30px,30px) rotate(240deg)}}.login-card{animation:slideUp .5s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:440px;padding:48px;position:relative;width:100%;z-index:1}.login-header{margin-bottom:32px;text-align:center}.company-logo{filter:drop-shadow(0 2px 8px rgba(0,0,0,.1));height:auto;margin-bottom:24px;width:120px}.login-title{color:#1a202c;font-size:28px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.login-subtitle{color:#718096;font-size:15px;font-weight:400;margin:0}.form-group,.login-form{margin-bottom:24px}.form-group input{background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:15px;padding:14px 16px;transition:all .3s ease;width:100%}.form-group input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input::placeholder{color:#cbd5e0}.btn-login{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 14px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:14px;transition:all .3s ease;width:100%}.btn-login:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-login:active{transform:translateY(0)}.btn-login:disabled{background:#cbd5e0;box-shadow:none;cursor:not-allowed;transform:none}.spinner-circle{stroke-dasharray:60;stroke-dashoffset:15}.error-message{align-items:center;border:1px solid #fc8181;display:flex;gap:10px}.error-message svg{flex-shrink:0}.register-link{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:24px;padding:16px;text-align:center}.register-link p{color:#4a5568;font-size:14px;margin:0}.register-link a{color:#667eea;font-weight:600;text-decoration:none;transition:color .2s ease}.register-link a:hover{color:#5a67d8;text-decoration:underline}.login-footer{border-top:1px solid #e2e8f0;margin-top:32px;padding-top:24px;text-align:center}.login-footer p{color:#a0aec0;font-size:12px;margin:0}.header{align-items:center;background:#fff;box-shadow:0 2px 10px #0000001a;display:flex;justify-content:space-between;padding:20px 40px}.header h1{color:#333;font-size:24px}.user-info{gap:20px}.user-details{text-align:right}.user-details .name{color:#333;font-weight:600}.user-details .roles{color:#666;font-size:14px}.btn-logout{background:#ff4757;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:500;padding:8px 20px;transition:background .3s}.btn-logout:hover{background:#e84050}.main-content{margin:0 auto;max-width:1200px;padding:40px}.page-title{color:#333;font-size:28px;margin-bottom:30px}.projects-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.project-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:24px;transition:transform .2s,box-shadow .2s}.project-card:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.project-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:16px}.project-number{color:#667eea}.project-name{color:#333;font-size:20px;font-weight:600;margin-bottom:8px}.project-type{color:#666;font-size:14px;margin-bottom:16px}.project-info{grid-gap:8px;display:grid;gap:8px;margin-bottom:16px}.info-label{color:#666}.info-value{color:#333;font-weight:500}.badge-success{background:#d4edda;color:#155724}.badge-warning{background:#fff3cd;color:#856404}.badge-info{background:#d1ecf1;color:#0c5460}.badge-danger{background:#f8d7da;color:#721c24}.progress-bar{background:#e0e0e0;border-radius:4px;height:8px;margin-top:8px}.progress-fill{background:#667eea;transition:width .3s}.loading{color:#666;padding:60px}.empty-state{color:#999;padding:60px}.btn-manage-managers{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 16px;transition:all .2s;width:100%}.btn-manage-managers:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-manage-managers:active{transform:translateY(0)}html{font-size:16px}@media (max-width:480px){html{font-size:14px}body{overflow-x:hidden}.login-container{padding:15px}.login-card{border-radius:12px;max-width:100%;padding:32px 24px}.company-logo{margin-bottom:16px;width:90px}.login-title{font-size:24px}.login-subtitle{font-size:14px}.form-group input{font-size:16px;padding:11px 11px 11px 42px}.btn-login{font-size:15px;padding:13px}.btn-primary,.form-group input{font-size:15px;padding:14px}.header{align-items:stretch;flex-direction:column;gap:12px;padding:15px 20px}.header h1{font-size:20px;text-align:center}.user-info{align-items:stretch;flex-direction:column;gap:10px}.user-details{text-align:center}.btn-logout{padding:12px;width:100%}.main-content{padding:4.5rem 20px 20px}.page-title{font-size:22px;margin-bottom:20px}.projects-grid{gap:15px;grid-template-columns:1fr}.project-card{padding:18px}.project-name{font-size:18px}.btn-manage-managers{font-size:13px;padding:12px 14px}}@media (min-width:481px) and (max-width:767px){html{font-size:15px}.login-card{border-radius:14px;padding:40px}.company-logo{margin-bottom:20px;width:100px}.login-title{font-size:26px}.header{padding:18px 30px}.header h1{font-size:22px}.main-content{padding:30px 25px}.page-title{font-size:24px;margin-bottom:25px}.projects-grid{gap:18px;grid-template-columns:1fr}.project-card{padding:20px}}@media (min-width:768px) and (max-width:1024px){html{font-size:15px}.login-card{padding:44px}.company-logo{width:110px}.header{padding:20px 35px}.main-content{padding:35px 30px}.projects-grid{gap:18px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{padding:22px}}@media (min-width:1025px) and (max-width:1366px){html{font-size:15.5px}.main-content{max-width:1100px}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (min-width:1367px){html{font-size:16px}.main-content{max-width:1400px}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}@media (max-height:600px) and (orientation:landscape){.login-container{align-items:flex-start;padding:15px}.login-card{margin:15px auto;max-height:95vh;overflow-y:auto;padding:24px 40px}.company-logo{margin-bottom:12px;width:70px}.login-header{margin-bottom:20px}.login-title{font-size:20px;margin-bottom:4px}.login-subtitle{font-size:13px}.form-group{margin-bottom:16px}.header{padding:12px 30px}}@media (hover:none) and (pointer:coarse){.btn-logout,.btn-manage-managers,.btn-primary{min-height:44px;padding:12px 20px}.form-group input{min-height:44px;padding:12px}.project-card,a,button{-webkit-tap-highlight-color:rgba(102,126,234,.2)}*{-webkit-overflow-scrolling:touch}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.login-card,.project-card{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{.login-container{display:none}.btn-logout,.btn-manage-managers,.header{display:none!important}.project-card{border:1px solid #ddd;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.projects-grid{grid-template-columns:1fr}}.hamburger-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea66;cursor:pointer;display:none;flex-direction:column;gap:5px;height:50px;justify-content:center;left:15px;padding:0;position:fixed;top:15px;transition:all .3s ease;width:50px;z-index:1001}.hamburger-btn span{background:#fff;border-radius:2px;display:block;height:3px;transition:all .3s ease;width:25px}.hamburger-btn:hover{box-shadow:0 6px 20px #667eea99;transform:scale(1.05)}.hamburger-btn:active{transform:scale(.95)}.hamburger-btn.open span:first-child{transform:rotate(45deg) translate(8px,8px)}.hamburger-btn.open span:nth-child(2){opacity:0;transform:translateX(-20px)}.hamburger-btn.open span:nth-child(3){transform:rotate(-45deg) translate(8px,-8px)}.sidebar-overlay{animation:fadeIn .3s ease forwards;background:#00000080;bottom:0;display:none;left:0;opacity:0;position:fixed;right:0;top:0;z-index:999}@keyframes fadeIn{to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.sidebar{background:#fff;border-right:1px solid #e2e8f0;box-shadow:2px 0 10px #0000000d;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:260px;z-index:100}.sidebar-header{border-bottom:1px solid #e2e8f0;padding:1.5rem}.logo{align-items:center;display:flex;gap:.75rem}.logo-icon{font-size:2rem;line-height:1}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700}.sidebar-nav{flex:1 1;overflow-y:auto;padding:1rem 0}.nav-item{align-items:center;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:.75rem;margin:.25rem .75rem;padding:.875rem 1.5rem;position:relative;transition:all .2s}.nav-item:hover{background:#f7fafc;color:#667eea;transform:translateX(3px)}.nav-item.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 6px #667eea40;color:#fff}.nav-item.active:hover{transform:translateX(0)}.nav-item.coming-soon{opacity:.6}.nav-item.coming-soon:hover{background:#f7fafc;color:#718096;transform:translateX(0)}.nav-icon{font-size:1.25rem;line-height:1;min-width:24px;text-align:center}.nav-label{font-size:.95rem}.soon-badge{background:#edf2f7;border-radius:4px;color:#718096;font-size:.7rem;font-weight:600;margin-left:auto;padding:.2rem .5rem}.sidebar-footer{border-top:1px solid #e2e8f0;padding:1rem}.user-profile{align-items:center;background:#f7fafc;border-radius:8px;display:flex;gap:.75rem;margin-bottom:.75rem;padding:.75rem}.user-avatar{font-size:1.1rem;height:40px;width:40px}.user-info{flex:1 1;min-width:0}.user-name{color:#2d3748;font-size:.9rem;font-weight:600}.user-name,.user-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{color:#718096;font-size:.8rem}.logout-btn{align-items:center;background:#e53e3e;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:background .3s;width:100%}.logout-btn:hover{background:#c53030}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#0000}.sidebar-nav::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#a0aec0}@media (max-width:767px){.hamburger-btn{display:flex}.sidebar-overlay{display:block}.sidebar{transform:translateX(-100%);transition:transform .3s ease;width:280px;z-index:1000}.sidebar.mobile-open{box-shadow:5px 0 20px #0000004d;transform:translateX(0)}.sidebar-header{padding:1.25rem}.logo{justify-content:flex-start}.logo-text{display:block}.logo-icon{font-size:1.75rem}.nav-item{gap:.75rem;justify-content:flex-start;margin:.25rem .75rem;padding:.875rem 1.25rem}.nav-label,.soon-badge{display:block}.nav-icon{font-size:1.25rem}.user-profile{flex-direction:row;justify-content:flex-start;padding:.75rem}.user-info{display:block}.user-avatar{font-size:1rem;height:40px;width:40px}.logout-btn{font-size:.9rem;gap:.5rem;padding:.75rem}.logout-btn:before{content:none}}@media (min-width:768px) and (max-width:1024px){.sidebar{width:260px}.sidebar-header{padding:1.25rem}.logo-icon{font-size:1.9rem}.logo-text{font-size:1.2rem}.nav-item{margin:.25rem .65rem;padding:.8rem 1.25rem}.nav-icon{font-size:1.2rem}.nav-label{font-size:.9rem}.user-avatar{font-size:1.05rem;height:38px;width:38px}.user-name{font-size:.875rem}.user-role{font-size:.75rem}.logout-btn{font-size:.875rem;padding:.7rem}}@media (min-width:1025px) and (max-width:1366px){.sidebar{width:260px}.nav-item{padding:.85rem 1.4rem}}@media (min-width:1367px){.sidebar{width:280px}.sidebar-header{padding:1.75rem}.logo-icon{font-size:2.1rem}.logo-text{font-size:1.3rem}.nav-item{margin:.3rem .8rem;padding:.95rem 1.6rem}.nav-icon{font-size:1.3rem}.nav-label{font-size:1rem}.user-avatar{font-size:1.15rem;height:42px;width:42px}.logout-btn{font-size:.95rem;padding:.85rem}}@media (max-height:600px) and (orientation:landscape){.sidebar-header{padding:.75rem}.logo-icon{font-size:1.5rem}.nav-item{margin:.15rem .65rem;padding:.65rem 1.25rem}.user-profile{margin-bottom:.5rem;padding:.5rem}.user-avatar{font-size:.95rem;height:34px;width:34px}.logout-btn{font-size:.85rem;padding:.6rem}.sidebar-nav{padding:.5rem 0}}@media (hover:none) and (pointer:coarse){.nav-item{padding:1rem 1.5rem}.logout-btn,.nav-item{min-height:44px}.nav-item:active{background:#e2e8f0}.logout-btn:active{background:#a72c2c}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.logo-text,.nav-label,.user-name,.user-role{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}.manager-assignment-modal{max-height:85vh;max-width:700px;overflow-y:auto}.project-info-section{background:#f8f9fa;border-radius:8px;margin-bottom:24px;padding:16px}.project-info-section h3{color:#2c3e50;font-size:18px;margin:0 0 4px}.project-info-section .project-number{color:#666;font-size:14px;margin:0}.section{margin-bottom:32px}.section h4{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.assigned-managers-list,.available-managers-list{display:flex;flex-direction:column;gap:12px}.manager-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:16px;transition:all .2s}.manager-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.manager-item.assigned{background:#f0f4ff;border-color:#667eea}.manager-info{flex:1 1;gap:12px}.manager-icon,.manager-info{align-items:center;display:flex}.manager-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;font-size:20px;height:40px;justify-content:center;width:40px}.manager-name{color:#2c3e50;font-size:15px;font-weight:600;margin-bottom:2px}.manager-email{color:#666;font-size:13px;margin-bottom:4px}.manager-meta{color:#999;font-size:12px;font-style:italic}.btn-assign,.btn-remove{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s}.btn-assign{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-assign:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-remove{background:#fff;border:1px solid #e74c3c;color:#e74c3c}.btn-remove:hover{background:#e74c3c;box-shadow:0 4px 12px #e74c3c4d;color:#fff;transform:translateY(-2px)}.empty-state-small{background:#f8f9fa;border:1px dashed #dee2e6;border-radius:8px;color:#999;font-size:14px;padding:24px;text-align:center}.alert{border-radius:6px;margin-bottom:16px}.alert-error{background:#fee;border:1px solid #fcc;color:#c33}.alert-success{background:#efe;border:1px solid #cfc;color:#3c3}.dashboard{background:#f7fafc}.main-content{padding:2rem}.page-title{color:#2d3748;font-size:1.75rem;font-weight:700;margin-bottom:1.5rem}.loading{font-size:1.1rem;padding:3rem}.error-message{border-left:4px solid #e53e3e;padding:1rem}@media (max-width:480px){.main-content{margin-left:0;padding:4.5rem 10px 10px}.page-title{font-size:1.25rem;margin-bottom:1rem}.loading{font-size:1rem;padding:2rem}.error-message{font-size:.9rem;padding:.75rem}}@media (min-width:481px) and (max-width:767px){.main-content{margin-left:0;padding:4.5rem 15px 15px}.page-title{font-size:1.4rem;margin-bottom:1.25rem}.loading{font-size:1.05rem;padding:2.5rem}}@media (min-width:768px) and (max-width:1024px){.main-content{margin-left:260px;padding:1.5rem}.page-title{font-size:1.6rem;margin-bottom:1.35rem}}@media (min-width:1025px) and (max-width:1366px){.main-content{margin-left:260px;padding:1.75rem}.page-title{font-size:1.7rem}}@media (min-width:1367px){.main-content{margin-left:280px;max-width:1600px;padding:2rem}.page-title{font-size:1.75rem}}@media (hover:none) and (pointer:coarse){.main-content{-webkit-overflow-scrolling:touch}}.payments-dashboard{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;min-height:100vh;overflow-x:hidden;width:100%}.dashboard-content{padding-bottom:3rem}@media (max-width:768px){.dashboard-content{margin-left:0;padding-top:4.5rem}}.error-container,.loading-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;justify-content:center;min-height:100vh}.spinner{border:4px solid #ffffff4d;border-top-color:#fff;height:50px;width:50px}.loading-container p{color:#fff;font-size:1.1rem;margin-top:1rem}.error-message{color:#fff;font-size:1.2rem;margin-bottom:1rem}.retry-button{background:#fff;border:none;border-radius:8px;color:#667eea;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem}.dashboard-header{background:#fff;box-shadow:0 2px 10px #0000001a;padding:1.5rem 1rem}.header-content{margin:0 auto;max-width:100%}.header-left h1{color:#2d3748;font-size:1.8rem;margin:0}.header-subtitle{color:#718096;font-size:.95rem;margin:.25rem 0 0}.stats-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin:2rem auto;max-width:100%;padding:0 1rem}@media (max-width:767px) and (min-width:480px){.stats-container{gap:1rem;grid-template-columns:repeat(2,1fr)}}@media (max-width:479px){.stats-container{gap:1rem;grid-template-columns:1fr}}.stat-card{box-shadow:0 2px 6px #00000014;gap:1rem;min-height:85px;padding:1rem;transition:transform .3s,box-shadow .3s}.stat-card:hover{box-shadow:0 4px 10px #0000001f}.stat-icon{font-size:2.2rem;line-height:1}.stat-content h3{color:#718096;font-size:.75rem;font-weight:600;letter-spacing:.3px;margin:0 0 .3rem;text-transform:uppercase}.stat-amount{color:#2d3748;font-size:1.4rem;font-weight:700;line-height:1.1;margin:0}.stat-label{color:#a0aec0;font-size:.85rem}.stat-revenue .stat-amount{color:#38a169}.stat-pending .stat-amount{color:#ed8936}.stat-overdue .stat-amount{color:#e53e3e}.stat-ok .stat-amount{color:#38a169}.stat-monthly .stat-amount{color:#667eea}.section{margin:2rem auto;max-width:100%;padding:0 1rem}.section-title{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.table-container{border-radius:12px;box-shadow:0 4px 6px #0000001a}.clients-table thead{background:#f7fafc}.clients-table th{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:.9rem;padding:1rem}.clients-table td{border-bottom:1px solid #e2e8f0;padding:1rem}.clients-table tbody tr:hover{background:#f7fafc}.client-name{color:#2d3748;font-weight:600}.amount-paid{color:#38a169;font-weight:600}.amount-pending{color:#ed8936;font-weight:600}.amount-total{color:#2d3748;font-weight:700}.progress-container{background:#e2e8f0;border-radius:12px;height:24px;overflow:hidden;position:relative;width:100%}.progress-bar{background:linear-gradient(90deg,#38a169,#48bb78);height:100%;transition:width .5s ease}.progress-text{color:#2d3748;font-size:.75rem;font-weight:600;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.payment-category{margin-bottom:2.5rem}.category-title{color:#fff;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.payments-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.payment-card{background:#fff;border-left:4px solid #cbd5e0;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:1.5rem;transition:transform .3s,box-shadow .3s}.payment-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-3px)}.overdue-card{border-left-color:#e53e3e}.today-card{border-left-color:#ed8936}.soon-card{border-left-color:#ecc94b}.upcoming-card{border-left-color:#667eea}.payment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.project-number{font-weight:600}.overdue-badge{background:#e53e3e}.overdue-badge,.today-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .75rem}.today-badge{background:#ed8936}.soon-badge{background:#ecc94b;color:#2d3748}.soon-badge,.upcoming-badge{border-radius:12px;font-size:.75rem;font-weight:700;padding:.25rem .75rem}.upcoming-badge{background:#667eea;color:#fff}.payment-phase{color:#2d3748;font-size:1.1rem;font-weight:700;margin:.5rem 0}.project-name{color:#4a5568;font-size:.9rem;margin:.25rem 0}.client-name-sm{color:#718096;font-size:.85rem;margin:.25rem 0}.payment-amount{color:#2d3748;font-size:1.5rem;font-weight:700;margin:1rem 0 .5rem}.payment-due{color:#718096;font-size:.85rem;margin-bottom:1rem}.btn-mark-paid{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem;transition:background .3s;width:100%}.btn-mark-paid:hover{background:#5568d3}.no-payments{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:3rem;text-align:center}.no-payments-icon{font-size:4rem;margin-bottom:1rem}.no-payments h3{color:#2d3748;font-size:1.5rem;margin:0 0 .5rem}.no-payments p{color:#718096;margin:0}.modal-overlay{padding:1rem}.modal-content{box-shadow:0 20px 25px -5px #0000004d;max-width:500px}.modal-header{padding:1.5rem}.modal-header h2{font-size:1.5rem}.modal-close{background:none;color:#a0aec0;font-size:2rem}.modal-close:hover{color:#718096}.modal-body{padding:1.5rem}.payment-details{background:#f7fafc;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.payment-details h3{color:#2d3748;font-size:1.25rem;margin:0 0 .5rem}.modal-project{color:#4a5568;font-size:.95rem;margin:.25rem 0}.modal-client{color:#718096;font-size:.9rem;margin:.25rem 0 1rem}.modal-amount{color:#667eea;font-size:2rem;font-weight:700}.form-group{margin-bottom:1.25rem}.form-group label{font-size:.95rem;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:2px solid #e2e8f0;font-size:.95rem;padding:.75rem}.modal-actions{gap:1rem;margin-top:2rem}.btn-cancel{background:#e2e8f0;border:none;color:#2d3748;flex:1 1;font-size:1rem;padding:.875rem;transition:background .3s}.btn-cancel:hover{background:#cbd5e0}.btn-confirm{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:2 1;font-size:1rem;font-weight:600;padding:.875rem;transition:background .3s}.btn-confirm:hover:not(:disabled){background:#5568d3}.btn-confirm:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.dashboard-content{margin-left:0;padding:4.5rem 10px 20px}.dashboard-header{padding:1rem 10px}.header-content{flex-direction:column;gap:1rem;padding:0}.header-left h1{font-size:1.5rem}.header-subtitle{font-size:.85rem}.header-right{flex-wrap:wrap;justify-content:center}.stats-container{gap:1rem;grid-template-columns:1fr;margin:1rem auto;padding:0 10px}.stat-card{padding:1rem}.stat-icon{font-size:2.5rem}.stat-amount{font-size:1.5rem}.section{margin:1.5rem auto;padding:0 10px}.section-title{font-size:1.25rem;margin-bottom:1rem}.payments-grid{grid-template-columns:1fr}.table-container{-webkit-overflow-scrolling:touch;border-radius:8px;margin:0;overflow-x:auto}.clients-table{font-size:.85rem;min-width:600px}.clients-table td,.clients-table th{padding:.75rem .5rem;white-space:nowrap}}.project-info{display:flex;flex-direction:column;gap:.25rem}.project-info strong{color:#2d3748;font-weight:600}.project-number{color:#718096;font-size:.85rem}.amount-budget{color:#4a5568;font-weight:600}.phases-count{font-weight:600;text-align:center}.status-badge{font-size:.85rem;min-width:80px;padding:.35rem .75rem;text-align:center}.status-paid{background-color:#c6f6d5;color:#22543d}.status-partial{background-color:#fef5e7;color:#b7791f}.status-pending{background-color:#fed7d7;color:#742a2a}@media (max-width:1200px){.project-info{min-width:150px}}.clients-dashboard{background:#f5f7fa;display:flex;min-height:100vh;overflow-x:hidden;width:100%}.dashboard-content{flex:1 1;margin-left:260px;max-width:100%;overflow-x:hidden;padding:30px;transition:margin-left .3s ease}.dashboard-header h1{color:#2d3748;font-weight:700;margin:0 0 5px}.dashboard-header p{color:#718096;font-size:14px;margin:0}.btn-add{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 12px #667eea4d;padding:12px 24px;transition:transform .2s,box-shadow .2s}.btn-add:hover{box-shadow:0 6px 16px #667eea66}.stat-card{box-shadow:0 2px 8px #0000000d}.stat-card:hover{box-shadow:0 4px 12px #0000001a}.stat-icon{background:linear-gradient(135deg,#667eea,#764ba2);font-size:28px}.stat-info h3{color:#2d3748;font-size:22px;font-weight:700;line-height:1.1;margin:0 0 4px}.stat-info p{color:#718096;font-size:11px;font-weight:600;letter-spacing:.3px;margin:0;text-transform:uppercase}.filters-section{gap:12px}.search-input{border:1px solid #e2e8f0;transition:border-color .2s,box-shadow .2s}@media (max-width:768px){.search-input{flex:none;min-width:100%}}.search-input:focus{box-shadow:0 0 0 3px #667eea1a}.filter-select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 16px;transition:border-color .2s}.clients-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.clients-table{border-collapse:collapse;width:100%}.clients-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.clients-table th{font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.clients-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.clients-table tbody tr:hover{background-color:#f7fafc}.clients-table tbody tr:last-child{border-bottom:none}.clients-table td{color:#4a5568;font-size:14px;padding:16px}.company-cell{display:flex;flex-direction:column;gap:4px}.company-cell strong{color:#2d3748;font-weight:600}.company-cell small{color:#a0aec0;font-size:12px}.projects-cell{font-weight:500}.tier-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.tier-platinum{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca}.tier-gold{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.tier-silver{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569}.tier-bronze{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#9a3412}.btn-delete,.btn-edit{background:none;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:4px 8px;transition:background-color .2s}.btn-edit:hover{background-color:#e6f3ff}.btn-delete:hover{background-color:#ffe6e6}.no-data{padding:40px!important}.modal-header h2{color:#2d3748}.close-btn{color:#a0aec0;font-size:32px;transition:background-color .2s}.close-btn:hover{background-color:#f7fafc}form{padding:24px}.form-grid{grid-gap:24px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}.form-section h3{padding-bottom:8px}.form-section input,.form-section select,.form-section textarea{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:14px;margin-bottom:12px;padding:12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-section input:focus,.form-section select:focus,.form-section textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-section textarea{font-family:inherit;resize:vertical}.modal-footer{padding:0 24px 24px}.btn-cancel{border:1px solid #e2e8f0;font-size:14px;padding:12px 24px;transition:background-color .2s}.btn-cancel:hover{background-color:#f7fafc}.btn-submit{font-size:14px;padding:12px 24px;transition:transform .2s,box-shadow .2s}.btn-submit:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.loading{font-size:18px}@media (max-width:768px){.dashboard-content{margin-left:0;padding:4.5rem 10px 20px}.stats-grid{gap:1rem;grid-template-columns:1fr}.stat-card{padding:1rem}.dashboard-header{align-items:flex-start;flex-direction:column;gap:16px;padding:1rem 0}.page-title{font-size:1.5rem}.page-subtitle{font-size:.85rem}.filters-section{flex-direction:column;gap:1rem}.filter-select,.search-input{font-size:14px;min-width:100%}.clients-table-container{-webkit-overflow-scrolling:touch;border-radius:8px;margin:0;overflow-x:auto}.clients-table{font-size:.85rem;min-width:700px}.clients-table td,.clients-table th{padding:.75rem .5rem;white-space:nowrap}.form-grid{grid-template-columns:1fr}.btn-primary,.btn-secondary{padding:12px;width:100%}}.tasks-dashboard{background-color:#f4f6f9;min-height:100vh;padding:30px}.btn-primary{font-size:16px;padding:12px 24px;transition:all .3s ease}.stat-card.todo{border-left:4px solid #3498db}.stat-card.inprogress{border-left:4px solid #f39c12}.stat-card.completed{border-left:4px solid #27ae60}.stat-card.urgent{border-left:4px solid #e74c3c}.stat-card.overdue{border-left:4px solid #c0392b}.filters-section{align-items:center;gap:15px}.search-input{flex:1 1;min-width:250px}.filters-section select,.search-input{border:2px solid #e0e0e0;border-radius:8px;font-size:15px;padding:12px 16px;transition:border-color .3s ease}.filters-section select{background:#fff;cursor:pointer}.filters-section select:focus{border-color:#667eea;outline:none}.btn-clear-filters{background:#e74c3c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:background .3s ease}.btn-clear-filters:hover{background:#c0392b}.tasks-list{grid-gap:20px;display:grid;gap:20px}.task-card{background:#fff;border-left:4px solid #0000;border-radius:12px;box-shadow:0 2px 10px #00000014;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.task-card:hover{box-shadow:0 5px 20px #00000026;transform:translateX(5px)}.task-card.overdue{background:#fef5f5;border-left:4px solid #e74c3c}.task-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:15px}.task-header h3{color:#2c3e50;flex:1 1;font-size:20px;margin:0;transition:color .3s ease}.task-header h3:hover{color:#667eea}.task-badges{display:flex;gap:10px}.badge{border-radius:20px}.priority-urgent{background:#fee;border:1px solid #e74c3c;color:#e74c3c}.priority-high{background:#fff3e0;border:1px solid #f39c12;color:#f39c12}.priority-medium{background:#e3f2fd;border:1px solid #3498db;color:#3498db}.priority-low{background:#f1f8f4;border:1px solid #27ae60;color:#27ae60}.status-todo{background:#f5f5f5;border:1px solid #bdc3c7;color:#7f8c8d}.status-inprogress{background:#fff3e0;border:1px solid #f39c12;color:#f39c12}.status-inreview{background:#e3f2fd;border:1px solid #2196f3;color:#2196f3}.status-completed{background:#f1f8f4;border:1px solid #27ae60;color:#27ae60}.status-cancelled{background:#fee;border:1px solid #e74c3c;color:#e74c3c}.status-blocked{background:#fff3e0;border:1px solid #f39c12;color:#f39c12}.task-description{color:#555;line-height:1.6;margin:15px 0}.task-meta{border-bottom:1px solid #ecf0f1;border-top:1px solid #ecf0f1;display:flex;flex-wrap:wrap;gap:20px;margin:15px 0;padding:15px 0}.meta-item{align-items:center;color:#7f8c8d;display:flex;font-size:14px;gap:6px}.overdue-text{color:#e74c3c;font-weight:600}.task-actions{display:flex;gap:10px;margin-top:15px}.status-dropdown{background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .3s ease}.status-dropdown:focus{border-color:#667eea;outline:none}.btn-cancel,.btn-delete,.btn-edit,.btn-submit,.btn-view{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.btn-view{background:#3498db;color:#fff}.btn-view:hover{background:#2980b9}.btn-edit{background:#f39c12;color:#fff}.btn-edit:hover{background:#e67e22}.btn-delete{background:#e74c3c;color:#fff}.btn-delete:hover{background:#c0392b}.btn-accept{background:#27ae60;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .3s}.btn-accept:hover{background:#229954}.btn-reject{background:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .3s}.btn-reject:hover{background:#c0392b}.btn-pause{background:#f39c12;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .3s}.btn-pause:hover{background:#e67e22}.btn-resume{background:#27ae60;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .3s}.btn-resume:hover{background:#229954}.no-tasks{background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;padding:60px 20px;text-align:center}.no-tasks p{color:#7f8c8d;font-size:18px}.modal-large{max-width:900px}.task-details{padding:25px}.details-badges{display:flex;gap:10px;margin-bottom:20px}.detail-section{margin-bottom:25px}.detail-section h4{color:#2c3e50;font-size:16px;margin:0 0 10px}.detail-section p{color:#555;line-height:1.6;margin:0}.detail-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:25px}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-item strong{color:#7f8c8d;font-size:13px;font-weight:600;text-transform:uppercase}.detail-item span{color:#2c3e50;font-size:15px}.comments-section{border-top:2px solid #ecf0f1;margin-top:30px;padding-top:25px}.comments-section h4{color:#2c3e50;font-size:18px;margin:0 0 20px}.add-comment{margin-bottom:25px}.add-comment textarea{border:2px solid #e0e0e0;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:15px;margin-bottom:10px;padding:12px;width:100%}.add-comment textarea:focus{border-color:#667eea;outline:none}.comments-list{max-height:300px;overflow-y:auto}.comment{background:#f8f9fa;border-radius:8px;margin-bottom:15px;padding:15px}.comment-header{display:flex;justify-content:space-between;margin-bottom:10px}.comment-header strong{color:#2c3e50;font-size:14px}.comment-date{color:#95a5a6;font-size:12px}.comment p{color:#555;font-size:14px;line-height:1.6;margin:0}.no-comments{color:#95a5a6;font-style:italic;padding:30px;text-align:center}@media (max-width:768px){.tasks-dashboard{padding:4.5rem 10px 15px}.dashboard-header{align-items:stretch;flex-direction:column;gap:15px;padding:1rem 10px}.page-title{font-size:1.5rem}.stats-grid{gap:1rem;grid-template-columns:1fr}.stat-card{padding:1rem}.filters-section{align-items:stretch;flex-direction:column;gap:1rem;padding:1rem 10px}.search-input{font-size:14px;min-width:0;min-width:auto}.tasks-table-container{-webkit-overflow-scrolling:touch;margin:0 -10px;overflow-x:auto;padding:0 10px}.tasks-table{font-size:.85rem}.tasks-table td,.tasks-table th{padding:.75rem .5rem}.form-row{grid-template-columns:1fr}.task-meta{gap:10px}.task-actions,.task-meta{flex-direction:column}.modal-content{margin:10px}.detail-grid{grid-template-columns:1fr}}.reject-modal .modal-content{max-width:500px}.reject-modal textarea{font-family:inherit;resize:vertical}.reject-modal .modal-body p{margin:0 0 15px}.dashboard{background:#f5f7fa}.stat-card{transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 12px #0000001f}.stat-content{flex:1 1}.stat-value{font-size:22px}.filters-section{box-shadow:0 2px 8px #0000001a;gap:16px;margin-bottom:24px}.filter-group{flex:1 1;min-width:200px}.filter-input,.filter-select{border:1px solid #e2e8f0;border-radius:8px;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.filter-input:focus,.filter-select:focus{border-color:#4299e1;outline:none}.leads-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.leads-table{border-collapse:collapse;width:100%}.leads-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.leads-table th{font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.leads-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s}.leads-table tbody tr:hover{background-color:#f7fafc}.leads-table td{color:#2d3748;font-size:14px;padding:16px}.lead-name{color:#1a202c;font-weight:600}.contact-info .phone,.lead-number{color:#718096;font-size:12px;margin-top:2px}.score-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:13px;font-weight:600;padding:4px 12px}.badge,.score-badge{display:inline-block}.badge{letter-spacing:.5px;text-transform:uppercase}.badge-info{background-color:#e0f2fe;color:#0284c7}.badge-primary{background-color:#dbeafe;color:#2563eb}.badge-success{background-color:#dcfce7;color:#16a34a}.badge-warning{background-color:#fef3c7;color:#ca8a04}.badge-danger{background-color:#fee2e2;color:#dc2626}.btn-icon{background:#f7fafc;border-radius:6px;font-size:16px;padding:6px 10px;transition:all .2s}.btn-icon:hover{background:#e2e8f0}.btn-icon.btn-success:hover{background:#dcfce7}.btn-icon.btn-danger:hover{background:#fee2e2}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state-text{color:#718096;font-size:18px}.modal-overlay{background-color:#00000080}.modal-content.modal-large{max-width:900px}.modal-header h2{font-weight:700}.close-btn{background:none;border-radius:6px;color:#718096;font-size:28px;height:32px;transition:all .2s;width:32px}.close-btn:hover{background:#f7fafc;color:#2d3748}.modal-footer{border-top:1px solid #e2e8f0}.form-grid{display:flex;flex-direction:column;gap:24px}.form-section{border:1px solid #e2e8f0;border-radius:8px;padding:20px}.form-section h3{color:#1a202c;font-size:16px;font-weight:600;margin:0 0 16px}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-row:last-child{margin-bottom:0}.form-group label{color:#4a5568;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{border:1px solid #e2e8f0;padding:10px 14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4299e1}.lead-details{display:flex;flex-direction:column;gap:24px}.details-section{border:1px solid #e2e8f0;border-radius:8px;padding:20px}.details-section h3{color:#1a202c;font-size:16px;font-weight:600;margin:0 0 16px}.detail-row{border-bottom:1px solid #f7fafc;padding:10px 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#4a5568;font-weight:600}.activities-list,.notes-list{display:flex;flex-direction:column;gap:12px}.activity-item,.note-item{background:#f7fafc;border-left:3px solid #667eea;border-radius:8px;padding:12px}.activity-type{background:#667eea;border-radius:4px;color:#fff;display:inline-block;font-size:11px;font-weight:600;margin-bottom:6px;padding:2px 8px;text-transform:uppercase}.activity-subject{color:#1a202c;font-weight:600;margin-bottom:4px}.activity-meta,.note-meta{color:#718096;font-size:12px}.note-text{color:#2d3748;line-height:1.5;margin-bottom:6px}.btn-primary{border:none;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 20px;transition:transform .2s,box-shadow .2s}.btn-primary:hover{box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#e2e8f0;border:none;border-radius:8px;color:#2d3748;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.btn-secondary:hover{background:#cbd5e0}.btn-success{background:linear-gradient(135deg,#43e97b,#38f9d7);border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:transform .2s,box-shadow .2s}.btn-success:hover{box-shadow:0 4px 12px #43e97b66;transform:translateY(-2px)}.alert{align-items:center;justify-content:space-between;padding:14px 20px}.alert button{background:none;border:none;color:inherit;cursor:pointer;font-size:20px;opacity:.7;transition:opacity .2s}.alert button:hover{opacity:1}.alert-error{background-color:#fee2e2;color:#dc2626}.alert-success{background-color:#dcfce7;border:1px solid #bbf7d0;color:#16a34a}@media (max-width:768px){.dashboard{overflow-x:hidden}.main-content{margin-left:0;padding:4.5rem 10px 20px}.page-header{gap:12px;padding:1rem 0}.page-title{font-size:1.5rem}.stats-grid{gap:1rem;grid-template-columns:1fr}.stat-card{padding:1rem}.stat-icon{height:50px;width:50px}.stat-icon,.stat-value{font-size:1.5rem}.filters-section{flex-direction:column;gap:1rem;overflow-x:hidden;padding:1rem}.filter-group{flex:none;min-width:100%}.filter-group input,.filter-group select{font-size:14px}.leads-table-container{-webkit-overflow-scrolling:touch;border-radius:8px;margin:0;overflow-x:auto}.leads-table{font-size:.85rem;min-width:800px}.leads-table td,.leads-table th{padding:.75rem .5rem;white-space:nowrap}.modal-content{max-width:95%;padding:1.5rem 1rem}.form-row{grid-template-columns:1fr}}.create-user-modal{max-width:900px}.alert{align-items:flex-start;display:flex;gap:12px;padding:14px 16px}.alert-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-info{background:#dbeafe;border:1px solid #bfdbfe;color:#1e40af}.alert-info strong{display:block;margin-bottom:4px}.form-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.form-section{display:flex;flex-direction:column;gap:16px}.section-title{align-items:center;color:#1a202c;display:flex;font-size:16px;font-weight:700;gap:4px;margin:0 0 4px}.section-description{color:#6b7280;font-size:13px;line-height:1.5;margin:0 0 12px}.required{color:#dc2626}.form-group{gap:6px}.form-label{align-items:center;color:#374151;display:flex;font-size:14px;font-weight:600;gap:4px}.form-input{border:1px solid #d1d5db;border-radius:6px;color:#1f2937;font-size:14px;padding:10px 14px;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-input:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.help-text{color:#6b7280;font-size:12px;margin-top:4px}.checkbox-label{color:#374151;font-size:14px;font-weight:500;gap:8px}.form-checkbox{accent-color:#667eea;cursor:pointer;height:18px;width:18px}.roles-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr;max-height:400px;overflow-y:auto;padding:2px}.role-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:14px;transition:all .2s}.role-card:hover{background:#f8faff;border-color:#c7d2fe}.role-card.role-selected{background:#f5f7ff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.role-card.role-disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.role-card.role-disabled:hover{background:#f9fafb;border-color:#e5e7eb}.role-card.role-disabled .form-checkbox{cursor:not-allowed}.role-card-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.role-description{color:#6b7280;font-size:12px;line-height:1.4;margin:0;padding-left:28px}.selected-roles-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:16px;padding:14px}.selected-roles-summary strong{color:#374151;display:block;font-size:13px;margin-bottom:10px}.selected-roles-summary .roles-container{display:flex;flex-wrap:wrap;gap:6px}.btn-sm{font-size:13px;padding:6px 12px}.spinner-small{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;margin-right:8px;width:16px}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.create-user-modal{margin:0;max-width:100%}.roles-grid{max-height:300px}}.roles-grid::-webkit-scrollbar{width:8px}.roles-grid::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.roles-grid::-webkit-scrollbar-thumb{background:#c7d2fe;border-radius:4px}.roles-grid::-webkit-scrollbar-thumb:hover{background:#a5b4fc}.dashboard{background:linear-gradient(135deg,#f5f7fa,#e9ecef)}.main-content{flex:1 1;margin-left:260px;max-width:100%;overflow-x:hidden;padding:30px;transition:margin-left .3s ease}.page-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;display:flex;justify-content:space-between;margin-bottom:35px;padding:25px}.page-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:32px;font-weight:800;margin:0}.page-subtitle{color:#718096;font-size:14px;font-weight:500;margin:8px 0 0}.stats-grid{max-width:100%}.stat-card{border:1px solid #fffc;box-shadow:0 4px 20px #0000000f;gap:14px;overflow:hidden;padding:16px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.stat-card:hover{box-shadow:0 12px 30px #667eea33;transform:translateY(-5px)}.stat-card:hover:before{transform:scaleX(1)}.stat-icon{align-items:center;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;transition:transform .3s ease;width:48px}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(5deg)}.stat-details{flex:1 1}.stat-value{color:#1a202c;font-size:24px;font-weight:800;line-height:1.1;margin-bottom:4px}.stat-label{color:#718096;font-size:11px;font-weight:600;letter-spacing:.3px;margin-top:2px;text-transform:uppercase}.filters-section{border-radius:16px;box-shadow:0 4px 20px #0000000f;display:flex;flex-wrap:wrap;gap:14px;margin-bottom:28px}.search-box{flex:1 1;min-width:250px;position:relative}.search-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:18px;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.search-input{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;font-size:14px;padding:14px 16px 14px 46px;transition:all .3s ease;width:100%}.search-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;outline:none}.filter-select{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;min-width:160px;padding:14px 18px;transition:all .3s ease}.filter-select:focus{box-shadow:0 0 0 4px #667eea1a;outline:none}.filter-select:focus,.filter-select:hover{background:#fff;border-color:#667eea}.table-container{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 4px 20px #0000000f;overflow:hidden}.data-table{border-collapse:collapse;width:100%}.data-table thead{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:none}.data-table th{color:#fff;font-size:12px;font-weight:700;letter-spacing:1px;padding:18px 20px;text-align:left;text-transform:uppercase}.data-table tbody tr{border-bottom:1px solid #f3f4f6;transition:all .3s ease}.data-table tbody tr:hover{background:linear-gradient(90deg,#667eea0d,#764ba20d);transform:scale(1.01)}.data-table tbody tr:last-child{border-bottom:none}.data-table td{color:#374151;font-size:14px;padding:20px}.user-info{gap:12px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #667eea4d;color:#fff;flex-shrink:0;font-size:18px;font-weight:700;height:48px;justify-content:center;width:48px}.user-name{color:#1a202c;font-size:15px;font-weight:700;margin-bottom:4px}.user-email{color:#9ca3af;font-size:13px;font-weight:500}.roles-container{display:flex;flex-wrap:wrap;gap:6px}.role-badge{border-radius:20px;box-shadow:0 2px 8px #00000026;color:#fff;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase;white-space:nowrap}.role-badge.super_admin,.role-badge[style*=super_admin]{background:linear-gradient(135deg,#dc2626,#991b1b);box-shadow:0 2px 8px #dc262666}.role-badge.management,.role-badge[style*=management]{background:linear-gradient(135deg,#7c3aed,#5b21b6);box-shadow:0 2px 8px #7c3aed66}.role-badge.developer,.role-badge[style*=developer]{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 2px 8px #2563eb66}.role-badge.ui_ux_designer,.role-badge[style*=ui_ux_designer]{background:linear-gradient(135deg,#ec4899,#be185d);box-shadow:0 2px 8px #ec489966}.role-badge.qa_tester,.role-badge[style*=qa_tester]{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b66}.role-badge.accountant,.role-badge[style*=accountant]{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 2px 8px #05966966}.role-badge.marketing,.role-badge[style*=marketing]{background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 2px 8px #8b5cf666}.role-badge.hr,.role-badge[style*=hr]{background:linear-gradient(135deg,#14b8a6,#0d9488);box-shadow:0 2px 8px #14b8a666}.role-badge.sales,.role-badge[style*=sales]{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b98166}.status-badge{border-radius:20px;display:inline-block;font-size:13px;padding:6px 12px;white-space:nowrap}.status-active{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d;color:#fff}.status-inactive{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 8px #ef44444d;color:#fff}.action-buttons{display:flex;gap:8px}.btn-icon{background:#0000;border:none;border-radius:8px;padding:8px;transition:all .3s ease}.btn-icon:hover{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.results-footer{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;color:#6b7280;font-size:14px;margin-top:16px;padding:16px;text-align:center}.text-muted{color:#9ca3af;font-style:italic}.modal-content{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:900px}.modal-header{border-bottom:1px solid #e5e7eb}.modal-header h3{color:#1a202c;font-size:20px;font-weight:700;margin:0}.modal-close{background:#0000;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;font-size:28px;height:32px;line-height:1;padding:0;transition:background-color .2s;width:32px}.modal-close:hover{background:#f3f4f6;color:#374151}.modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;justify-content:center;padding:10px 20px;transition:all .2s}.btn-primary{font-weight:600;letter-spacing:.3px}.btn-primary:hover{background:linear-gradient(135deg,#5568d3,#6a3f8f);box-shadow:0 8px 25px #667eea80}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover{background:#d1d5db}.loading-state{background:#fff;border-radius:12px;padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:48px;margin:0 auto 20px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.empty-state{background:#fff;border-radius:12px;color:#6b7280;padding:60px 20px}.empty-state p{margin:0 0 20px}@media (max-width:768px){.dashboard{overflow-x:hidden}.main-content{margin-left:0;padding:4.5rem 10px 20px}.page-header{padding:1rem 0}.page-title{font-size:1.5rem}.page-subtitle{font-size:.85rem}.page-header{align-items:flex-start;flex-direction:column;gap:16px}.stats-grid{gap:1rem;grid-template-columns:1fr}.stat-card{padding:1rem}.filters-section{flex-direction:column;overflow-x:hidden;padding:1rem}.search-box{min-width:100%;width:100%}.search-input{font-size:14px}.filter-select{font-size:14px;min-width:100%;width:100%}.table-container{-webkit-overflow-scrolling:touch;border-radius:8px;margin:0;overflow-x:auto}.data-table{font-size:.85rem;min-width:800px}.data-table td,.data-table th{padding:.75rem .5rem;white-space:nowrap}}.dashboard{background:#f4f6f9;display:flex;width:100%}.dashboard,.timesheet-dashboard{min-height:100vh;overflow-x:hidden}.timesheet-dashboard{background-color:#f4f6f9;flex:1 1;margin-left:260px;max-width:100%;padding:30px;transition:margin-left .3s ease}.dashboard-header h1{color:#2c3e50;font-size:32px;margin:0}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:30px}@media (max-width:767px) and (min-width:480px){.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}}@media (max-width:479px){.stats-grid{gap:12px;grid-template-columns:1fr}}.stat-card{align-items:center;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:16px;min-height:80px;padding:18px;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{box-shadow:0 4px 14px #0000001f;transform:translateY(-3px)}.stat-icon{font-size:32px}.stat-content h3{color:#2c3e50;font-size:24px;line-height:1.1;margin:0 0 4px}.stat-content p{color:#7f8c8d;font-size:12px;font-weight:600;letter-spacing:.3px;margin:0;text-transform:uppercase}.filters-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;margin-bottom:30px;max-width:100%;overflow-x:hidden;padding:20px}.date-filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:15px}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group label{color:#555;font-size:13px;font-weight:600}.filter-group input[type=date]{border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:10px 12px;transition:border-color .3s ease}.filter-group input[type=date]:focus{border-color:#667eea;outline:none}.btn-filter{background:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background .3s ease}.btn-filter:hover{background:#2980b9}.timesheets-table{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;max-width:100%;overflow-x:auto}.timesheets-table table{border-collapse:collapse;min-width:700px;width:100%}.timesheets-table thead{background:#f8f9fa}.timesheets-table th{border-bottom:2px solid #e0e0e0;color:#2c3e50;font-size:14px;font-weight:600;letter-spacing:.5px;padding:15px 20px;text-align:left;text-transform:uppercase}.timesheets-table td{border-bottom:1px solid #f0f0f0;color:#555;padding:15px 20px}.timesheets-table tbody tr:hover{background:#f8f9fa}.hours-cell{color:#27ae60;font-size:16px;font-weight:600}.actions-cell{display:flex;gap:8px}.btn-delete-small,.btn-edit-small{border:none;border-radius:6px;cursor:pointer;font-size:16px;padding:6px 10px;transition:all .3s ease}.btn-edit-small{background:#f39c12}.btn-edit-small:hover{background:#e67e22;transform:scale(1.1)}.btn-delete-small{background:#e74c3c}.btn-delete-small:hover{background:#c0392b;transform:scale(1.1)}.no-data{color:#95a5a6;font-size:16px;font-style:italic;padding:60px 20px!important}.modal-overlay{background:#000000b3}.modal-content{border-radius:16px;box-shadow:0 10px 50px #0000004d;max-width:550px}.modal-header{padding:25px}.close-btn{align-items:center;background:#ecf0f1;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;transition:all .3s ease;width:40px}.close-btn:hover{background:#e74c3c;color:#fff;transform:rotate(90deg)}.modal-content form{padding:25px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;box-sizing:border-box;font-size:15px;padding:12px;transition:border-color .3s ease}.form-group small{color:#7f8c8d;margin-top:5px}.modal-actions{border-top:2px solid #ecf0f1;gap:10px;justify-content:flex-end;padding:20px 25px}.btn-cancel,.btn-primary,.btn-submit{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66}.btn-primary:hover{box-shadow:0 6px 20px #667eea99}.btn-submit{background:#27ae60}.btn-submit:hover{background:#229954}.btn-cancel{background:#95a5a6;color:#fff}.btn-cancel:hover{background:#7f8c8d}.loading{align-items:center;color:#667eea;display:flex;font-size:24px;height:100vh;justify-content:center}@media (max-width:480px){.dashboard{overflow-x:hidden}.timesheet-dashboard{margin-left:0;padding:4.5rem 10px 10px}.dashboard-header{flex-direction:column;gap:12px;margin-bottom:20px;padding:0 10px}.dashboard-header h1{font-size:1.5rem;text-align:center}.btn-primary{font-size:14px;padding:12px;width:100%}.stats-grid{gap:12px;grid-template-columns:1fr;margin-bottom:20px}.stat-card{padding:1rem}.stat-icon{font-size:2rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.75rem}.filters-section{gap:12px;padding:12px 10px}.date-filters{flex-direction:column;gap:12px}.filter-group{min-width:100%}.filter-group label{font-size:.85rem}.filter-group input{font-size:14px;padding:10px}.timesheet-table-wrapper{-webkit-overflow-scrolling:touch;border-radius:8px;margin:0;overflow-x:auto}.timesheet-table{font-size:.85rem;min-width:700px}.timesheet-table td,.timesheet-table th{padding:.75rem .5rem}.modal-content{max-width:95%;padding:1.5rem 1rem}.form-grid{grid-template-columns:1fr}}@media (min-width:481px) and (max-width:767px){.dashboard{overflow-x:hidden}.timesheet-dashboard{margin-left:0;padding:4.5rem 15px 15px}.dashboard-header{flex-direction:row;gap:15px;margin-bottom:25px;padding:0 15px}.dashboard-header h1{font-size:1.75rem}.btn-primary{font-size:15px;padding:12px 24px;white-space:nowrap}.stats-grid{gap:15px;grid-template-columns:repeat(2,1fr);margin-bottom:25px}.stat-card{padding:1.25rem}.stat-icon{font-size:2.25rem}.filters-section{padding:18px}.timesheet-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.timesheet-table{font-size:.9rem;min-width:700px}.form-grid{grid-template-columns:1fr}}@media (min-width:768px) and (max-width:1024px){.timesheet-dashboard{padding:20px}.dashboard-header h1{font-size:30px}.stats-grid{gap:18px;grid-template-columns:repeat(2,1fr);margin-bottom:25px}.stat-card{padding:22px}.filters-section{padding:20px}.date-filters{flex-wrap:wrap;gap:12px}.filter-group{flex:1 1;min-width:180px}.btn-filter{flex:0 0 auto}.timesheets-table td,.timesheets-table th{padding:14px 18px}.modal-content{max-width:600px}}@media (min-width:1025px) and (max-width:1366px){.timesheet-dashboard{padding:25px}.stats-grid{gap:18px;grid-template-columns:repeat(4,1fr)}.stat-card{padding:22px}.date-filters{gap:12px}.timesheets-table td,.timesheets-table th{padding:14px 18px}}@media (min-width:1367px){.timesheet-dashboard{margin:0 auto;max-width:1600px;padding:30px}.stats-grid{gap:20px;grid-template-columns:repeat(4,1fr)}.stat-card{padding:25px}.modal-content{max-width:650px}}@media (max-height:600px) and (orientation:landscape){.modal-content{max-height:85vh}.dashboard-header,.filters-section,.stats-grid{margin-bottom:15px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.stat-icon{-moz-osx-font-smoothing:grayscale}.btn-cancel,.btn-filter,.btn-primary,.btn-submit,.stat-icon{-webkit-font-smoothing:antialiased}}@media print{.actions-cell,.dashboard-header button,.filters-section,.modal-overlay{display:none!important}.timesheet-dashboard{padding:0}.timesheets-table{box-shadow:none}}.change-password-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.change-password-card{animation:slideUp .4s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:480px;padding:40px;width:100%}.header-section{margin-bottom:32px;text-align:center}.lock-icon{animation:pulse 2s ease-in-out infinite;font-size:64px;margin-bottom:16px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.header-section h2{color:#2d3748;font-size:28px;font-weight:700;margin:0 0 12px}.header-section p{color:#718096;font-size:14px;line-height:1.6;margin:0}.error-message{background:#fed7d7;border-left:4px solid #c53030;border-radius:8px;color:#c53030;font-size:14px;margin-bottom:24px;padding:12px 16px}form{display:flex;flex-direction:column;gap:20px}.form-group{gap:8px}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{border:1px solid #e2e8f0;border-radius:8px;flex:1 1;font-size:14px;padding:12px 48px 12px 16px;transition:border-color .2s,box-shadow .2s}.password-input-wrapper input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.toggle-password{background:none;border:none;cursor:pointer;font-size:20px;padding:4px 8px;position:absolute;right:12px;transition:transform .2s}.toggle-password:hover{transform:scale(1.1)}.hint{color:#718096;font-size:12px}.password-requirements{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:8px;padding:16px}.password-requirements h4{color:#2d3748;font-size:14px;font-weight:600;margin:0 0 12px}.password-requirements ul{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.password-requirements li{color:#a0aec0;font-size:13px;transition:color .2s}.password-requirements li.met{color:#48bb78;font-weight:500}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:8px;padding:14px 24px;transition:transform .2s,box-shadow .2s}.submit-btn:hover:not(:disabled){box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.help-text{border-top:1px solid #e2e8f0;margin-top:24px;padding-top:24px;text-align:center}.help-text p{color:#718096;font-size:13px;margin:0}@media (max-width:640px){.change-password-card{padding:24px}.header-section h2{font-size:24px}.lock-icon{font-size:48px}}.requirements-form-container{margin:0 auto 0 270px;max-width:900px;padding:20px}.requirements-header{margin-bottom:30px}.requirements-header h2{color:#1a202c;font-size:28px;margin-bottom:8px}.requirements-header p{color:#718096;font-size:15px}.message{border-radius:8px;font-size:14px;margin-bottom:24px;padding:14px 18px}.message.success{background:#c6f6d5;border:1px solid #9ae6b4;color:#22543d}.message.error{background:#fed7d7;border:1px solid #fc8181;color:#742a2a}.requirements-form{background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014}.form-section{border-bottom:1px solid #e2e8f0;padding:24px}.form-section:last-child{border-bottom:none}.form-section h3{border-bottom:2px solid #667eea;color:#2d3748;font-size:18px;margin-bottom:20px;padding-bottom:12px}.form-group:last-child{margin-bottom:0}.form-group input[type=date],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=text],.form-group select,.form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 14px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group small{color:#718096;display:block;font-size:12px;margin-top:6px}.checkbox-group{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.checkbox-label{align-items:center;background:#f7fafc;border-radius:6px;cursor:pointer;display:flex;font-weight:400;padding:10px 14px;transition:all .2s}.checkbox-label:hover{background:#edf2f7}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;margin-right:10px;width:18px}.array-input{display:flex;gap:10px}.array-input input{flex:1 1}.btn-add{background:#667eea;padding:12px 20px;transition:all .2s;white-space:nowrap}.btn-add:hover{background:#5568d3;transform:translateY(-1px)}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tag{background:#e6f0ff;border-radius:20px;display:inline-flex;font-size:13px;gap:6px;padding:6px 12px}.tag,.tag button{align-items:center;color:#2c5aa0}.tag button{background:none;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:18px;height:16px;justify-content:center;line-height:1;padding:0;transition:background .2s;width:16px}.tag button:hover{background:#2c5aa033}.form-actions{background:#f7fafc;border-radius:0 0 12px 12px;padding:24px}.btn-submit{box-shadow:0 4px 14px #667eea66;padding:14px 32px;transition:all .3s}.btn-submit:hover:not(:disabled){box-shadow:0 6px 20px #667eea80}.btn-submit:disabled{background:#cbd5e0;box-shadow:none;transform:none}.btn-cancel{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s}.btn-cancel:hover{background:#f7fafc;border-color:#cbd5e0}.btn-edit-card{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;margin-top:12px;padding:8px 16px;transition:all .3s}.btn-edit-card:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.message.info{background:#bee3f8;border:1px solid #90cdf4;color:#2c5282}@media (max-width:768px){.requirements-form-container{margin-left:0;padding:15px}.form-section{padding:20px 16px}.requirements-header h2{font-size:24px}.checkbox-group,.form-row{grid-template-columns:1fr}.array-input{flex-direction:column}.form-actions{padding:20px 16px}.btn-submit{width:100%}.requirements-grid{grid-template-columns:1fr}.my-requirements-section{margin-top:30px;padding:16px}}.my-requirements-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;margin-top:40px;padding:24px}.my-requirements-section h2{color:#1a202c;font-size:22px;margin-bottom:20px}.requirements-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.requirement-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .3s ease}.requirement-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.requirement-card .card-header{margin-bottom:12px}.requirement-card .card-header h3{color:#1a202c;font-size:16px;margin-bottom:8px}.requirement-card .badges{display:flex;flex-wrap:wrap;gap:8px}.requirement-card .badge{border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 10px}.requirement-card .card-body p{color:#4a5568;font-size:14px;margin-bottom:8px}.requirement-card .admin-notes{background:#edf2f7;border-left:3px solid #4299e1;border-radius:4px;margin-top:12px;padding:12px}.requirement-card .admin-notes strong{color:#2d3748;display:block;font-size:13px;margin-bottom:6px}.requirement-card .admin-notes p{color:#4a5568;font-size:13px;margin:0}.no-data{color:#718096;font-size:15px;padding:40px}.requirements-dashboard{margin-left:270px;padding:20px}.dashboard-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px}.dashboard-header h2{color:#1a202c;font-size:28px;margin:0}.filter-buttons{display:flex;flex-wrap:wrap;gap:10px}.filter-buttons button{background:#fff;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.filter-buttons button:hover{background:#f7fafc;border-color:#667eea}.filter-buttons button.active{background:#667eea;border-color:#667eea;color:#fff}.requirements-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.requirement-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;overflow:hidden;transition:all .3s}.requirement-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-4px)}.card-header{border-bottom:1px solid #e2e8f0;padding:20px}.card-header h3{color:#1a202c;font-size:18px;margin:0 0 12px}.badges{display:flex;gap:8px}.badge{border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.card-body{padding:20px}.info-row{display:flex;font-size:14px;justify-content:space-between;margin-bottom:10px}.info-row .label{color:#718096;font-weight:500}.info-row .value{color:#2d3748;font-weight:600}.card-footer{background:#f7fafc;border-top:1px solid #e2e8f0;padding:16px 20px}.btn-view{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;font-weight:600}.no-data{color:#a0aec0;padding:60px 20px;text-align:center}.modal-overlay{background:#00000080;padding:20px}.modal-content{box-shadow:0 20px 60px #0000004d;max-width:800px;width:100%}.modal-header{background:#fff;border-bottom:1px solid #e2e8f0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.modal-header h2{color:#1a202c}.btn-close{align-items:center;background:none;border:none;border-radius:50%;color:#a0aec0;cursor:pointer;display:flex;font-size:32px;height:32px;justify-content:center;line-height:1;padding:0;transition:background .2s;width:32px}.btn-close:hover{background:#f7fafc;color:#2d3748}.modal-body section{margin-bottom:30px}.modal-body section:last-child{margin-bottom:0}.modal-body h3{border-bottom:2px solid #667eea;color:#2d3748;font-size:16px;margin:0 0 16px;padding-bottom:8px}.modal-body p{color:#4a5568;line-height:1.6;margin:8px 0}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:12px}.detail-grid div{color:#4a5568;font-size:14px}.detail-grid strong{color:#2d3748;display:block;margin-bottom:4px}.tags-display{margin:12px 0}.tags-display strong{color:#2d3748;display:block;margin-bottom:8px}.tags-display .tag{background:#e6f0ff;border-radius:16px;color:#2c5aa0;display:inline-block;font-size:13px;margin:4px;padding:6px 12px}.status-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.btn-status{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.btn-status.pending{background:#f6ad55}.btn-status.review{background:#4299e1}.btn-status.approved{background:#48bb78}.btn-status.rejected{background:#f56565}.btn-status:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.loading{color:#718096;font-size:16px;padding:60px 20px;text-align:center}.document-link{color:#4299e1}.document-link:hover{color:#2b6cb0;text-decoration:underline}.document-info{background:#f7fafc;border-left:3px solid #48bb78;border-radius:6px;padding:12px}.document-link{background:#fff;border:1px solid #3182ce;border-radius:4px;color:#3182ce;cursor:pointer;display:inline-block;font-family:inherit;font-size:inherit;font-weight:500;padding:8px 12px;text-decoration:none;transition:all .2s ease}.document-link:hover{background:#3182ce;box-shadow:0 2px 4px #3182ce4d;color:#fff;transform:translateY(-1px)}.document-name{color:#2d3748;font-weight:500;margin:0}.document-note{color:#718096;display:block;font-style:italic;margin-top:6px}.admin-notes-display{background:#edf2f7;border-left:3px solid #4299e1;border-radius:6px;color:#2d3748;padding:12px;white-space:pre-wrap}.admin-notes-input{border:2px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:14px;margin-bottom:12px;padding:12px;resize:vertical;width:100%}.admin-notes-input:focus{border-color:#4299e1;outline:none}.form-group label{color:#2d3748}@media (max-width:768px){.requirements-dashboard{margin-left:0;padding:15px}.dashboard-header{align-items:flex-start;flex-direction:column}.requirements-grid{grid-template-columns:1fr}.filter-buttons{width:100%}.filter-buttons button{flex:1 1}.detail-grid{grid-template-columns:1fr}.modal-content{border-radius:0;margin:0;max-height:100vh}.status-buttons{flex-direction:column}.btn-status{width:100%}}.project-payments-container{margin:0 auto;max-width:1400px;padding:20px}.project-header{margin-bottom:30px}.project-header h1{color:#2c3e50;font-size:28px;margin:10px 0 5px}.project-number{color:#7f8c8d;font-size:14px;margin:0}.payment-summary{grid-gap:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:40px}.summary-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;text-align:center}.summary-card h3{color:#7f8c8d;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.summary-card .amount{color:#2c3e50;font-size:32px;font-weight:700;margin:0}.summary-card .amount.paid{color:#27ae60}.summary-card .amount.pending{color:#e67e22}.payment-phases{margin-bottom:40px}.payment-phases h2{color:#2c3e50;font-size:24px;margin-bottom:20px}.no-phases{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:40px;text-align:center}.no-phases p{color:#7f8c8d;margin:0}.phases-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.phase-card{background:#fff;border:3px solid #0000;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:24px;transition:transform .3s,box-shadow .3s}.phase-card:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-4px)}.phase-card.phase-paid{background:linear-gradient(135deg,#fff,#e8f5e9);border-color:#27ae60}.phase-card.phase-unlocked{background:linear-gradient(135deg,#fff,#e3f2fd);border-color:#3498db}.phase-card.phase-partial{background:linear-gradient(135deg,#fff,#fff3e0);border-color:#f39c12}.phase-card.phase-locked{background:linear-gradient(135deg,#fff,#eceff1);border-color:#95a5a6;opacity:.85}.phase-header{align-items:center;border-bottom:2px solid #ecf0f1;display:flex;gap:12px;margin-bottom:20px;padding-bottom:16px}.phase-icon{font-size:32px}.phase-header h3{color:#2c3e50;flex:1 1;font-size:20px;margin:0}.phase-sequence{background:#3498db;border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.phase-amount{margin-bottom:16px}.amount-row{display:flex;justify-content:space-between;margin-bottom:8px}.amount-row span{color:#7f8c8d;font-size:14px}.amount-row strong{color:#2c3e50;font-size:16px}.phase-progress{margin-bottom:20px}.progress-bar{background:#ecf0f1;border-radius:6px;height:12px;margin-bottom:8px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#3498db,#2ecc71);border-radius:6px;height:100%;transition:width .5s ease}.phase-paid .progress-fill{background:linear-gradient(90deg,#27ae60,#2ecc71)}.progress-text{color:#7f8c8d;font-size:14px;text-align:center}.phase-details{margin-bottom:20px}.detail-row{display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.detail-row span:first-child{color:#7f8c8d}.detail-row span:last-child{color:#2c3e50;font-weight:500}.status-badge{border-radius:12px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-badge.pending{background:#ecf0f1;color:#7f8c8d}.status-badge.awaiting-payment{background:#fff3cd;color:#856404}.status-badge.partially-paid{background:#ffe5cc;color:#c50}.status-badge.paid{background:#d4edda;color:#155724}.status-badge.pending-verification{background:#cce5ff;color:#004085}.status-badge.verified{background:#d4edda;color:#155724}.status-badge.failed{background:#f8d7da;color:#721c24}.phase-actions{display:flex;gap:10px}.phase-actions .btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px;transition:all .3s}.btn-secondary:hover{transform:translateY(-2px)}.phase-locked-message,.phase-paid-message{background:#ecf0f1;border-radius:6px;color:#7f8c8d;font-size:14px;font-weight:500;padding:12px;text-align:center}.phase-paid-message{background:#d4edda;color:#155724}.payment-history{margin-bottom:40px}.payment-history h2{color:#2c3e50;font-size:24px;margin-bottom:20px}.no-history{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:40px;text-align:center}.no-history p{color:#7f8c8d;margin:0}.history-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.history-table{border-collapse:collapse;width:100%}.history-table thead{background:#2c3e50;color:#fff}.history-table th{font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.history-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background .2s}.history-table tbody tr:hover{background:#f8f9fa}.history-table td{color:#2c3e50;font-size:14px;padding:16px}.method-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.method-badge.online{background:#e3f2fd;color:#1976d2}.method-badge.offline{background:#fff3e0;color:#f57c00}.verified-info{display:flex;flex-direction:column;gap:4px}.verified-info small{color:#7f8c8d;font-size:12px}.modal-header h2{font-size:22px}.close-button{font-size:32px;height:32px;width:32px}.phase-info{background:#ecf0f1;border-radius:8px;margin-bottom:24px;padding:16px}.phase-info h3{color:#2c3e50;font-size:18px;margin:0 0 8px}.phase-info p{color:#7f8c8d;font-size:14px;margin:0}.form-group{margin-bottom:16px}.file-selected{color:#27ae60;font-size:13px;font-weight:500;margin-top:8px}.modal-actions .btn{padding:12px}@media (max-width:768px){.form-row,.payment-summary,.phases-grid{grid-template-columns:1fr}.phase-actions{flex-direction:column}.history-table-container{overflow-x:auto}.history-table{min-width:800px}}.verification-queue-container{margin:0 auto;max-width:1600px;padding:20px}.page-header h1{margin:0 0 8px}.queue-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-left:4px solid #3498db;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:24px}.stat-card.critical{border-left-color:#e74c3c}.stat-card h3{color:#7f8c8d;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.stat-value{color:#2c3e50;font-size:36px;font-weight:700;margin:0}.stat-card.critical .stat-value{color:#e74c3c}.no-pending{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:60px 20px}.empty-state{margin:0 auto;max-width:400px;text-align:center}.empty-icon{color:#27ae60;font-size:80px;margin-bottom:20px}.empty-state h2{color:#2c3e50;font-size:24px;margin:0 0 12px}.empty-state p{color:#7f8c8d;font-size:16px;margin:0}.verifications-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.verifications-table{border-collapse:collapse;width:100%}.verifications-table thead{background:#2c3e50;color:#fff}.verifications-table th{font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.verifications-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background .2s}.verifications-table tbody tr:hover{background:#f8f9fa}.verifications-table td{color:#2c3e50;font-size:14px;padding:16px;vertical-align:top}.client-info,.project-info{display:flex;flex-direction:column;gap:4px}.client-info strong,.project-info strong{color:#2c3e50;font-size:14px}.client-info small,.project-info small{color:#7f8c8d;font-size:12px}.client-info .email{color:#3498db}.amount-cell{color:#27ae60;font-size:15px;font-weight:600}.payment-mode-badge{background:#e3f2fd;border-radius:12px;color:#1976d2;display:inline-block;font-size:12px;font-weight:600;margin-bottom:4px;padding:4px 12px}.bank-name{color:#7f8c8d;display:block;font-size:11px;margin-top:4px}.reference-cell{color:#7f8c8d;font-family:Courier New,monospace;font-size:12px}.days-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:6px 12px}.days-badge.normal{background:#d4edda;color:#155724}.days-badge.warning{background:#fff3cd;color:#856404}.days-badge.critical{background:#f8d7da;color:#721c24}.actions-cell{text-align:center;white-space:nowrap}.btn-icon{align-items:center;background:none;border:2px solid #ecf0f1;border-radius:50%;cursor:pointer;display:inline-flex;font-size:18px;height:36px;justify-content:center;margin:0 4px;transition:all .3s;width:36px}.btn-icon:hover{box-shadow:0 2px 8px #0003;transform:scale(1.1)}.view-btn:hover{background:#e3f2fd;border-color:#3498db}.approve-btn:hover{background:#d4edda;border-color:#27ae60}.reject-btn:hover{background:#f8d7da;border-color:#e74c3c}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.modal-content.receipt-modal{max-width:900px}.modal-header{align-items:center;border-bottom:2px solid #ecf0f1;display:flex;justify-content:space-between;padding:24px}.modal-header h2{color:#2c3e50;font-size:24px;margin:0}.close-button{align-items:center;background:none;border:none;color:#95a5a6;cursor:pointer;display:flex;font-size:36px;height:36px;justify-content:center;padding:0;transition:color .3s;width:36px}.close-button:hover{color:#e74c3c}.modal-body{padding:24px}.transaction-summary{background:#f8f9fa;border-radius:8px;margin-bottom:24px;padding:20px}.summary-row{display:flex;font-size:14px;justify-content:space-between;margin-bottom:12px}.summary-row:last-child{margin-bottom:0}.summary-row span{color:#7f8c8d}.summary-row strong{color:#2c3e50;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block}.form-group textarea{border:2px solid #ecf0f1;border-radius:6px;font-family:inherit;font-size:14px;padding:12px;transition:border-color .3s;width:100%}.form-group textarea:focus{border-color:#3498db;outline:none}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions .btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s}.btn-success{background:#27ae60;color:#fff}.btn-success:hover{background:#229954}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}.receipt-body{max-height:70vh;overflow:auto;padding:0}.receipt-iframe{border:none;height:600px;width:100%}.receipt-image{display:block;height:auto;width:100%}@media (max-width:1200px){.verifications-table-container{overflow-x:auto}.verifications-table{min-width:1200px}}@media (max-width:768px){.queue-stats{grid-template-columns:1fr}.modal-content{max-height:95vh;width:95%}.modal-actions{flex-direction:column}}.create-project-container{margin:0 auto;max-width:1200px;padding:20px}.page-header{margin-bottom:30px}.back-button{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-bottom:15px;padding:8px 16px;transition:background .3s}.back-button:hover{background:#5a6268}.page-header h1{color:#2c3e50;font-size:32px;margin:10px 0 8px}.subtitle{color:#7f8c8d;font-size:16px;margin:0}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.error-message,.success-message{animation:slideIn .3s ease;margin-bottom:20px;padding:16px}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.project-form{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.form-section{border-bottom:2px solid #ecf0f1;padding:30px}.form-section:last-of-type{border-bottom:none}.form-section h2{align-items:center;color:#2c3e50;display:flex;font-size:24px;gap:10px;margin:0 0 24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-header h2{margin:0}.form-row{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.form-group label{color:#2c3e50;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid #ecf0f1;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db;outline:none}.form-group textarea{min-height:80px;resize:vertical}.btn-add{background:#27ae60;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.btn-add:hover{background:#229954;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-remove{align-self:flex-end;background:#e74c3c;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:18px;font-weight:700;height:36px;margin-left:10px;transition:all .3s;width:36px}.btn-remove:hover{background:#c0392b;transform:scale(1.1)}.team-member-row{background:#f8f9fa;border:2px solid #ecf0f1;border-radius:8px;margin-bottom:16px;padding:20px}.team-member-row .form-row{grid-gap:16px;align-items:flex-end;display:grid;gap:16px;grid-template-columns:2fr 1.5fr 1fr 1fr auto;margin-bottom:0}.payment-summary{background:#e3f2fd;border-radius:8px;display:flex;gap:20px;justify-content:space-around;margin-bottom:24px;padding:16px}.summary-item{align-items:center;display:flex;flex-direction:column;gap:8px}.summary-item span{color:#7f8c8d;font-size:13px;font-weight:500}.summary-item strong{color:#2c3e50;font-size:20px}.summary-item strong.valid{color:#27ae60}.summary-item strong.invalid{color:#e74c3c}.payment-phase-row{background:#fff3e0;border:2px solid #ffe0b2;border-radius:8px;margin-bottom:16px;padding:20px}.phase-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.phase-header-row h3{color:#f57c00;font-size:18px;margin:0}.form-actions{background:#f8f9fa;border-top:2px solid #ecf0f1;display:flex;gap:12px;justify-content:flex-end;padding:24px 30px}.form-actions .btn{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;transition:all .3s}.btn-primary{background:#3498db;color:#fff}.btn-primary:hover{background:#2980b9;box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover{background:#7f8c8d}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}@media (max-width:1024px){.team-member-row .form-row{grid-template-columns:1fr 1fr}.btn-remove{border-radius:6px;grid-column:span 2;width:100%}}@media (max-width:768px){.create-project-container{padding:10px}.form-section{padding:20px}.form-row,.team-member-row .form-row{grid-template-columns:1fr}.form-actions,.payment-summary{flex-direction:column}.form-actions .btn{width:100%}}.loading-spinner{align-items:center;color:#7f8c8d;display:flex;font-size:18px;justify-content:center;min-height:400px}.form-group input:invalid,.form-group select:invalid,.form-group textarea:invalid{border-color:#e74c3c}.form-group input:valid,.form-group select:valid,.form-group textarea:valid{border-color:#27ae60}.form-group label[title]{cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.registration-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.registration-container{animation:slideUp .4s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:700px;padding:40px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.registration-header{margin-bottom:30px;text-align:center}.registration-header h1{color:#1a1a1a;font-size:32px;font-weight:700;margin:0 0 10px}.registration-header p{color:#6c757d;font-size:16px;margin:0}.alert{border-radius:8px;font-size:14px;font-weight:500;margin-bottom:20px;padding:12px 16px}.alert-error{background:#ffebee;border:1px solid #ef5350;color:#c62828}.alert-success{background:#e8f5e9;border:1px solid #66bb6a;color:#2e7d32}.otp-form,.registration-form{margin-top:20px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px}.form-group{display:flex;flex-direction:column}.form-group label{color:#495057;font-size:14px;font-weight:600;margin-bottom:6px}.form-group input,.form-group select{border:2px solid #e9ecef;border-radius:8px;font-family:inherit;font-size:15px;padding:12px 14px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input::placeholder{color:#adb5bd}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:14px;transition:all .3s ease;width:100%}.btn-submit:hover:not(:disabled){box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.form-footer{margin-top:20px;text-align:center}.form-footer p{color:#6c757d;font-size:14px;margin:0}.form-footer a{color:#667eea;font-weight:600;text-decoration:none}.form-footer a:hover{text-decoration:underline}.otp-header{margin-bottom:30px;text-align:center}.email-icon{font-size:48px;margin-bottom:16px}.otp-header h3{color:#1a1a1a;font-size:24px;font-weight:700;margin:0 0 8px}.otp-header p{color:#6c757d;font-size:14px;margin:0 0 4px}.otp-header strong{color:#667eea;font-size:15px}.otp-inputs{display:flex;gap:12px;justify-content:center;margin:30px 0}.otp-input{border:2px solid #e9ecef;border-radius:10px;caret-color:#667eea;font-size:24px;font-weight:700;height:60px;text-align:center;transition:all .3s ease;width:50px}.otp-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea33;outline:none}.otp-input:not(:placeholder-shown){background:#667eea0d;border-color:#667eea}.otp-footer{margin:20px 0;text-align:center}.otp-footer p{color:#6c757d;font-size:14px;margin:0 0 8px}.resend-btn{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;padding:4px 8px;text-decoration:underline}.resend-btn:hover:not(:disabled){color:#5a67d8}.resend-btn:disabled{cursor:not-allowed;opacity:.5}.back-btn{background:#e9ecef;border:none;border-radius:8px;color:#495057;cursor:pointer;font-size:14px;font-weight:500;margin-top:12px;padding:12px;transition:all .3s ease;width:100%}.back-btn:hover{background:#dee2e6}@media (max-width:768px){.registration-container{padding:30px 20px}.registration-header h1{font-size:26px}.form-row{grid-template-columns:1fr}.otp-inputs{gap:8px}.otp-input{font-size:20px;height:55px;width:45px}}@media (max-width:480px){.registration-page{padding:10px}.registration-container{padding:20px 16px}.otp-inputs{gap:6px}.otp-input{font-size:18px;height:50px;width:40px}}
/*# sourceMappingURL=main.b202151a.css.map*/