@import "https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Inter:wght@100..900&display=swap";:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-heading:"Outfit", var(--font-sans);--bg-primary:#f9f8ff;--bg-secondary:#f1efff;--bg-tertiary:#e8e4ff;--text-primary:#120c24;--text-secondary:#4a4458;--text-muted:#8b8698;--accent-primary:#120c24;--accent-secondary:#2d1b4d;--accent-hover:#3b2a63;--border-color:#ddd6ff;--input-bg:#fff;--radius-none:0;--radius-sm:0px;--radius-md:0px;--radius-lg:0px;--shadow-sm:0 1px 2px 0 #120c240d;--shadow-md:6px 6px 0px 0px #7c3aed1a;--shadow-lg:10px 10px 0px 0px #7c3aed1a;--brand-color:#7c3aed;--brand-success:#10b981;--brand-warning:#f59e0b;--brand-error:#ef4444;--brand-info:#7c3aed}[data-theme=dark]{--bg-primary:#0a0614;--bg-secondary:#120c24;--bg-tertiary:#1b1333;--text-primary:#f5f3ff;--text-secondary:#a78bfa;--text-muted:#6d5d9c;--accent-primary:#f5f3ff;--accent-secondary:#3b2a63;--accent-hover:#ddd6ff;--border-color:#1b1333;--input-bg:#0a0614;--shadow-md:6px 6px 0px 0px #a78bfa0d;--shadow-lg:10px 10px 0px 0px #a78bfa12;--brand-color:#a78bfa;--brand-info:#a78bfa}*{box-sizing:border-box;margin:0;padding:0;border-radius:var(--radius-none)!important}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5;transition:background-color .3s,color .3s;overflow-x:hidden}button,input,select,textarea{font-family:inherit;font-size:1rem}a{color:inherit;text-decoration:none}*,:before,:after{transition:border-color .2s,background-color .2s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.ui-card{background-color:var(--bg-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-md);margin-bottom:2rem;padding:1.5rem}.ui-card-header{margin-bottom:1rem}.ui-card-title{color:var(--text-primary);font-size:1.25rem;font-weight:600}.ui-card-description{color:var(--text-secondary);font-size:.875rem}.ui-button{cursor:pointer;border:1px solid var(--accent-primary);background-color:var(--accent-primary);color:var(--bg-primary);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-weight:500;transition:all .2s;display:inline-flex}.ui-button:hover{background-color:var(--accent-hover);box-shadow:4px 4px 0px 0px var(--accent-secondary)}.ui-button:active{box-shadow:2px 2px 0px 0px var(--accent-secondary);transform:translate(2px,2px)}.ui-button.outline{color:var(--text-primary);border:1px solid var(--border-color);background-color:#0000}.ui-button.outline:hover{border-color:var(--accent-primary);background-color:var(--bg-secondary)}.ui-button.ghost{color:var(--text-primary);background-color:#0000;border:none}.ui-button.ghost:hover{background-color:var(--bg-secondary)}.ui-input{background-color:var(--input-bg);border:1px solid var(--border-color);width:100%;color:var(--text-primary);outline:none;padding:.75rem;transition:border-color .2s}.ui-input:focus{border-color:var(--accent-primary)}.ui-select{background-color:var(--input-bg);border:1px solid var(--border-color);width:100%;color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'%3E%3C/path%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.25rem;outline:none;padding:.75rem}.ui-label{color:var(--text-primary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.ui-badge{background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.ui-badge.success{color:var(--brand-success);border-color:var(--brand-success);background-color:#10b9811a}.ui-badge.warning{color:var(--brand-warning);border-color:var(--brand-warning);background-color:#f59e0b1a}.ui-badge.error{color:var(--brand-error);border-color:var(--brand-error);background-color:#ef44441a}.stepper-container{flex-direction:column;gap:2rem;display:flex}.stepper-header{border-bottom:1px solid var(--border-color);justify-content:space-between;padding-bottom:1rem;display:flex}.stepper-item{text-align:center;color:var(--text-muted);flex:1;font-size:.875rem;position:relative}.stepper-item.active{color:var(--text-primary);font-weight:600}.stepper-item.completed{color:var(--brand-success)}.ui-tabs{border-bottom:2px solid var(--border-color);gap:1rem;margin-bottom:2rem;display:flex}.ui-tabs-trigger{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:1rem 1.5rem;font-weight:600;transition:all .2s}.ui-tabs-trigger.active{color:var(--brand-info);border-bottom-color:var(--brand-info)}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.metric-tile{background-color:var(--bg-primary);border:1px solid var(--border-color);padding:1.5rem}.metric-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.1em;margin-bottom:.5rem;font-size:.75rem;font-weight:700}.metric-value{margin-bottom:.25rem;font-size:2rem;font-weight:800}.metric-sub{color:var(--text-muted);font-size:.875rem}.ui-progress-container{background-color:var(--bg-tertiary);width:100%;height:12px;margin:1rem 0}.ui-progress-bar{background-color:var(--brand-info);height:100%;transition:width .3s ease-out}.ui-table-container{border:1px solid var(--border-color);background-color:var(--bg-primary);overflow-x:auto}.ui-table{border-collapse:collapse;text-align:left;width:100%}.ui-table th{background-color:var(--bg-secondary);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);border-bottom:1px solid var(--border-color);padding:1rem;font-size:.75rem;font-weight:700}.ui-table td{border-bottom:1px solid var(--border-color);padding:1rem;font-size:.875rem}.ui-table tr:last-child td{border-bottom:none}.ui-table tr:hover td{background-color:var(--bg-secondary)}.app-wrapper{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:3rem 2rem}.main-full{flex:1;width:100%}.top-navbar{background-color:var(--bg-primary);border-bottom:2px solid var(--border-color);z-index:100;justify-content:space-between;align-items:center;height:72px;padding:0 2rem;display:flex;position:sticky;top:0}.sidebar-logo{font-family:var(--font-heading);letter-spacing:-.04em;text-transform:uppercase;color:var(--text-primary);margin-bottom:3.5rem;font-size:1.5rem;font-weight:800}.sidebar-nav{flex-direction:column;gap:.25rem;display:flex}.nav-link{font-family:var(--font-heading);color:var(--text-secondary);letter-spacing:.02em;cursor:pointer;align-items:center;gap:1rem;padding:.875rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.nav-link:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.nav-link.active{background-color:var(--accent-primary);color:var(--bg-primary)}.top-nav{justify-content:flex-end;align-items:center;gap:1.5rem;padding-bottom:2rem;display:flex}.hero{text-align:center;max-width:800px;margin:8rem auto}.hero h1{letter-spacing:-.05em;margin-bottom:1.5rem;font-size:4rem;font-weight:800;line-height:1.1}.hero p{color:var(--text-secondary);margin-bottom:3rem;font-size:1.25rem}.wizard-step{max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.file-upload-zone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;padding:3rem;transition:border-color .2s}.file-upload-zone:hover{border-color:var(--accent-primary)}.item-list{flex-direction:column;gap:1rem;margin-top:1rem;display:flex}.item-entry{background-color:var(--bg-secondary);border:1px solid var(--border-color);align-items:center;gap:1rem;padding:1rem;display:flex}
