*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;color:#333;background:#e8e4f0}h1,h2,h3,h4,h5,h6{margin-top:0;line-height:1.2}a{color:#5b2d8e;text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.text-center{text-align:center}.text-muted{color:#666}:root{--color-primary: #5B2D8E;--color-primary-dark: #4A2473;--color-primary-light: #7B4DAE;--color-secondary: #E8E4F0;--color-accent: #8B5CF6;--color-success: #10B981;--color-warning: #F59E0B;--color-error: #EF4444;--color-background: #E8E4F0;--color-surface: #ffffff;--color-text: #333333;--color-text-secondary: #666666;--color-border: #D1C4E9;--color-sidebar: #5B2D8E;--color-header: #5B2D8E}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#e8e4f0}::-webkit-scrollbar-thumb{background:#5b2d8e;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4a2473}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select,textarea{border:1px solid #D1C4E9;border-radius:4px;padding:.5rem .75rem;transition:border-color .2s,box-shadow .2s}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=date]:focus,select:focus,textarea:focus{outline:none;border-color:#5b2d8e;box-shadow:0 0 0 3px #5b2d8e1a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#5b2d8e;color:#fff}.btn-primary:hover:not(:disabled){background:#4a2473}.btn-secondary{background:#e8e4f0;color:#5b2d8e}.btn-secondary:hover:not(:disabled){background:#d1c4e9}.btn-outline{background:transparent;color:#5b2d8e;border:2px solid #5B2D8E}.btn-outline:hover:not(:disabled){background:#5b2d8e1a}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.data-table th{background:#5b2d8e;color:#fff;padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.875rem}.data-table td{padding:.75rem 1rem;border-bottom:1px solid #E8E4F0}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover{background:#f5f3f8}.data-table input,.data-table select{width:100%;border:1px solid #D1C4E9;padding:.5rem;border-radius:4px}.progress-steps{display:flex;justify-content:space-between;margin-bottom:2rem}.progress-steps .step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.progress-steps .step:before{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background:#d1c4e9}.progress-steps .step:last-child:before{display:none}.progress-steps .step.active:before,.progress-steps .step.completed:before{background:#5b2d8e}.progress-steps .step .step-number{width:30px;height:30px;border-radius:50%;background:#d1c4e9;color:#666;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;position:relative;z-index:1}.progress-steps .step.active .step-number,.progress-steps .step.completed .step-number{background:#5b2d8e;color:#fff}.progress-steps .step .step-label{margin-top:.5rem;font-size:.75rem;color:#666;text-align:center}.progress-steps .step.active .step-label{color:#5b2d8e;font-weight:600}.results-panel{background:#fff;border-radius:8px;padding:1.5rem}.results-panel .result-header{background:#5b2d8e;color:#fff;padding:1rem;border-radius:8px 8px 0 0;margin:-1.5rem -1.5rem 1.5rem}.results-panel .result-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #E8E4F0}.results-panel .result-item:last-child{border-bottom:none}.results-panel .result-item .label{color:#666}.results-panel .result-item .value{font-weight:600;color:#5b2d8e}.results-panel .total{background:#f5f3f8;padding:1rem;border-radius:8px;margin-top:1rem}.results-panel .total .label{font-weight:600;color:#333}.results-panel .total .value{font-size:1.5rem;font-weight:700;color:#5b2d8e}
