*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #4B1C4B;--primary-hover: #3b1f45;--primary-light: #704a70;--secondary-color: #8A3B8E;--tertiary-color: #99bfaa;--tertiary-dark: #648b78;--accent-color: #ee792c;--accent-dark: #bd6025;--success-color: #28a745;--danger-color: #dc3545;--dark: #1a1a1a;--gray-100: #f8f9fa;--gray-200: #e9ecef;--gray-300: #dee2e6;--gray-400: #ced4da;--gray-600: #6c757d;--gray-800: #343a40;--white: #ffffff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--gray-100);color:var(--dark);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:var(--white);padding:2rem;box-shadow:0 4px 6px #0000001a}.header-content{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;position:relative}.logo-section{display:flex;align-items:center;justify-content:center}.flotek-logo{height:60px;width:auto}.header-title{font-size:1.5rem;font-weight:600;margin:0}.logout-button{position:absolute;right:0;top:0;background:#fff3;color:var(--white);border:2px solid rgba(255,255,255,.3);padding:.5rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.logout-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.tabs{background:var(--white);box-shadow:0 2px 4px #0000000d;display:flex;max-width:1400px;margin:0 auto;padding:0 2rem}.tab{padding:1rem 2rem;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:500;color:var(--gray-600);cursor:pointer;transition:all .2s}.tab:hover{color:var(--primary-color);background:var(--gray-100)}.tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.main-content{flex:1;max-width:1400px;width:100%;margin:2rem auto;padding:0 2rem}.quote-container{background:var(--white);border-radius:12px;padding:2rem;padding-bottom:250px;box-shadow:0 2px 8px #00000014}.product-title{font-size:1.75rem;font-weight:700;color:var(--primary-color);margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--gray-200)}.section{margin-bottom:2rem}.section-header{font-size:1.25rem;font-weight:600;color:var(--gray-800);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--gray-300)}.form-group{margin-bottom:1.5rem;display:grid;grid-template-columns:2fr 1fr;gap:1rem;align-items:center}.form-label{display:flex;flex-direction:column;gap:.25rem}.label-text{font-weight:500;color:var(--gray-800)}.label-hint{font-size:.875rem;color:var(--gray-600)}.form-input-wrapper{display:flex;align-items:center;gap:.5rem;justify-content:flex-start}.input-controls{display:flex;align-items:center;gap:.5rem}.increment-btn{width:36px;height:36px;border:2px solid var(--gray-300);background:var(--white);color:var(--gray-800);border-radius:6px;font-size:1.25rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;-webkit-user-select:none;user-select:none}.increment-btn:hover{background:var(--primary-color);color:var(--white);border-color:var(--primary-color);transform:scale(1.05)}.increment-btn:active{transform:scale(.95)}.increment-btn:disabled{opacity:.4;cursor:not-allowed}.increment-btn:disabled:hover{background:var(--white);color:var(--gray-800);border-color:var(--gray-300);transform:scale(1)}.form-input{max-width:120px;padding:.6rem;border:2px solid var(--gray-300);border-radius:6px;font-size:1rem;transition:border-color .2s;text-align:center}.form-input:focus{outline:none;border-color:var(--primary-color)}.unit-label{font-size:.875rem;color:var(--gray-600);font-weight:500}.discount-input{max-width:80px}.summary-grid{position:sticky;bottom:0;left:0;right:0;z-index:100;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem;padding:1.5rem;background:var(--white);box-shadow:0 -4px 12px #0000001a;border-top:3px solid var(--primary-color)}.summary-card{background:var(--gray-100);padding:1.5rem;border-radius:8px;border-left:4px solid var(--primary-color)}.summary-card.total{background:var(--primary-color);color:var(--white);border-left:none}.card-label{font-size:.875rem;font-weight:500;opacity:.85;margin-bottom:.5rem}.card-value{font-size:2rem;font-weight:700}.card-subvalue{font-size:1rem;opacity:.75;margin-top:.25rem}.line-items{margin-top:2rem}.line-items-table{width:100%;border-collapse:collapse;margin-top:1rem}.line-items-table th{background:var(--gray-100);padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--gray-800);border-bottom:2px solid var(--gray-300)}.line-items-table td{padding:.75rem 1rem;border-bottom:1px solid var(--gray-200)}.line-items-table tr:hover{background:var(--gray-100)}.line-items-table .item-name{font-weight:500;min-width:200px}.line-items-table .text-right{text-align:right}.line-items-table .text-muted{color:var(--gray-600);font-size:.875rem}.line-items-table .subtotal-row{background:var(--gray-100);font-weight:600}.line-items-table .total-row{background:var(--primary-color);color:var(--white);font-weight:700;font-size:1.1rem}@media (max-width: 768px){.line-items:before{content:"← Scroll horizontally to view all columns →";display:block;text-align:center;font-size:.75rem;color:var(--gray-600);padding:.5rem;background:var(--gray-100);border-radius:4px;margin-bottom:.5rem}}.action-buttons{display:flex;gap:1rem;margin-top:2rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.btn-primary{background:var(--primary-color);color:var(--white)}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #0066cc4d}.btn-secondary{background:var(--gray-200);color:var(--gray-800)}.btn-secondary:hover{background:var(--gray-300)}.footer{background:var(--gray-800);color:var(--white);text-align:center;padding:1.5rem;margin-top:auto}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);padding:2rem}.login-container{background:var(--white);border-radius:16px;padding:2.5rem 4rem 3rem;box-shadow:0 20px 60px #0000004d;max-width:640px;width:100%;text-align:center}.login-header{margin-bottom:2rem}.login-logo{height:70px;width:auto;max-width:100%;margin-bottom:1.5rem}.login-title{font-size:1.75rem;font-weight:700;color:var(--primary-color);margin-bottom:.5rem}.login-subtitle{font-size:1rem;color:var(--gray-600)}.login-mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0}.mode-button{background:var(--white);border:2px solid var(--gray-300);border-radius:12px;padding:2rem 1.5rem;cursor:pointer;transition:all .3s;display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}.mode-button:hover{border-color:var(--primary-color);background:var(--gray-100);transform:translateY(-4px);box-shadow:0 8px 16px #4b1c4b26}.mode-button svg{color:var(--primary-color)}.mode-title{font-size:1.125rem;font-weight:700;color:var(--primary-color)}.mode-description{font-size:.875rem;color:var(--gray-600)}.partner-mode:hover{border-color:var(--tertiary-color)}.partner-mode:hover svg{color:var(--tertiary-color)}.partner-mode:hover .mode-title{color:var(--tertiary-color)}.back-button{width:100%;margin-top:1rem;padding:.75rem;background:transparent;color:var(--gray-600);border:none;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s}.back-button:hover{background:var(--gray-100);color:var(--gray-800)}.login-form{margin:2rem 0}.pin-input-wrapper{position:relative;margin-bottom:1rem}.pin-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--gray-400)}.pin-input{width:100%;padding:1rem 1rem 1rem 3rem;border:2px solid var(--gray-300);border-radius:8px;font-size:1.5rem;text-align:center;letter-spacing:.5rem;transition:all .2s}.pin-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4b1c4b1a}.pin-input.error{border-color:var(--danger-color);animation:shake .4s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.error-message{color:var(--danger-color);font-size:.875rem;margin-bottom:1rem;font-weight:500}.login-button{width:100%;padding:1rem;background:var(--primary-color);color:var(--white);border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.login-button:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #4b1c4b4d}.login-button:disabled{opacity:.5;cursor:not-allowed}.login-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.login-footer p{font-size:.875rem;color:var(--gray-600)}@media (max-width: 480px){.login-container{padding:2rem 1.5rem}.login-logo{height:60px}.login-title{font-size:1.5rem}.pin-input{font-size:1.25rem;letter-spacing:.3rem}.login-mode-buttons{grid-template-columns:1fr}.mode-button{padding:1.5rem 1rem}.mode-title{font-size:1rem}}.partner-mode .hide-in-partner,.partner-mode .card-subvalue{display:none!important}@media (max-width: 768px){.header{padding:1.5rem 1rem}.header-content{gap:.75rem}.flotek-logo{height:50px}.header-title{font-size:1.25rem}.logout-button{position:static;margin-top:.5rem;width:100%;max-width:200px}.tabs{overflow-x:auto;padding:0 1rem;-webkit-overflow-scrolling:touch}.tab{padding:.875rem 1.25rem;font-size:.9rem;white-space:nowrap}.main-content{padding:0 1rem;margin:1rem auto}.quote-container{padding:1.5rem 1rem;padding-bottom:180px}.product-title{font-size:1.5rem}.section-header{font-size:1.1rem}.form-group{grid-template-columns:1fr;gap:.5rem;margin-bottom:1.25rem}.form-label{margin-bottom:.25rem}.form-input-wrapper{justify-content:flex-start}.form-input{max-width:100%;width:100%;padding:.875rem;font-size:16px}.discount-input{max-width:120px}.summary-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;padding:.75rem;margin-top:.5rem}.summary-card{padding:.75rem}.card-label{font-size:.65rem;margin-bottom:.25rem}.card-value{font-size:1.1rem}.card-subvalue{font-size:.65rem;margin-top:.15rem}.line-items{margin-top:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.line-items-table{min-width:800px;font-size:.85rem}.line-items-table th,.line-items-table td{padding:.5rem;white-space:nowrap}.action-buttons{flex-direction:column}.btn{width:100%;justify-content:center;padding:1rem}}@media (max-width: 480px){.header{padding:1rem .75rem}.flotek-logo{height:50px}.header-title{font-size:1.1rem}.quote-container{padding:1rem .75rem;padding-bottom:150px;border-radius:8px}.summary-grid{grid-template-columns:repeat(2,1fr);gap:.4rem;padding:.5rem}.summary-card{padding:.5rem}.card-label{font-size:.6rem}.card-value{font-size:1rem}.card-subvalue{font-size:.6rem}}
