:root{--bg-color:#f3f3f3;--sidebar-bg:#f9f9f9;--card-bg:#fff;--text-main:#333;--text-muted:#777;--accent:#7c3aed;--accent-hover:#6d28d9;--link:#7c3aed;--success:#2e8b57;--warning:#f2a900;--danger:#d43f3a;--border:#d9d9d9;--shadow:none;--shadow-hover:none}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,system-ui,sans-serif}body{background:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:auto;height:100vh;overflow:hidden}#root{width:100%;height:100%;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#3535de33;border-radius:4px}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border);z-index:10;flex-direction:column;width:250px;padding:0;transition:none;display:flex}body.fullscreen .sidebar{display:none}.logo{color:var(--text-main);text-align:center;background:var(--card-bg);border-bottom:1px solid var(--border);justify-content:center;align-items:center;min-height:70px;margin-bottom:1rem;padding:0 1.5rem;font-size:1.2rem;font-weight:700;display:flex}.nav-item{cursor:pointer;color:var(--text-main);border-radius:0;align-items:center;gap:10px;margin-bottom:0;padding:.6rem 1rem;font-size:.9rem;font-weight:400;transition:background .1s;display:flex}.nav-item:hover{background:#eee}.nav-item.active{color:var(--text-main);border-left:4px solid var(--accent);background:#eee;padding-left:calc(1rem - 4px);font-weight:600}.main-content{flex:1;padding:2rem;transition:all .3s;position:relative;overflow:hidden auto}body.fullscreen .main-content{padding:1rem}.section{animation:.3s ease-in-out fadeIn;display:none}.section.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-header{background:var(--card-bg);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-height:70px;margin:-2rem -2rem 2rem;padding:0 2rem;display:flex}.page-header h1{color:var(--text-main);letter-spacing:0;font-size:1.5rem;font-weight:600}.header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:1.5rem;display:flex}.btn{background:var(--link);color:#fff;cursor:pointer;box-shadow:none;border:1px solid #0000;border-radius:2px;align-items:center;gap:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:background .1s;display:inline-flex}.btn:hover{box-shadow:none;filter:none;background:#6d28d9;transform:none}.btn:active{transform:none;box-shadow:inset 0 2px 4px #0000001a}.btn-secondary{border:1px solid var(--border);color:var(--text-main);box-shadow:none;background:#f3f3f3}.btn-secondary:hover{box-shadow:none;filter:none;background:#e9e9e9;border-color:#ccc;transform:none}.btn-success{background:var(--success);border-color:#0000}.btn-success:hover{box-shadow:none;background:#267348}.btn-danger{background:var(--danger);border-color:#0000}.btn-danger:hover{box-shadow:none;background:#b52c28}.btn-warning{background:var(--warning);color:#fff;border-color:#0000}.btn-sm{padding:.3rem .6rem;font-size:.8rem}.card-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.card{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;cursor:pointer;border-radius:2px;padding:1.2rem;transition:none}.card:hover{box-shadow:none;border-color:#bbb;transform:none}.card h3{border-bottom:1px solid var(--border);color:var(--text-main);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:1rem;padding-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.card .value{color:var(--text-main);letter-spacing:0;font-size:2rem;font-weight:600}.installment-card{border:1px solid var(--border);text-align:center;background:#fff;border-radius:4px;flex-direction:column;justify-content:space-between;padding:1.5rem;display:flex}.installment-card h3{color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;border:none;justify-content:center;margin-bottom:.5rem;padding:0;font-size:.85rem;font-weight:600}.installment-card .value{color:var(--text-main);margin-bottom:1.2rem;font-size:1.8rem;font-weight:600}.btn-installment{cursor:pointer;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;gap:8px;width:100%;padding:.6rem 1rem;font-size:.85rem;font-weight:500;transition:background .1s;display:inline-flex}.btn-installment.pending{background:var(--warning);color:#fff}.btn-installment.pending:hover{background:#d99a00}.btn-installment.closed{background:var(--success);color:#fff;cursor:not-allowed}.btn-installment.locked{color:#888;cursor:not-allowed;background:#e0e0e0}.chart-container{background:var(--card-bg);border:1px solid var(--border);height:300px;box-shadow:none;border-radius:2px;margin-bottom:1.5rem;padding:1.5rem}.charts-grid{grid-template-columns:2fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}.table-container{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;border-radius:2px;margin-bottom:1.5rem;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:center;border-bottom:1px solid #ededed;padding:.75rem 1rem;font-size:.85rem}th:first-child,td:first-child{text-align:left;padding-left:2rem}th:last-child,td:last-child{text-align:right;padding-right:2rem}th{color:var(--text-main);text-transform:uppercase;background:#fafafa;font-size:.75rem;font-weight:600;border:none!important}tbody tr:hover{background:#fafafa}.badge{text-transform:uppercase;border:1px solid #0000;border-radius:2px;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.badge.in-progress{color:var(--link);background:#eef5fc;border-color:#d1e2f3}.badge.completed{color:var(--success);background:#eaf5ef;border-color:#c9e5d4}.badge.on-hold{color:var(--warning);background:#fdf5e6;border-color:#f8e5c0}.badge.pending{color:#d97706;background:#fffbeb;border-color:#fde68a}.badge.draft{color:var(--text-muted);background:#f3f3f3;border-color:#d9d9d9}.badge.sent{color:var(--link);background:#eef5fc;border-color:#d1e2f3}.badge.finalized{color:var(--success);background:#eaf5ef;border-color:#c9e5d4}.badge.dropped{color:var(--danger);background:#faebea;border-color:#f2c7c5}.badge.online{color:var(--link);background:#eef5fc;border-color:#d1e2f3}.badge.manual{color:var(--warning);background:#fdf5e6;border-color:#f8e5c0}.actions button{color:var(--link);cursor:pointer;background:0 0;border:none;border-radius:2px;padding:4px 6px;font-size:.8rem;text-decoration:underline;transition:none}.actions button:hover{color:#6d28d9;background:0 0}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-main);margin-bottom:.3rem;font-size:.85rem;font-weight:600;display:block}.form-control{border:1px solid var(--border);width:100%;color:var(--text-main);background:#fff;border-radius:2px;outline:none;padding:.5rem .8rem;font-size:.9rem;transition:border .1s;box-shadow:inset 0 1px 2px #0000000d}.form-control:focus{border-color:var(--link);box-shadow:inset 0 1px 2px #0000000d,0 0 4px #0051c34d}textarea.form-control{resize:vertical;min-height:80px}.modal-overlay{z-index:100;-webkit-backdrop-filter:none;backdrop-filter:none;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border:1px solid var(--border);width:600px;max-width:90%;max-height:90vh;padding:2rem;animation:none;position:relative;overflow-y:auto;transform:none;box-shadow:0 4px 12px #00000026;border-radius:0!important}.close-modal{cursor:pointer;color:var(--text-muted);background:0 0;border:none;font-size:1.5rem;transition:none;position:absolute;top:15px;right:20px}.close-modal:hover{color:var(--text-main)}.quotation-item{gap:10px;margin-bottom:10px;display:flex}.quotation-item input{flex:1}.quotation-item input.price{max-width:120px}.project-tabs{border-bottom:1px solid var(--border);scrollbar-width:none;-ms-overflow-style:none;gap:0;margin-bottom:2rem;padding-bottom:0;display:flex;overflow-x:auto}.project-tabs::-webkit-scrollbar{display:none}.project-tab{cursor:pointer;color:var(--text-muted);white-space:nowrap;background:#fafafa;border:1px solid #0000;border-bottom:none;margin-bottom:-1px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:500;transition:none}.project-tab:hover{color:var(--text-main);background:#f0f0f0}.project-tab.active{color:var(--text-main);border-color:var(--border);border-top:3px solid var(--accent);background:#fff;border-bottom:1px solid #fff;font-weight:600}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:1.5rem;display:grid}.overview-box{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;border-radius:2px;padding:1.2rem}.overview-box h3{border-bottom:1px solid var(--border);color:var(--text-main);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:1rem;padding-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.tracker-header{text-align:center;margin-bottom:3rem;padding-top:2rem}.tracker-header h2{color:#1e1e38;margin-bottom:.5rem;font-size:1.8rem;font-weight:700}.tracker-header p{color:var(--text-muted);font-size:.95rem}.tracker-scroll-container{margin:2rem 0;padding:0 40px;position:relative}.scroll-btn{z-index:10;border:1px solid var(--border);cursor:pointer;width:36px;height:36px;color:var(--text-main);background:#fff;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:32px;transform:translateY(-50%);box-shadow:0 2px 5px #0000001a}.scroll-btn.left{left:0}.scroll-btn.right{right:0}.scroll-btn:hover{color:var(--link);border-color:var(--link)}.milestone-wrapper{scrollbar-width:none;-ms-overflow-style:none;margin:0;padding:10px 0 1rem;overflow-x:auto}.milestone-wrapper::-webkit-scrollbar{display:none}.milestone-container{justify-content:space-between;align-items:flex-start;gap:15px;width:max-content;min-width:100%;padding:0 1rem;display:flex;position:relative}.milestone-line{z-index:1;background:#e0e0e0;height:2px;position:absolute;top:22px;left:30px;right:30px}.milestone-step{text-align:center;z-index:2;cursor:pointer;flex-direction:column;flex:1;align-items:center;min-width:140px;display:flex}.milestone-box{color:#0000;background:#fff;border:2px solid #e0e0e0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:1rem;font-size:1.1rem;transition:all .3s;display:flex;position:relative}.milestone-box:after{content:"";z-index:-1;background:0 0;border-radius:50%;transition:all .3s;position:absolute;inset:-6px}.milestone-box.active{background:var(--link);border-color:var(--link);color:#fff}.milestone-box.active:after{background:#7c3aed26}.milestone-num{color:var(--link);background:#f8f9fc;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:1rem;padding:4px 12px;font-size:.85rem;font-weight:600}.milestone-label{color:#1e1e38;min-height:40px;font-size:.85rem;font-weight:700;line-height:1.3}.milestone-status{color:var(--success);opacity:0;margin-top:1rem;font-size:.8rem;font-weight:600}.milestone-status.active{opacity:1}.milestone-date{color:var(--text-muted);opacity:0;margin-top:.3rem;font-size:.75rem}.milestone-date.active{opacity:1}.success-banner{text-align:center;background:0 0;border:none;max-width:500px;margin-top:2rem;margin-left:auto;margin-right:auto;padding:1.5rem;display:none}.success-banner.active{animation:.3s slideUp;display:block}.success-banner h3{display:none}.success-banner p{color:var(--text-main);justify-content:center;align-items:center;gap:8px;margin:0;font-size:.95rem;font-weight:500;display:flex}.commit-list{max-height:200px;overflow-y:auto}.commit-item{border-bottom:1px solid var(--border);padding:.6rem 0;font-size:.85rem}.commit-item:last-child{border-bottom:none}.commit-date{color:var(--text-muted);font-size:.75rem}.handler-card{text-align:center}.handler-avatar{width:80px;height:80px;color:var(--accent);background:#3535de1a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;font-size:2rem;display:flex}.handler-name{margin-bottom:.3rem;font-size:1.1rem;font-weight:600}.handler-role{color:var(--text-muted);margin-bottom:.3rem;font-size:.9rem}.handler-email{color:var(--text-muted);font-size:.85rem}.summary-row{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.summary-card{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;text-align:left;border-radius:2px;padding:1.2rem}.summary-card .label{color:var(--text-main);text-transform:uppercase;border-bottom:1px solid #eaeaea;margin-bottom:.8rem;padding-bottom:.8rem;font-size:.85rem;font-weight:600}.summary-card .amount{color:var(--text-main);font-size:2rem;font-weight:600}.summary-card .amount.green{color:var(--success)}.summary-card .amount.red{color:var(--danger)}.summary-card .amount.blue{color:var(--link)}.profile-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.profile-section{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;border-radius:2px;padding:1.2rem}.profile-section h3{border-bottom:1px solid var(--border);color:var(--text-main);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:1rem;padding-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.profile-row{border-bottom:1px solid #ededed;justify-content:space-between;padding:.5rem 0;display:flex}.profile-row:last-child{border-bottom:none}.profile-label{color:var(--text-muted);font-size:.85rem;font-weight:500}.profile-value{color:var(--text-main);text-align:right;font-size:.85rem;font-weight:600}.settings-section{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;border-radius:2px;margin-bottom:1.5rem;padding:1.2rem}.settings-section h3{border-bottom:1px solid var(--border);color:var(--text-main);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:1rem;padding-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.report-entry{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;border-radius:2px;margin-bottom:1rem;padding:1rem}.report-metrics{text-align:center;grid-template-columns:repeat(5,1fr);gap:1rem;display:grid}.metric-box .metric-value{color:var(--text-main);font-size:1.3rem;font-weight:600}.metric-box .metric-label{color:var(--text-muted);text-transform:uppercase;font-size:.75rem;font-weight:600}.tab-inactive{text-align:center;color:var(--text-muted);padding:3rem}.tab-inactive i{opacity:.3;margin-bottom:1rem;font-size:3rem;display:block}.back-btn{color:var(--link);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;margin-bottom:1.5rem;padding:0;font-size:.85rem;text-decoration:underline;transition:none;display:inline-flex}.back-btn:hover{color:#6d28d9}.toast{visibility:hidden;color:#fff;text-align:center;z-index:1000;opacity:0;background-color:#333;border:none;border-radius:2px;min-width:250px;padding:12px 16px;font-size:.9rem;font-weight:500;transition:opacity .2s;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0003}.toast.show{visibility:visible;opacity:1}.settings-tabs{border-bottom:1px solid var(--border);scrollbar-width:none;-ms-overflow-style:none;gap:0;margin-bottom:2rem;padding-bottom:0;display:flex;overflow-x:auto}.settings-tab{cursor:pointer;color:var(--text-muted);white-space:nowrap;background:#fafafa;border:1px solid #0000;border-bottom:none;margin-bottom:-1px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:500;transition:none}.settings-tab:hover{color:var(--text-main);background:#f0f0f0}.settings-tab.active{color:var(--text-main);border-color:var(--border);border-top:3px solid var(--accent);background:#fff;border-bottom:1px solid #fff;font-weight:600}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;display:grid}.metric-card{background:var(--card-bg);border:1px solid var(--border);border-radius:2px;align-items:center;gap:1.2rem;padding:1.5rem;display:flex}.metric-card .icon{border-radius:2px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.metric-card .content h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border:none;margin-bottom:.25rem;padding:0;font-size:.85rem;font-weight:600}.metric-card .content .value{color:var(--text-main);font-size:2rem;font-weight:600}.employee-header-card{background:var(--card-bg);border:1px solid var(--border);border-radius:2px;align-items:center;gap:2rem;margin-bottom:2rem;padding:2rem;display:flex}.employee-header-card .avatar{background:var(--primary,#0284c7);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:2.5rem;font-weight:600;display:flex}.employee-header-card .info h2{color:var(--text-main);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.employee-header-card .details{color:var(--text-muted);flex-wrap:wrap;gap:1.5rem;font-size:.9rem;display:flex}.employee-header-card .details span{align-items:center;gap:8px;display:flex}.employee-header-card .details i{color:var(--text-muted)}.activity-list-item{border-bottom:1px solid var(--border);gap:15px;padding:.75rem 0;display:flex}.activity-list-item:last-child{border-bottom:none}@media (width<=1200px){.overview-grid{grid-template-columns:1fr}}@media (width<=900px){.charts-grid,.profile-grid,.form-row,.summary-row{grid-template-columns:1fr}}
