body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.modal-overlay{align-items:center;background:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2000}.modal-content{background:#fff;border-radius:12px;max-height:90vh;max-width:800px;min-width:400px;overflow-y:auto;padding:20px;position:relative;width:80%}.close-btn{background:none;border:none;cursor:pointer;font-size:20px;position:absolute;right:15px;top:10px}@media print{body{font-size:12px;-webkit-print-color-adjust:exact}.no-print{display:none}.print-container{margin:0 auto;width:80%}.invoice-container{color:#333;font-family:Arial,sans-serif;margin:0 auto;max-width:800px}.header-top{align-items:center;background-color:#fff;border-bottom:1px solid var(--main-color);display:flex;gap:20px;justify-content:space-between;left:0;padding:10px 20px;position:fixed;top:0;width:100%;z-index:1}.table-container{font-size:12px;margin-top:220px;page-break-after:avoid}.table-container .table{font-size:26px}.combined-container{margin-bottom:20px}.last-page .table-container{left:50%;margin:0 auto;page-break-before:always;page-break-inside:avoid;position:absolute;top:50%;transform:translate(-50%,-50%);width:80%}.fixed-table{margin:0 auto;max-width:220px;transform:scale(.95);width:100%}.invoice-footer,.invoice-header{margin-bottom:20px;text-align:center}.invoice-title{font-size:44px;font-weight:700}.invoice-info{display:flex;justify-content:space-between;margin-bottom:10px}.client-info,.company-info{flex:1 1}.table{border-collapse:collapse;font-size:12px;margin-bottom:20px;page-break-before:always;width:100%}.table td,.table th{border:1px solid #ddd;font-size:10px;padding:8px;text-align:right}.table th{background-color:#f2f2f2;font-weight:700}.table tr:nth-child(2n){background-color:#f9f9f9}.table tr:last-child{page-break-after:always}.totals{font-size:18px;font-weight:700;margin-top:20px;text-align:right}.invoice-footer{color:#777;font-size:12px}.logo{height:auto;max-width:100px;width:20%}.print-footer{bottom:0;padding-bottom:1rem}.print-fixed,.print-footer{left:0;position:fixed;width:100%}.print-fixed{bottom:4rem;margin-top:0}.last-rows,.print-fixed{page-break-before:always}.print-last-page,.print-only{bottom:0;display:block;page-break-before:always;position:fixed;width:100%}.print-only{left:0}.assiettes-container,.total-payment-container{display:none;page-break-before:always}.last-page .assiettes-container,.last-page .total-payment-container{background-color:#fff;box-shadow:0 -1px 5px #0000001a;display:block;margin-top:120px;padding:10px;width:100%}.footer{display:block}button{box-shadow:none;outline:none}.sidebar{height:100vh;overflow-y:scroll;scrollbar-width:none;width:250px}.sidebar::-webkit-scrollbar{display:none}}.auth-container{border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 8px #0000001a;margin:2rem auto;max-width:800px;padding:1.5rem;text-align:center}.auth-container h2{margin-bottom:1rem}.auth-container form{display:flex;flex-direction:column}.auth-container input{border:1px solid #ddd;border-radius:4px;font-size:1rem;margin-bottom:1rem;padding:.5rem}.auth-container button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.7rem}.auth-container button:hover{background-color:#0056b3}.auth-container p{font-size:.9rem;margin-top:1rem}.auth-container a{color:#007bff;text-decoration:none}.auth-container a:hover{text-decoration:underline}@media (max-width:600px){.auth-container{padding:1rem}.auth-container button,.auth-container input{font-size:.9rem}}fieldset{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;margin-bottom:1.5rem;padding:1rem}legend{color:#333;font-size:1.1rem;font-weight:700;padding:0 .5rem}label{display:inline-block;font-size:1rem;margin-right:1rem}