*,*:before,*:after{box-sizing:border-box}html{font-size:16px}:root{--app-height: 100vh}body{font-family:Arial,sans-serif;font-size:16px;margin:0;background-color:#f4f4f4;color:#333;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app-shell{display:flex;flex-direction:column;min-height:var(--app-height);width:100%;overflow-x:hidden;overflow-y:auto}img,picture,video,canvas,svg{display:block;max-width:100%}.logo-container{width:100%;padding:20px 0;text-align:center;background-color:#fff}.app-logo{max-width:80%;height:auto;display:inline-block}@media (min-width: 481px) and (max-width: 768px){.app-logo{max-width:200px}}@media (max-width: 480px){.app-logo{max-width:150px}}.app-nav{background-color:#232075;padding:10px 5%;color:#fff;display:flex;flex-wrap:wrap;align-items:center;gap:15px}.app-nav a{color:#fff;font-weight:700;text-decoration:none;padding:5px 0}#app-shell .app-nav a.router-link-exact-active{color:#00bfff;border-bottom-color:#00bfff}.app-nav .logout-button{margin-left:auto;padding:8px 12px;background-color:#232075;font-weight:700;color:#fff;border:none;border-radius:4px;cursor:pointer}.app-nav .logout-button:hover{background-color:#00bfff}.app-content{flex-grow:1;padding:20px 5%;width:100%;display:flex;flex-direction:column;box-sizing:border-box}.app-footer{padding:5px 5%;background-color:#232075;color:#fff;text-align:center;font-size:.9rem}.app-footer a{color:#fff;font-weight:700;text-decoration:none;padding:5px 0}.app-version{text-align:center;font-size:.7rem;color:#333;padding:10px}@media (max-width: 768px){.app-nav{justify-content:center}.app-nav .logout-button{margin-left:0;width:100%;margin-top:10px}}.login-page[data-v-cbd12fa8]{display:flex;justify-content:center;align-items:center;min-height:100%;width:100%}.auth-container[data-v-cbd12fa8]{position:relative;width:100%;max-width:420px;padding:25px 20px;background-color:#fff;border-radius:8px;text-align:center;box-sizing:border-box}.auth-form h3[data-v-cbd12fa8]{margin-top:0;margin-bottom:20px;color:#333;font-size:1.5rem}.auth-form input[type=email][data-v-cbd12fa8],.auth-form input[type=password][data-v-cbd12fa8]{width:100%;padding:12px;margin-bottom:12px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:1rem}.auth-buttons[data-v-cbd12fa8]{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.auth-buttons button[data-v-cbd12fa8]{padding:12px 15px;border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:700;transition:opacity .2s ease-in-out;background-color:#232075;color:#fff}.auth-buttons button[data-v-cbd12fa8]:hover{opacity:.9}.or-divider[data-v-cbd12fa8]{display:flex;align-items:center;text-align:center;color:#888;margin:25px 0}.or-divider[data-v-cbd12fa8]:before,.or-divider[data-v-cbd12fa8]:after{content:"";flex:1;border-bottom:1px solid #ddd}.or-divider[data-v-cbd12fa8]:before{margin-right:.5em}.or-divider[data-v-cbd12fa8]:after{margin-left:.5em}.social-signin-container[data-v-cbd12fa8]{display:flex;flex-direction:column;gap:12px}.social-signin button[data-v-cbd12fa8]{width:100%;padding:12px 15px;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;transition:background-color .2s ease-in-out,border-color .2s;display:flex;align-items:center;justify-content:center;gap:12px}.social-signin button img[data-v-cbd12fa8]{width:20px;height:20px;object-fit:contain;flex-shrink:0}.social-signin .microsoft-button[data-v-cbd12fa8]{background-color:#fff;color:#5e5e5e;border:1px solid #8c8c8c}.social-signin .microsoft-button[data-v-cbd12fa8]:hover{background-color:#f2f2f2}.error-message[data-v-cbd12fa8]{color:red;margin-top:15px;font-size:.9rem;font-weight:500}@media (min-width: 520px){.auth-container[data-v-cbd12fa8]{border:1px solid #ddd;box-shadow:0 4px 12px #0000001a;padding:35px 40px}}.loading-overlay[data-v-cbd12fa8]{position:absolute;inset:0;background-color:#ffffffd9;display:flex;justify-content:center;align-items:center;border-radius:8px;z-index:10}.spinner[data-v-cbd12fa8]{width:50px;height:50px;border-radius:50%;border:5px solid #f3f3f3;border-top-color:#232075;animation:spin-cbd12fa8 1s linear infinite}@keyframes spin-cbd12fa8{to{transform:rotate(360deg)}}.modal-overlay[data-v-3aca3d3c]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-3aca3d3c]{background:#fff;padding:2rem;border-radius:8px;width:90%;max-width:500px}.form-group[data-v-3aca3d3c]{margin-bottom:1rem}.form-group label[data-v-3aca3d3c]{display:block;margin-bottom:.5rem}.form-group input[data-v-3aca3d3c],.form-group select[data-v-3aca3d3c]{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:4px}.form-group-checkbox[data-v-3aca3d3c]{display:flex;align-items:center;gap:10px;margin-bottom:1rem}.modal-actions[data-v-3aca3d3c]{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.page-header[data-v-b1fc945c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header button[data-v-b1fc945c]{display:flex;align-items:center;gap:8px}.btn[data-v-b1fc945c]{padding:.625rem 1rem;border:none;border-radius:.375rem;cursor:pointer;font-weight:500}.btn-primary[data-v-b1fc945c]{background-color:#3b82f6;color:#fff}.btn-primary[data-v-b1fc945c]:hover{background-color:#2563eb}table[data-v-b1fc945c]{width:100%;border-collapse:collapse}th[data-v-b1fc945c],td[data-v-b1fc945c]{border:1px solid #ddd;padding:12px;text-align:left}th[data-v-b1fc945c]{background-color:#f4f4f4}.customer-row[data-v-b1fc945c]{cursor:pointer}.customer-row[data-v-b1fc945c]:hover{background-color:#f9f9f9}.actions[data-v-b1fc945c]{display:flex;gap:10px;align-items:center}.icon-button[data-v-b1fc945c]{background:none;border:none;cursor:pointer;padding:4px}.status-badge[data-v-b1fc945c]{padding:4px 8px;border-radius:12px;color:#fff;font-size:.8rem}.status-badge.active[data-v-b1fc945c]{background-color:#28a745}.status-badge.inactive[data-v-b1fc945c]{background-color:#6c757d}.saving-overlay[data-v-b1fc945c]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffffb3;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;font-size:1.2rem}.spinner[data-v-b1fc945c]{border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;width:40px;height:40px;animation:spin-b1fc945c 1s linear infinite;margin-bottom:10px}@keyframes spin-b1fc945c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page-header[data-v-f9cfac19]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header button[data-v-f9cfac19]{display:flex;align-items:center;gap:8px}.page-header button[data-v-f9cfac19]:disabled{background-color:#ccc;cursor:not-allowed}.btn[data-v-f9cfac19]{padding:.625rem 1rem;border:none;border-radius:.375rem;cursor:pointer;font-weight:500}.btn-primary[data-v-f9cfac19]{background-color:#3b82f6;color:#fff}.btn-primary[data-v-f9cfac19]:hover{background-color:#2563eb}table[data-v-f9cfac19]{width:100%;border-collapse:collapse}th[data-v-f9cfac19],td[data-v-f9cfac19]{border:1px solid #ddd;padding:8px;text-align:left;vertical-align:middle}th[data-v-f9cfac19]{background-color:#f4f4f4}.edit-row[data-v-f9cfac19]{background-color:#fffde7}.new-customer-row[data-v-f9cfac19]{background-color:#e8f5e9}td input[data-v-f9cfac19],td select[data-v-f9cfac19]{width:95%;padding:6px;border:1px solid #ccc;border-radius:4px}td input[placeholder="Last Name"][data-v-f9cfac19]{margin-top:4px}.actions[data-v-f9cfac19]{display:flex;gap:10px;align-items:center}.icon-button[data-v-f9cfac19]{background:none;border:none;cursor:pointer;padding:4px}.icon-button[data-v-f9cfac19]:disabled{opacity:.4;cursor:not-allowed}.status-badge[data-v-f9cfac19]{padding:4px 8px;border-radius:12px;color:#fff;font-size:.8rem;white-space:nowrap}.status-badge.active[data-v-f9cfac19]{background-color:#28a745}.status-badge.inactive[data-v-f9cfac19]{background-color:#6c757d}.saving-overlay[data-v-f9cfac19]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#ffffffb3;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;font-size:1.2rem}.spinner[data-v-f9cfac19]{border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;width:40px;height:40px;animation:spin-f9cfac19 1s linear infinite;margin-bottom:10px}@keyframes spin-f9cfac19{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
