*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#750b12,#c22630);color:#000;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root,.auth-error,.auth-loading{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-error,.auth-loading{background:linear-gradient(135deg,#c22630,#c22630)}.auth-error-content,.auth-loading-content{background:#fff;border-radius:24px;box-shadow:0 20px 60px #00000026;max-width:400px;padding:48px;text-align:center;width:100%}.auth-spinner{animation:spin 1s linear infinite;border:4px solid #e1e8ed;border-radius:50%;border-top-color:#c22630;height:48px;margin:0 auto 24px;width:48px}.auth-loading-content p{color:#6c757d;font-size:16px;font-weight:500;margin:0}.auth-error-content h2{color:#dc3545;font-size:24px;font-weight:700;margin:0 0 16px}.auth-error-content p{color:#6c757d;font-size:14px;line-height:1.5;margin:0 0 24px}.auth-error-content button{background:linear-gradient(135deg,#c22630,#e74c3c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.auth-error-content button:hover{box-shadow:0 8px 24px #c2263066;transform:translateY(-2px)}.auth-error-content button:active{transform:translateY(0)}.spending-summary{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-bottom:32px;padding:32px}.summary-header{margin-bottom:32px;text-align:center}.summary-header h2{color:#c22630;font-size:28px;font-weight:700;margin-bottom:8px}.employee-name{color:#c22630;font-size:18px;font-weight:600;margin-bottom:4px}.date-range{color:#000;font-size:14px;font-weight:500}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);min-height:120px}.summary-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #e1e8ed;border-radius:12px;display:flex;min-width:0;padding:24px;transition:transform .2s ease,box-shadow .2s ease;width:100%}.summary-card.average-spent,.summary-card.total-spent,.summary-card.total-spent2,.summary-card.transaction-count,.summary-card.unique-items{background:linear-gradient(135deg,#750b12,#750b12);color:#fff}.card-icon{font-size:32px;margin-right:16px;opacity:.9}.card-content{flex:1 1;min-width:0}.card-content h3{font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;opacity:.9;text-transform:uppercase}.amount,.count{font-size:24px;font-weight:700;margin:0}@media (max-width:1200px) and (min-width:769px){.summary-cards{gap:18px;grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.spending-summary{margin-bottom:20px;padding:20px}.summary-cards{gap:16px;grid-template-columns:1fr}.summary-card{padding:20px}.card-icon{font-size:24px;margin-right:12px}.amount,.count{font-size:20px}}.frequent-items-table{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a;overflow:hidden;padding:32px}.table-header{margin-bottom:32px;text-align:center}.table-header h2{color:#000;font-size:28px;font-weight:700;margin-bottom:8px}.table-subtitle{color:#c22630;font-size:14px;font-weight:600}.table-container{border-radius:12px;box-shadow:0 4px 20px #00000014;overflow-x:auto}.items-table{background:#fff;border-collapse:collapse;width:100%}.items-table thead{background:linear-gradient(135deg,#750b12,#750b12);color:#fff}.items-table th{border:none;font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px 12px;text-align:left;text-transform:uppercase}.items-table th:first-child{border-top-left-radius:8px}.items-table th:last-child{border-top-right-radius:8px}.items-table tbody tr{border-bottom:1px solid #f1f3f4;transition:background-color .2s ease}.items-table tbody tr:hover{background-color:#f8f9fa}.items-table tbody tr:last-child{border-bottom:none}.items-table td{font-size:14px;padding:16px 12px;vertical-align:middle}.rank{text-align:center;width:80px}.rank-number{color:#2c3e50;font-weight:600}.trophy{font-size:16px;margin-left:8px}.item-name{color:#c22630;font-weight:600;min-width:200px}.item-text{display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.frequency{text-align:center;width:120px}.frequency-number{background:#750b12;border-radius:20px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.quantity{color:#c22630;font-weight:600;text-align:center;width:100px}.avg-price,.total-spent{text-align:right;width:120px}.amount{color:#27ae60;font-weight:600}.top-1{background:linear-gradient(90deg,#ffd7001a,#fff0)}.top-2{background:linear-gradient(90deg,#c0c0c01a,#fff0)}.top-3{background:linear-gradient(90deg,#cd7f321a,#fff0)}.no-data{color:#7f8c8d;padding:60px 20px;text-align:center}.no-data-icon{font-size:48px;margin-bottom:16px}.no-data p{font-size:16px;font-weight:500}.table-footer{border-top:1px solid #e1e8ed;margin-top:20px;padding-top:20px;text-align:center}.table-footer p{color:#7f8c8d;font-size:12px;font-style:italic}@media (max-width:768px){.frequent-items-table{padding:20px}.table-header h2{font-size:24px}.items-table{font-size:12px}.items-table td,.items-table th{padding:12px 8px}.item-text{max-width:150px}.avg-price,.frequency,.quantity,.rank,.total-spent{width:auto}}@media (max-width:480px){.items-table td:nth-child(4),.items-table td:nth-child(6),.items-table th:nth-child(4),.items-table th:nth-child(6){display:none}}.loading-spinner-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}.loading-message{color:#fff;font-size:14px;font-weight:500;margin-top:16px}.error-message-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:20px auto;max-width:400px;padding:40px;text-align:center}.error-icon{font-size:48px;margin-bottom:16px}.error-title{color:#e74c3c;font-size:20px;font-weight:600;margin-bottom:12px}.error-message{color:#666;font-size:14px;line-height:1.5;margin-bottom:20px}.retry-button{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background-color .2s ease}.retry-button:hover{background:#5a6dd8}.login-card{animation:slideIn .6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border-radius:24px;box-shadow:0 20px 60px #00000026;margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:500px;padding:48px;text-align:center}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-card-content{align-items:center;display:flex;flex-direction:column;gap:24px}.login-icon{align-items:center;animation:pulse 2s infinite;background:linear-gradient(135deg,#c22630,#e74c3c);border-radius:20px;box-shadow:0 8px 24px #c226304d;display:flex;height:80px;justify-content:center;width:80px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.login-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#c22630,#e74c3c);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:32px;font-weight:700;margin:0}.login-subtitle{color:#6c757d;font-size:16px;line-height:1.5;margin:0;max-width:400px}.login-button{align-items:center;background:linear-gradient(135deg,#0078d4,#106ebe);border:none;border-radius:12px;box-shadow:0 4px 16px #0078d44d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;min-width:240px;overflow:hidden;padding:16px 32px;position:relative;transition:all .3s ease}.login-button:hover{box-shadow:0 8px 24px #0078d466;transform:translateY(-2px)}.login-button:active{transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.login-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.login-button:hover:before{left:100%}.login-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.login-error{align-items:center;animation:shake .5s ease-in-out;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;display:flex;font-size:14px;gap:8px;padding:12px 16px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.login-features{border-top:1px solid #e1e8ed;display:flex;flex-direction:column;gap:12px;margin-top:16px;padding-top:24px}.feature-item{align-items:center;color:#6c757d;display:flex;font-size:14px;gap:8px;justify-content:center}.feature-item svg{flex-shrink:0}@media (max-width:768px){.login-card{border-radius:16px;margin:20px;padding:32px 24px}.login-title{font-size:28px}.login-button,.login-subtitle{font-size:14px}.login-button{min-width:200px;padding:14px 24px}.login-features{gap:8px}.feature-item{font-size:12px}}.user-profile{margin-bottom:32px}.user-welcome{animation:fadeInUp .6s ease-out;color:#fff;margin-bottom:24px;text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.user-welcome h2{font-size:32px;font-weight:700;margin:0 0 8px;text-shadow:0 2px 10px #0003}.user-welcome p{font-size:16px;margin:0;opacity:.9;text-shadow:0 1px 5px #0003}.user-info-card{align-items:center;animation:slideInUp .6s ease-out .2s both;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;display:flex;gap:16px;margin:0 auto;max-width:500px;padding:20px 24px;position:relative}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.user-avatar{align-items:center;background:linear-gradient(135deg,#c22630,#e74c3c);border-radius:50%;box-shadow:0 4px 16px #c226304d;color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:56px;justify-content:center;overflow:hidden;position:relative;width:56px}.user-avatar:before{animation:rotate 3s linear infinite;background:linear-gradient(45deg,#c22630,#e74c3c,#c22630);border-radius:50%;bottom:-2px;content:"";left:-2px;position:absolute;right:-2px;top:-2px;z-index:-1}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.user-details{flex:1 1;min-width:0}.user-details h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 4px}.user-details h3,.user-details p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-details p{color:#6c757d;font-size:14px;margin:0}.user-actions{position:relative}.dropdown-toggle{align-items:center;background:none;border:none;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .3s ease}.dropdown-toggle:hover{background:#f8f9fa;color:#c22630;transform:scale(1.1)}.dropdown-menu{animation:dropdownFadeIn .3s ease-out;background:#fff;border:1px solid #e1e8ed;border-radius:12px;box-shadow:0 8px 32px #00000026;min-width:140px;padding:8px;position:absolute;right:0;top:100%;z-index:1000}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-item{align-items:center;background:none;border:none;border-radius:8px;color:#2c3e50;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 12px;transition:all .2s ease;width:100%}.dropdown-item:hover{background:#f8f9fa;color:#c22630}.logout-btn{color:#dc3545}.logout-btn:hover{background:#fff5f5;color:#dc3545}.logout-btn:disabled{cursor:not-allowed;opacity:.6}.mini-spinner{animation:spin 1s linear infinite;border:2px solid #dc35454d;border-radius:50%;border-top-color:#dc3545;height:16px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.user-welcome h2{font-size:24px}.user-welcome p{font-size:14px}.user-info-card{margin:0 20px;padding:16px 20px}.user-avatar{height:48px;width:48px}.user-avatar,.user-details h3{font-size:16px}.user-details p{font-size:12px}}.app{background:linear-gradient(135deg,#c22630,#c22630);min-height:100vh;padding:20px}.app-container{margin:0 auto;max-width:1200px;width:100%}.app-header{color:#fff;margin-bottom:40px;text-align:center}.app-header h1{font-size:48px;font-weight:700;margin-bottom:12px;text-shadow:0 2px 10px #0003}.app-header p{font-size:18px;font-weight:300;opacity:.9;text-shadow:0 1px 5px #0003}.search-form-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border-radius:20px;box-shadow:0 10px 40px #00000026;margin-bottom:40px;padding:40px}.search-form{gap:24px}.form-group,.search-form{display:flex;flex-direction:column}.form-group label{color:#c22630;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.form-input{background:#f8f9fa;border:2px solid #e1e8ed;border-radius:12px;color:#2c3e50;font-size:30px;font-weight:500;padding:16px 20px;transition:all .3s ease}.form-input:focus{background:#fff;border-color:#c22630;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-input:disabled{cursor:not-allowed;opacity:.6}.form-input::placeholder{color:#adb5bd;font-weight:400}.date-range-group{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.quick-dates{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.quick-date-btn{background:#0000;border:2px solid #c22630;border-radius:25px;color:#c22630;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .3s ease;white-space:nowrap}.quick-date-btn:hover{background:#c22630;color:#fff;transform:translateY(-1px)}.quick-date-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.submit-btn{background:linear-gradient(135deg,#c22630,#c22630);border:none;border-radius:12px;box-shadow:0 6px 20px #667eea4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:18px 32px;text-transform:uppercase;transition:all .3s ease}.submit-btn:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.results-container{display:flex;flex-direction:column;gap:32px}.no-transactions{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-top:32px;padding:60px 40px;text-align:center}.no-transactions-icon{font-size:64px;margin-bottom:24px}.no-transactions h3{color:#2c3e50;font-size:24px;font-weight:700;margin-bottom:16px}.no-transactions p{color:#7f8c8d;font-size:16px;line-height:1.6;margin-bottom:8px}@media (max-width:768px){.app{padding:10px}.app-header h1{font-size:36px}.app-header p{font-size:16px}.search-form-container{margin-bottom:24px;padding:24px}.search-form{gap:20px}.date-range-group{gap:16px;grid-template-columns:1fr}.quick-dates{gap:8px}.quick-date-btn{font-size:12px;padding:10px 16px}.submit-btn{font-size:14px;padding:16px 24px}.results-container{gap:24px}.no-transactions{padding:40px 20px}.no-transactions-icon{font-size:48px}.no-transactions h3{font-size:20px}.no-transactions p{font-size:14px}}@media (max-width:480px){.quick-dates{flex-direction:column}.quick-date-btn{text-align:center;width:100%}}
/*# sourceMappingURL=main.89636851.css.map*/