@import "https://fonts.googleapis.com/css2?family=Amazon+Ember:wght@300;400;500;700&family=Inter:wght@300;400;500;600;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}body{color:#0f1111;background:#fafafa;font-family:Inter,Amazon Ember,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.6}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{color:#fff;background:linear-gradient(135deg,#232f3e 0%,#131a22 100%);padding:2rem 0;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000026}.app-header:before{content:"";pointer-events:none;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.header-content{z-index:1;max-width:1200px;margin:0 auto;padding:0 2rem;position:relative}.logo-section{align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.app-header h1{background:linear-gradient(135deg,#f90 0%,#ffb84d 100%);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700}.tagline{color:#f90;text-transform:uppercase;letter-spacing:.5px;background:#ff99001a;border:1px solid #f90;border-radius:20px;padding:.25rem .75rem;font-size:.9rem;font-weight:500}.header-content p{opacity:.9;max-width:600px;font-size:1.1rem;font-weight:300;line-height:1.5}.app-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem}.controls{background:#fff;border:1px solid #e7e7e7;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:1.5rem;display:flex;box-shadow:0 2px 8px #00000014}.locale-selector{align-items:center;gap:.75rem;display:flex}.locale-selector label{color:#0f1111;font-size:.9rem;font-weight:500}.locale-selector select{color:#0f1111;background:#fff;border:1px solid #d5d9d9;border-radius:8px;min-width:150px;padding:.75rem 1rem;font-size:.9rem;transition:all .2s}.locale-selector select:focus{border-color:#f90;outline:none;box-shadow:0 0 0 2px #f903}.action-buttons{flex-wrap:wrap;gap:.75rem;display:flex}.action-buttons button{cursor:pointer;border:none;border-radius:8px;min-width:120px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:all .2s;position:relative;overflow:hidden}.process-btn{color:#fff;background:#f90;box-shadow:0 2px 4px #ff99004d}.process-btn:hover:not(:disabled){background:#e88b00;transform:translateY(-1px);box-shadow:0 4px 8px #f906}.download-btn{color:#fff;background:#146eb4;box-shadow:0 2px 4px #146eb44d}.download-btn:hover{background:#0f5a96;transform:translateY(-1px);box-shadow:0 4px 8px #146eb466}.clear-btn{color:#fff;background:#d13212;box-shadow:0 2px 4px #d132124d}.clear-btn:hover:not(:disabled){background:#b12704;transform:translateY(-1px);box-shadow:0 4px 8px #d1321266}button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.drop-area-container{margin-bottom:2rem}.drop-area{text-align:center;cursor:pointer;background:#fff;border:2px dashed #d5d9d9;border-radius:12px;padding:4rem 2rem;transition:all .3s;position:relative;overflow:hidden}.drop-area:before{content:"";background:linear-gradient(90deg,#0000,#ff99001a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.drop-area:hover:before,.drop-area.drag-active:before{left:100%}.drop-area:hover,.drop-area.drag-active{background:#fff8f0;border-color:#f90;transform:translateY(-2px);box-shadow:0 8px 25px #ff990026}.drop-content{z-index:1;flex-direction:column;align-items:center;gap:1.5rem;display:flex;position:relative}.drop-icon{opacity:.7;font-size:4rem}.drop-area p{color:#0f1111;margin:0;font-size:1.2rem;font-weight:500}.drop-hint{color:#565959;font-size:1rem!important;font-weight:400!important}.file-list{background:#fff;border:1px solid #e7e7e7;border-radius:12px;margin-top:2rem;padding:1.5rem;box-shadow:0 4px 12px #00000014}.file-list h3{color:#0f1111;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.3rem;font-weight:600;display:flex}.file-list h3:before{content:"📋";font-size:1.2rem}.file-item{background:#fafafa;border:1px solid #e7e7e7;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:1.25rem;transition:all .2s;display:flex}.file-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.file-item.processing{background:#f0f8ff;border-color:#146eb4;box-shadow:0 0 0 2px #146eb41a}.file-item.completed{background:#f0fff4;border-color:#067d62;box-shadow:0 0 0 2px #067d621a}.file-item.error{background:#fff5f5;border-color:#d13212;box-shadow:0 0 0 2px #d132121a}.file-info{flex-wrap:wrap;flex:1;align-items:center;gap:1.5rem;display:flex}.file-name{color:#0f1111;font-size:1rem;font-weight:600}.file-size,.estimated-rows{color:#565959;background:#f0f2f2;border-radius:4px;padding:.25rem .5rem;font-size:.85rem}.report-type{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:.4rem .8rem;font-size:.75rem;font-weight:600}.report-type.business{color:#146eb4;background:#e3f2fd;border:1px solid #146eb4}.report-type.ppc{color:#7b1fa2;background:#f3e5f5;border:1px solid #7b1fa2}.report-type.inventory{color:#067d62;background:#e8f5e8;border:1px solid #067d62}.report-type.settlement{color:#f90;background:#fff3e0;border:1px solid #f90}.report-type.unknown{color:#565959;background:#f5f5f5;border:1px solid #565959}.file-status{align-items:center;gap:.75rem;display:flex}.progress-bar{background:#e7e7e7;border-radius:3px;width:120px;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#146eb4,#f90);border-radius:3px;height:100%;transition:width .3s}.status-icon{font-size:1.5rem}.error-message{color:#d13212;background:#ffebee;border-left:4px solid #d13212;border-radius:6px;width:100%;margin-top:.75rem;padding:.75rem;font-size:.9rem}.preview-container{background:#fff;border:1px solid #e7e7e7;border-radius:12px;padding:0;overflow:hidden;box-shadow:0 4px 12px #00000014}.preview-container h3{color:#0f1111;background:#f7f8fa;border-bottom:1px solid #e7e7e7;align-items:center;gap:.5rem;margin:0;padding:1.5rem;font-size:1.4rem;font-weight:600;display:flex}.preview-container h3:before{content:"👁️";font-size:1.3rem}.file-preview{border:none;border-radius:0;margin-bottom:0;overflow:hidden}.file-preview:not(:last-child){border-bottom:2px solid #e7e7e7}.preview-header{background:#fafafa;border-bottom:1px solid #e7e7e7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;display:flex}.preview-title{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.preview-header h4{color:#0f1111;margin:0;font-size:1.2rem;font-weight:600}.download-csv-btn{color:#fff;cursor:pointer;background:#067d62;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.download-csv-btn:hover{background:#055a4e;transform:translateY(-1px);box-shadow:0 4px 8px #067d624d}.preview-stats{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.row-count,.col-count{color:#565959;background:#f0f2f2;border-radius:4px;padding:.3rem .6rem;font-size:.85rem;font-weight:500}.quality-warnings{background:#fff8e1;border-bottom:1px solid #e7e7e7;border-left:4px solid #f90;padding:1.5rem}.quality-warnings h5{color:#e65100;margin-bottom:.75rem;font-size:1rem;font-weight:600}.warning-item{color:#e65100;margin-bottom:.5rem;padding:.25rem 0;font-size:.9rem}.table-container{max-height:400px;overflow:auto}.preview-table{border-collapse:collapse;width:100%;font-size:.85rem}.preview-table th,.preview-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e7e7e7;padding:1rem .75rem}.preview-table th{z-index:10;color:#0f1111;background:#f7f8fa;font-weight:600;position:sticky;top:0}.header-content{flex-direction:column;gap:.5rem;display:flex}.field-name{color:#0f1111;font-weight:600}.field-type{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:.2rem .4rem;font-size:.75rem;font-weight:500}.field-type.string{color:#146eb4;background:#e3f2fd}.field-type.int64{color:#067d62;background:#e8f5e8}.field-type.float64{color:#7b1fa2;background:#f3e5f5}.field-type.date{color:#f90;background:#fff3e0}.field-type.bool{color:#d13212;background:#ffebee}.cell-content{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.null-value{color:#999;opacity:.7;font-style:italic}.more-columns,.more-rows{color:#565959;text-align:center;font-style:italic}.more-rows td{background:#f7f8fa;padding:1.5rem;font-weight:500}.profile-summary{background:#f7f8fa;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.profile-item{color:#0f1111;font-size:.9rem}.profile-item strong{color:#0f1111;font-weight:600}.null-percentages{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.null-stat{color:#0f1111;background:#e7e7e7;border-radius:4px;padding:.25rem .6rem;font-size:.8rem;font-weight:500}@media (max-width:768px){.app-header{padding:1.5rem 0}.header-content{padding:0 1rem}.app-header h1{font-size:2.2rem}.logo-section{flex-direction:column;align-items:flex-start;gap:.5rem}.app-main{padding:1rem}.controls{flex-direction:column;align-items:stretch}.action-buttons{justify-content:center}.drop-area{padding:2rem 1rem}.file-info{flex-direction:column;align-items:flex-start;gap:.75rem}.preview-header{flex-direction:column;align-items:flex-start}.preview-stats{justify-content:flex-start}.preview-title{justify-content:space-between;width:100%}}@media (max-width:480px){.app-header h1{font-size:1.8rem}.header-content p{font-size:1rem}.tagline{padding:.2rem .6rem;font-size:.8rem}}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.process-btn:disabled{animation:1.5s ease-in-out infinite pulse}*{transition:color .2s,background-color .2s,border-color .2s,transform .2s,box-shadow .2s}
