.sidebar{box-sizing:border-box;background:#fff;border-right:1px solid #e5e5e5;flex-direction:column;gap:4px;width:190px;height:100vh;padding:16px 10px;display:flex}.sidebar-titre{color:#333;margin:0 8px 16px;font-size:50px;font-weight:700}.sidebar-titre-k{color:#ff9500}.sidebar-item{text-align:left;color:#555;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:10px 12px;font-size:13px}.sidebar-item:hover{background:#f5f5f5}.sidebar-item-actif{color:#fff;background:#ff9500;font-weight:600}.sidebar-session{border-top:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:16px;display:flex}.sidebar-session-info{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-session-nom{color:#333;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-session-role{text-transform:uppercase;font-size:10px;font-weight:700}.sidebar-session-role-gerant{color:#ff9500}.sidebar-session-role-employe{color:#0057a3}.sidebar-session-changer{color:#666;cursor:pointer;background:0 0;border:1px solid #e5e5e5;border-radius:8px;flex-shrink:0;padding:6px 10px;font-size:11px}.abonnement-detail{max-width:720px;margin:0 auto;padding:32px;position:relative}.abonnement-detail h2{text-align:center;margin-bottom:4px;font-size:24px}.abonnement-echeance{color:#777;text-align:center;margin-bottom:28px;font-size:14px}.plans-grille{grid-template-columns:1fr 1fr;gap:20px;display:grid}.plan-carte{border:1px solid #e5e5e5;border-radius:14px;flex-direction:column;padding:24px;display:flex}.plan-carte-actif{border:2px solid #ff9500}.plan-nom{margin:0 0 4px;font-size:18px;font-weight:700}.plan-prix{color:#555;margin:0 0 16px;font-size:15px}.plan-fonctionnalites{flex-grow:1;margin:0 0 20px;padding:0;list-style:none}.plan-fonctionnalites li{color:#444;border-bottom:1px solid #f0f0f0;padding:6px 0;font-size:13px}.plan-bouton{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:10px;padding:10px;font-size:13px;font-weight:600}.plan-bouton:hover{background:#e08600}.plan-bouton-desactive{color:#999;cursor:default;background:#e5e5e5}.abonnement-annuler{color:#777;cursor:pointer;background:0 0;border:none;margin:32px auto 0;padding:8px 16px;font-size:14px;display:block}.abonnement-annuler:hover{color:#ff9500}.parametres{padding:32px}.parametres h2{margin-bottom:24px;font-size:24px}.parametres-section{margin-bottom:32px}.parametres-section h3{color:#555;margin-bottom:12px;font-size:16px}.abonnement-carte{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;justify-content:space-between;align-items:center;max-width:480px;padding:20px 24px;display:flex}.abonnement-plan{margin:0;font-size:16px;font-weight:600}.abonnement-statut{color:#1a9e50;margin:4px 0 0;font-size:13px}.abonnement-bouton{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:10px;padding:10px 18px;font-size:13px;font-weight:600}.abonnement-bouton:hover{background:#e08600}.parametres-carte{background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;gap:14px;padding:18px;display:flex}.parametres-champ{color:#777;flex-direction:column;gap:6px;font-size:12px;display:flex}.parametres-champ input{color:#333;border:1px solid #e5e5e5;border-radius:8px;padding:10px 12px;font-size:13px}.parametres-actions{align-items:center;gap:12px;display:flex}.parametres-bouton{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:8px;padding:10px 18px;font-size:13px;font-weight:600;display:inline-block}.parametres-bouton-fichier{background:#333}.parametres-bouton-texte{color:#c0433f;cursor:pointer;background:0 0;border:none;font-size:13px}.parametres-message{color:#3b6d11;font-size:12px;font-weight:600}.parametres-message-erreur{color:#c0433f}.parametres-sous-titre{color:#999;margin:0;font-size:12px}.parametres-logo-row{align-items:center;gap:16px;display:flex}.parametres-logo-apercu{color:#999;border:1px dashed #ccc;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:70px;height:70px;font-size:10px;display:flex;overflow:hidden}.parametres-logo-apercu img{object-fit:cover;width:100%;height:100%}.parametres-logo-actions{flex-direction:column;gap:8px;display:flex}.support{max-width:480px;padding:32px}.support h2{margin-bottom:8px;font-size:24px}.support-intro{color:#666;margin-bottom:28px;font-size:14px}.support-carte{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:12px;padding:16px 20px}.support-label{color:#999;text-transform:uppercase;letter-spacing:.03em;margin:0 0 4px;font-size:12px}.support-valeur{margin:0;font-size:15px;font-weight:600}.donut-conteneur{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.donut-svg{flex-shrink:0;width:160px;height:160px}.donut-total-label{fill:#999;font-size:9px}.donut-total-valeur{fill:#333;font-size:12px;font-weight:700}.donut-legende{flex-direction:column;gap:8px;min-width:180px;display:flex}.donut-legende-item{align-items:center;gap:8px;font-size:13px;display:flex}.donut-legende-pastille{border-radius:5px;flex-shrink:0;width:10px;height:10px}.donut-legende-label{color:#333;flex:1}.donut-legende-valeur{color:#999;font-weight:600}.donut-vide{color:#999;font-size:13px}.comptabilite{padding:32px}.comptabilite h2{margin-bottom:24px;font-size:24px}.comptabilite-grille{grid-template-columns:repeat(3,1fr);gap:16px;max-width:720px;margin-bottom:32px;display:grid}.comptabilite-carte{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;padding:20px}.comptabilite-carte-accent{background:#fff4e5;border-color:#ffd9a3}.comptabilite-label{color:#777;margin:0 0 6px;font-size:13px}.comptabilite-valeur{margin:0;font-size:20px;font-weight:700}.comptabilite-section h3{color:#555;margin-bottom:12px;font-size:16px}.comptabilite-outils{flex-wrap:wrap;gap:12px;display:flex}.comptabilite-bouton{color:#333;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:600}.comptabilite-bouton:hover{background:#f5f5f5}.comptabilite-verrou{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;max-width:480px;padding:16px 20px;display:flex}.comptabilite-verrou p{color:#666;margin:0;font-size:13px}.comptabilite-badge-premium{color:#999;white-space:nowrap;background:#f0f0f0;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.comptabilite-retour{color:#555;cursor:pointer;background:0 0;border:none;margin-bottom:16px;padding:0;font-size:14px}.comptabilite-retour:hover{color:#ff9500}.comptabilite-table{border-collapse:collapse;width:100%;max-width:720px;margin-top:24px}.comptabilite-table th,.comptabilite-table td{text-align:left;border-bottom:1px solid #eee;padding:10px 12px;font-size:13px}.comptabilite-table th{color:#888;text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:600}.comptabilite-table td{color:#333}.comptabilite-ligne-cliquable{cursor:pointer}.comptabilite-ligne-cliquable:hover{background:#f9f9f9}.comptabilite-entete{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.comptabilite-ajout-charge{gap:10px;max-width:500px;margin-top:16px;display:flex}.comptabilite-ajout-charge input{border:1px solid #e5e5e5;border-radius:10px;flex:1;padding:10px 12px;font-size:13px}.comptabilite-supprimer{color:#c0392b;cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.comptabilite-supprimer:hover{text-decoration:underline}.comptabilite-vide{color:#999;font-size:13px}.prise-commande{box-sizing:border-box;grid-template-columns:1.5fr 1fr;gap:16px;height:100%;padding:20px;display:grid}.prise-commande-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.prise-commande-header h2{margin:0;font-size:18px}.categories-row{gap:8px;display:flex}.categorie-chip{color:#666;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:20px;padding:6px 14px;font-size:13px}.categorie-chip-actif{color:#fff;background:#ff9500;border-color:#ff9500}.grille-articles{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.carte-article{text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:12px}.carte-article-icone{color:#ff9500;background:#fff3e0;border-radius:8px;justify-content:center;align-items:center;width:100%;height:54px;margin-bottom:8px;font-size:20px;font-weight:700;display:flex}.carte-article-nom{color:#333;margin:0;font-size:13px;font-weight:600}.carte-article-prix{color:#777;margin:4px 0 0;font-size:12px}.ticket-panel{background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;height:fit-content;padding:16px;display:flex}.ticket-panel h3{margin:0 0 12px;font-size:15px}.ticket-vide{color:#999;font-size:13px}.ticket-ligne{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.ticket-ligne-nom{color:#333;margin:0;font-size:13px}.ticket-ligne-qte{align-items:center;gap:8px;display:flex}.ticket-ligne-qte button{color:#ff9500;cursor:pointer;background:#fff3e0;border:1px solid #e5e5e5;border-radius:12px;width:24px;height:24px}.ticket-total{justify-content:space-between;align-items:center;padding:12px 0 4px;font-size:15px;font-weight:700;display:flex}.bouton-principal,.bouton-secondaire{cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:8px;padding:12px;font-size:14px;font-weight:600}.bouton-principal{color:#fff;background:#333}.bouton-secondaire{color:#fff;background:#ff9500}.bouton-principal:disabled,.bouton-secondaire:disabled{opacity:.5;cursor:not-allowed}.carte-article-photo{object-fit:cover;border-radius:8px;width:100%;height:100%}.ticket-entete-resto{text-align:center;border-bottom:1px dashed #e5e5e5;margin-bottom:12px;padding-bottom:12px}.ticket-resto-nom{color:#333;margin:0;font-size:15px;font-weight:700}.ticket-resto-adresse{color:#999;margin:4px 0 0;font-size:12px}.ticket-entete-numero{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.ticket-numero{color:#ff9500;background:#fff3e0;border-radius:8px;padding:3px 8px;font-size:12px;font-weight:700}.message-confirmation{color:#3b6d11;background:#eaf3de;border-radius:8px;margin-bottom:10px;padding:8px 10px;font-size:12px}.titre-paiement{color:#777;margin:12px 0 6px;font-size:12px}.boutons-paiement{flex-direction:column;gap:6px;display:flex}.bouton-paiement{cursor:pointer;color:#fff;border:none;border-radius:10px;padding:10px;font-size:13px;font-weight:600}.bouton-espece{background:#3b6d11}.bouton-mobile{background:#0b6fa1}.bouton-attente{background:#8e8e93}.ticket-numero{color:#ff9500;margin-bottom:10px;font-size:13px;font-weight:700}.boutons-paiement{flex-direction:column;gap:6px;margin-top:8px;display:flex}.bouton-paiement{cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px;font-size:13px;font-weight:600}.bouton-espece{color:#fff;background:#3b6d11}.bouton-mobile{color:#fff;background:#0057a3}.bouton-attente{color:#777;background:#fff;border:1px solid #e5e5e5}.bouton-paiement:disabled{opacity:.5;cursor:not-allowed}.grille-articles{grid-template-columns:repeat(5,1fr);gap:8px}.carte-article{padding:8px}.carte-article-icone{height:70px;margin-bottom:6px}.carte-article-nom{font-size:12px}.carte-article-prix{margin-top:2px;font-size:11px}.prise-commande{grid-template-columns:1fr 280px}.ticket-panel{box-sizing:border-box;width:280px}.ticket-lignes{max-height:calc(100vh - 340px);overflow-y:auto}.ticket-ligne{justify-content:space-between;align-items:center;gap:8px;padding:10px 0;display:flex}.ticket-ligne-info{flex:1;min-width:0}.ticket-ligne-nom{color:#333;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;font-weight:600;overflow:hidden}.ticket-ligne-prix{color:#999;margin:2px 0 0;font-size:12px}.ticket-ligne-qte{flex-shrink:0;align-items:center;gap:6px;display:flex}.ticket-ligne-qte button{color:#ff9500;cursor:pointer;background:#fff3e0;border:1px solid #e5e5e5;border-radius:11px;flex-shrink:0;width:22px;height:22px;font-size:13px}.ticket-ligne-qte span{text-align:center;min-width:14px;font-size:13px;font-weight:600}.ticket-total{border-top:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding:14px 0 4px;font-size:15px;font-weight:700;display:flex}.prise-commande-fullwidth{box-sizing:border-box;height:100%;padding:20px;position:relative}.prise-commande-fullwidth .grille-articles{grid-template-columns:repeat(6,1fr)}.panier-flottant{cursor:pointer;z-index:50;background:#ff9500;border:none;border-radius:30px;justify-content:center;align-items:center;width:60px;height:60px;font-size:26px;transition:transform .15s;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 4px 14px #00000040}.panier-flottant:hover{transform:scale(1.05)}.panier-flottant-cache{opacity:.4;cursor:default}.panier-flottant-badge{color:#fff;background:#c0433f;border:2px solid #f8f9fa;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 5px;font-size:12px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.ticket-overlay{z-index:60;background:#0000004d;position:fixed;inset:0}.ticket-panel-flottant{z-index:70;box-sizing:border-box;background:#fff;width:320px;padding:20px;animation:.2s glisser-panier;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-4px 0 20px #00000026}@keyframes glisser-panier{0%{transform:translate(100%)}to{transform:translate(0)}}.ticket-panel-header{justify-content:flex-end;margin-bottom:8px;display:flex}.ticket-fermer{color:#666;cursor:pointer;background:#f5f5f5;border:none;border-radius:14px;width:28px;height:28px;font-size:14px}.categories-row{flex-wrap:wrap}.bouton-imprimer{color:#fff;background:#333}.ticket-resto-telephone{color:#999;margin:2px 0 0;font-size:12px}.ticket-choix-paiement-label{color:#999;margin:14px 0 6px;font-size:12px}.boutons-choix-paiement{gap:8px;margin-bottom:10px;display:flex}.bouton-choix{color:#666;cursor:pointer;background:#fff;border:2px solid #e5e5e5;border-radius:10px;flex:1;padding:12px;font-size:13px;font-weight:600}.bouton-choix-espece.bouton-choix-actif{color:#3b6d11;background:#eaf3de;border-color:#3b6d11}.bouton-choix-mobile.bouton-choix-actif{color:#0057a3;background:#e6f0fa;border-color:#0057a3}.bouton-imprimer{color:#fff;background:#333;width:100%}.bouton-imprimer:disabled{opacity:.5;cursor:not-allowed}.zone-impression{display:none}@media print{body *{visibility:hidden}.zone-impression,.zone-impression *{visibility:visible}.zone-impression{width:100%;padding:20px;display:block;position:absolute;top:0;left:0}.impression-nom{text-align:center;margin:0;font-size:16px;font-weight:700}.impression-adresse,.impression-telephone{text-align:center;color:#333;margin:2px 0;font-size:12px}.impression-numero{text-align:center;margin:10px 0;font-size:13px;font-weight:700}.impression-ligne{justify-content:space-between;margin:4px 0;font-size:12px;display:flex}.impression-total{justify-content:space-between;margin:10px 0;font-size:14px;font-weight:700;display:flex}.impression-paiement{text-align:center;margin-top:10px;font-size:13px;font-weight:700}}.ticket-ligne-multiplicateur{color:#ff9500;flex-shrink:0;font-size:13px;font-weight:700}.scanner-header{margin-bottom:20px}.scanner-header h2{margin:0 0 14px;font-size:18px}.scanner-barre{background:#fff;border:1px solid #e5e5e5;border-radius:12px;align-items:center;gap:10px;max-width:500px;padding:14px 16px;display:flex}.scanner-icone{font-size:16px}.scanner-barre input{background:0 0;border:none;outline:none;flex:1;font-size:14px}.scanner-barre{align-items:center;gap:8px;display:flex}.bouton-scan-camera{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.scanner-overlay{z-index:80;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.scanner-panel{background:#fff;border-radius:16px;width:90%;max-width:420px;padding:20px;box-shadow:0 4px 20px #0003}.scanner-panel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.scanner-panel-header h3{color:#333;margin:0;font-size:15px}.zone-scan-camera{border-radius:10px;width:100%;overflow:hidden}.scanner-erreur{color:#c0433f;background:#fbeae9;border-radius:8px;margin-top:10px;padding:8px 10px;font-size:12px}.menu-produits{max-width:700px;padding:24px}.menu-produits h2{margin:0 0 16px;font-size:18px}.form-ajout{gap:8px;margin-bottom:20px;display:flex}.form-ajout input,.form-ajout select{border:1px solid #e5e5e5;border-radius:8px;padding:10px 12px;font-size:13px}.form-ajout input[type=text]{flex:2}.form-ajout input[type=number]{flex:1}.bouton-ajouter{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600}.liste-vide{color:#999;font-size:13px}.ligne-article{background:#fff;border:1px solid #e5e5e5;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 16px;display:flex}.ligne-article-nom{color:#333;margin:0;font-size:14px;font-weight:600}.ligne-article-meta{color:#777;margin:4px 0 0;font-size:12px}.ligne-article-actions{align-items:center;gap:16px;display:flex}.toggle-actif{color:#555;align-items:center;gap:6px;font-size:12px;display:flex}.bouton-supprimer{color:#c0433f;cursor:pointer;background:0 0;border:1px solid #f5c6c6;border-radius:8px;padding:6px 12px;font-size:12px}.message-erreur{color:#c0433f;margin:-12px 0 16px;font-size:13px}.input-photo{color:#999;cursor:pointer;border:1px dashed #ccc;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:70px;height:40px;font-size:11px;display:flex;overflow:hidden}.apercu-photo{object-fit:cover;width:100%;height:100%}.ligne-article-gauche{align-items:center;gap:12px;display:flex}.miniature-photo{color:#ff9500;cursor:pointer;background:#fff3e0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-weight:700;display:flex;overflow:hidden}.miniature-photo img{object-fit:cover;width:100%;height:100%}.ligne-article-commentaire{color:#999;margin:2px 0 0;font-size:12px;font-style:italic}.ligne-article-edition{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.ligne-article-edition input,.ligne-article-edition select{border:1px solid #e5e5e5;border-radius:8px;padding:8px 10px;font-size:13px}.input-commentaire{flex:1;min-width:160px}.ligne-article-edition-actions{gap:8px;margin-left:auto;display:flex}.bouton-modifier{color:#ff9500;cursor:pointer;background:#fff;border:1px solid #ff9500;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.bouton-modifier:hover{background:#fff4e5}.bouton-enregistrer{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.bouton-enregistrer:hover{background:#e08600}.bouton-annuler{color:#555;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.bouton-annuler:hover{background:#f5f5f5}.inventaire{padding:24px}.inventaire-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.inventaire-recherche{border:1px solid #ddd;border-radius:8px;flex:1;max-width:320px;padding:10px 14px;font-size:14px}.inventaire-alerte-globale{color:#8a4b06;background:#fff4e5;border:1px solid #f0a336;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:14px}.inventaire-vide{color:#888;text-align:center;padding:32px 0}.inventaire-liste{border:1px solid #eee;border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.inventaire-ligne{border-bottom:1px solid #eee;grid-template-columns:2fr 1fr 1fr 1fr;align-items:center;gap:12px;padding:12px 16px;display:grid}.inventaire-ligne:last-child{border-bottom:none}.inventaire-ligne-entete{color:#666;background:#fafafa;font-size:13px;font-weight:600}.inventaire-ligne-alerte{background:#fff8f0}.inventaire-produit{align-items:center;gap:8px;display:flex}.inventaire-produit-nom{font-weight:500}.inventaire-badge-alerte{color:#fff;white-space:nowrap;background:#e8543a;border-radius:999px;padding:2px 8px;font-size:11px}.inventaire-input-stock,.inventaire-input-seuil{border:1px solid #ddd;border-radius:6px;width:70px;padding:6px 8px;font-size:14px}.inventaire-ajuster{gap:6px;display:flex}.inventaire-ajuster button{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;width:28px;height:28px;font-size:16px;line-height:1}.inventaire-ajuster button:hover{background:#f5f5f5}.pave-pin{flex-direction:column;align-items:center;gap:20px;padding:10px 0 4px;display:flex}.pave-pin-dots{gap:14px;display:flex}.pave-pin-dot{background:0 0;border:1.5px solid #ff9500;border-radius:8px;width:16px;height:16px}.pave-pin-dot-remplie{background:#ff9500}.pave-pin-clavier{grid-template-columns:repeat(3,56px);gap:10px;display:grid}.pave-pin-touche{color:#333;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:28px;width:56px;height:56px;font-size:20px;font-weight:600}.pave-pin-touche:active{background:#f0f0f0}.pave-pin-touche-vide{cursor:default;background:0 0;border:none}.pave-pin-touche-effacer{color:#999;font-size:16px}.caisse{padding:24px}.caisse h2{margin:0 0 4px;font-size:18px}.caisse-sous-titre{color:#999;margin:0 0 20px;font-size:13px}.caisse-vide{color:#999;text-align:center;padding:60px 0;font-size:14px}.liste-tickets-attente{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.carte-ticket-attente{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:14px}.carte-ticket-header{justify-content:space-between;margin-bottom:10px;display:flex}.carte-ticket-numero{color:#ff9500;font-size:13px;font-weight:700}.carte-ticket-heure{color:#999;font-size:12px}.carte-ticket-ligne{color:#555;justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.carte-ticket-total{border-top:1px dashed #e5e5e5;justify-content:space-between;margin-top:8px;padding:8px 0;font-size:14px;font-weight:700;display:flex}.carte-ticket-actions{gap:6px;margin-top:10px;display:flex}.bouton-encaisser{cursor:pointer;color:#fff;border:none;border-radius:8px;flex:1;padding:8px;font-size:12px;font-weight:600}.bouton-encaisser.bouton-espece{background:#3b6d11}.bouton-encaisser.bouton-mobile{background:#0057a3}.caisse-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.bloc-service{background:#fff;border:1px solid #e5e5e5;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:14px 16px;display:flex}.statut-service{border-radius:20px;padding:6px 12px;font-size:13px;font-weight:700}.statut-ouvert{color:#3b6d11;background:#eaf3de}.statut-ferme{color:#c0433f;background:#fbeaea}.bouton-demarrer{color:#fff;cursor:pointer;background:#3b6d11;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600}.bouton-cloturer{color:#fff;cursor:pointer;background:#c0433f;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600}.recap-jour{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px;display:grid}.recap-carte{background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;gap:6px;padding:14px;display:flex}.recap-label{color:#999;font-size:12px}.recap-valeur{color:#333;font-size:16px;font-weight:700}.recap-carte-total{background:#fff3e0;border-color:#ffd9a8}.recap-carte-total .recap-valeur{color:#ff9500}.bloc-comptage{background:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:20px;padding:18px}.bloc-comptage h3{margin:0 0 6px;font-size:15px}.comptage-texte{color:#777;margin:0 0 14px;font-size:12px}.comptage-ligne{color:#555;justify-content:space-between;margin-bottom:12px;font-size:13px;display:flex}.comptage-input{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:8px;width:100%;margin-bottom:12px;padding:10px 12px;font-size:14px}.comptage-ecart{border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:13px;font-weight:700}.ecart-ok{color:#3b6d11;background:#eaf3de}.ecart-surplus{color:#0057a3;background:#e6f0fa}.ecart-manque{color:#c0433f;background:#fbeaea}.comptage-actions{gap:10px;display:flex}.bouton-annuler{cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:8px;flex:1;padding:10px;font-size:13px}.bouton-confirmer-cloture{color:#fff;cursor:pointer;background:#c0433f;border:none;border-radius:8px;flex:2;padding:10px;font-size:13px;font-weight:600}.bouton-confirmer-cloture:disabled{opacity:.5;cursor:not-allowed}.bloc-code{background:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:20px;padding:18px}.bloc-code h3{margin:0 0 6px;font-size:15px}.bloc-code{background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;align-items:center;margin-bottom:20px;padding:18px;display:flex}.bloc-code h3{align-self:flex-start;margin:0 0 6px;font-size:15px}.message-erreur-code{color:#c0433f;margin:8px 0 0;font-size:12px}.bouton-annuler-pin{color:#999;cursor:pointer;background:0 0;border:none;margin-top:14px;font-size:13px}.caisse-verrouillee{text-align:center;flex-direction:column;align-items:center;padding:60px 20px;display:flex}.caisse-verrouillee h2{margin:0 0 6px;font-size:18px}.bloc-sorties{margin:20px 0}.bloc-sorties-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.bouton-ajouter-sortie{color:#ff9500;cursor:pointer;background:#fff;border:1px solid #ff9500;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.bouton-ajouter-sortie:hover{background:#fff4e5}.form-sortie{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:16px;display:flex}.form-sortie input{border:1px solid #e5e5e5;border-radius:8px;padding:10px 12px;font-size:13px}.form-sortie input[type=text]{flex:2;min-width:200px}.form-sortie input[type=number]{flex:1;min-width:120px}.form-sortie-actions{gap:8px;display:flex}.bouton-confirmer-sortie{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600}.bouton-confirmer-sortie:hover{background:#e08600}.liste-sorties{flex-direction:column;gap:8px;display:flex}.ligne-sortie{background:#fff;border:1px solid #eee;border-radius:10px;grid-template-columns:2fr 1fr 1fr;align-items:center;padding:10px 14px;font-size:13px;display:grid}.ligne-sortie-motif{color:#333;font-weight:500}.ligne-sortie-heure{color:#999;text-align:center}.ligne-sortie-montant{color:#c0392b;text-align:right;font-weight:600}.historique{padding:24px}.historique-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.historique-header h2{margin:0;font-size:18px}.selecteur-date{border:1px solid #e5e5e5;border-radius:8px;padding:8px 12px;font-size:13px}.historique-recap{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.historique-recap-carte{background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;gap:6px;padding:14px;display:flex}.historique-recap-label{color:#999;font-size:12px}.historique-recap-valeur{color:#333;font-size:16px;font-weight:700}.historique-filtres{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.historique-recherche{border:1px solid #e5e5e5;border-radius:8px;flex:1;min-width:200px;padding:10px 12px;font-size:13px}.historique-filtre-paiement{gap:8px;display:flex}.filtre-chip{color:#666;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e5e5e5;border-radius:20px;padding:8px 14px;font-size:12px}.filtre-chip-actif{color:#fff;background:#ff9500;border-color:#ff9500}.historique-vide{text-align:center;color:#999;padding:60px 0;font-size:14px}.historique-liste{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.historique-carte-ticket{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:14px}.historique-carte-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.historique-carte-numero{color:#333;font-size:13px;font-weight:700}.historique-carte-heure{color:#999;flex:1;font-size:12px}.historique-carte-badge{color:#fff;border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}.historique-carte-ligne{color:#555;justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.historique-carte-total{border-top:1px dashed #e5e5e5;justify-content:space-between;margin-top:8px;padding:8px 0 0;font-size:14px;font-weight:700;display:flex}.barchart-conteneur{align-items:flex-end;gap:6px;height:180px;padding-top:20px;display:flex}.barchart-colonne{flex-direction:column;flex:1;align-items:center;min-width:0;height:100%;display:flex}.barchart-valeur{color:#999;white-space:nowrap;margin-bottom:4px;font-size:10px}.barchart-barre-fond{background:#f5f5f5;border-radius:4px;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.barchart-barre{border-radius:4px 4px 0 0;width:100%;min-height:2px;transition:height .2s}.barchart-label{color:#999;white-space:nowrap;margin-top:6px;font-size:10px}.barchart-vide{color:#999;font-size:13px}.rapports{padding:24px}.rapports-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.rapports-header h2{margin:0;font-size:18px}.rapports-periode{gap:8px;display:flex}.periode-chip{color:#666;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:20px;padding:8px 14px;font-size:12px}.periode-chip-actif{color:#fff;background:#ff9500;border-color:#ff9500}.rapports-grille{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px;display:grid}.rapports-carte{background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.rapports-label{color:#999;font-size:12px}.rapports-valeur{color:#333;font-size:20px;font-weight:700}.rapports-carte-accent{background:#fff3e0;border-color:#ffd9a8}.rapports-carte-accent .rapports-valeur{color:#ff9500}.rapports-section{background:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:20px;padding:20px}.rapports-section h3{margin:0 0 16px;font-size:15px}.employes{max-width:700px;padding:24px}.employes h2{margin:0 0 16px;font-size:18px}.employes-form{gap:8px;margin-bottom:10px;display:flex}.employes-form input,.employes-form select{border:1px solid #e5e5e5;border-radius:8px;padding:10px 12px;font-size:13px}.employes-form input[type=text]:first-child{flex:2}.employes-bouton-ajouter{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600}.employes-erreur{color:#c0433f;margin:0 0 16px;font-size:12px}.employes-vide{color:#999;font-size:13px}.employe-ligne{background:#fff;border:1px solid #e5e5e5;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 16px;display:flex}.employe-nom{color:#333;margin:0;font-size:14px;font-weight:600}.employe-meta{color:#777;margin:4px 0 0;font-size:12px}.employe-role{font-weight:700}.employe-role-gerant{color:#ff9500}.employe-role-employe{color:#0057a3}.employe-actions{align-items:center;gap:16px;display:flex}.employe-toggle{color:#555;align-items:center;gap:6px;font-size:12px;display:flex}.employe-supprimer{color:#c0433f;cursor:pointer;background:0 0;border:1px solid #f5c6c6;border-radius:8px;padding:6px 12px;font-size:12px}.service-ferme{text-align:center;max-width:400px;margin:0 auto;padding:60px 40px}.service-ferme h2{color:#333;margin:0 0 10px;font-size:18px}.service-ferme p{color:#777;margin:0 0 20px;font-size:13px;line-height:1.5}.bouton-aller-caisse{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:10px;padding:12px 24px;font-size:14px;font-weight:600}.splash-screen{background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:24px;height:100vh;display:flex}.splash-titre{font-size:65px;font-weight:700}.splash-k{color:#ff9500}.splash-spinner{border:3px solid #e5e5e5;border-top-color:#ff9500;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.cgu-cgv{max-width:780px;margin:0 auto;padding:40px 24px 60px;position:relative}.cgu-cgv-retour{color:#555;cursor:pointer;background:0 0;border:none;margin-bottom:24px;padding:0;font-size:14px;display:block}.cgu-cgv-retour:hover{color:#ff9500}.cgu-cgv-retour-bas{margin-top:40px}.cgu-cgv-titre{text-align:center;margin:0 0 8px;font-size:48px;font-weight:800}.cgu-cgv-k{color:#ff9500}.cgu-cgv h1{text-align:center;margin:0 0 4px;font-size:22px}.cgu-cgv-sous-titre{text-align:center;color:#777;margin-bottom:40px;font-size:13px;font-style:italic}.cgu-cgv h2{color:#000;border-bottom:3px solid #ff9500;margin-top:40px;margin-bottom:16px;padding-bottom:8px;font-size:19px}.cgu-cgv h3{color:#ff9500;margin-top:24px;margin-bottom:8px;font-size:16px}.cgu-cgv p{color:#333;margin:0 0 12px;font-size:14px;line-height:1.6}.cgu-cgv ul{margin:0 0 12px;padding-left:20px}.cgu-cgv li{color:#333;margin-bottom:6px;font-size:14px;line-height:1.6}.mentions-legales{max-width:780px;margin:0 auto;padding:40px 24px 60px;position:relative}.mentions-legales-retour{color:#555;cursor:pointer;background:0 0;border:none;margin-bottom:24px;padding:0;font-size:14px;display:block}.mentions-legales-retour:hover{color:#ff9500}.mentions-legales-titre{text-align:center;margin:0 0 8px;font-size:48px;font-weight:800}.mentions-legales-k{color:#ff9500}.mentions-legales h1{text-align:center;margin:0 0 4px;font-size:22px}.mentions-legales-sous-titre{text-align:center;color:#777;margin-bottom:40px;font-size:13px;font-style:italic}.mentions-legales h2{color:#ff9500;margin-top:28px;margin-bottom:10px;font-size:17px}.mentions-legales p{color:#333;margin:0 0 12px;font-size:14px;line-height:1.6}.login-screen{background:#fff;flex-direction:column;justify-content:flex-start;align-items:center;gap:32px;height:100vh;padding-top:15vh;display:flex;position:relative}.login-titre{font-size:48px;font-weight:700}.login-k{color:#ff9500}.login-form{flex-direction:column;gap:12px;width:280px;display:flex}.login-form input{border:1px solid #e5e5e5;border-radius:10px;padding:12px 14px;font-size:14px}.login-form button{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:10px;padding:12px;font-size:14px;font-weight:600}.login-form button:hover{background:#e08600}.login-aide{color:#555;font-size:14px;text-decoration:none}.login-aide:hover{color:#ff9500}.login-toggle{gap:8px;margin-bottom:20px;display:flex}.login-toggle button{color:#666;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:8px;flex:1;padding:10px;font-size:13px}.login-toggle-actif{font-weight:600;color:#fff!important;background:#ff9500!important;border-color:#ff9500!important}.login-erreur{color:#c0433f;margin:-8px 0 8px;font-size:12px}.login-info{color:#3b6d11;margin:-8px 0 8px;font-size:12px}.login-retour{cursor:pointer;margin-top:12px;font-size:13px;color:#999!important;background:0 0!important;border:none!important}.login-liens-haut{align-items:center;gap:16px;display:flex;position:absolute;top:24px;right:24px}.login-lien-cgu-haut{color:#555;cursor:pointer;background:0 0;border:none;padding:0;font-size:14px}.login-lien-cgu-haut:hover{color:#ff9500}.login-cgu-checkbox{color:#555;text-align:left;cursor:pointer;align-items:flex-start;gap:8px;margin:4px 0;font-size:13px;display:flex}.login-cgu-checkbox input{margin-top:2px}.login-lien-cgu{color:#ff9500;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline;display:inline}.chatbot-container{z-index:1000;flex-direction:column;align-items:flex-end;display:flex;position:fixed;bottom:20px;right:20px}.chatbot-bouton{color:#fff;cursor:pointer;background:#f5941f;border:none;border-radius:50%;width:56px;height:56px;font-size:24px;box-shadow:0 4px 12px #0003}.chatbot-fenetre{background:#fff;border-radius:12px;flex-direction:column;width:320px;height:420px;margin-bottom:12px;display:flex;overflow:hidden;box-shadow:0 8px 24px #0003}.chatbot-header{color:#fff;background:#f5941f;justify-content:space-between;align-items:center;padding:12px 16px;font-weight:600;display:flex}.chatbot-fermer{color:#fff;cursor:pointer;background:0 0;border:none;font-size:16px}.chatbot-messages{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.chatbot-bulle{border-radius:12px;max-width:80%;padding:8px 12px;font-size:14px;line-height:1.4}.chatbot-bulle-bot{background:#f1f1f1;border-bottom-left-radius:2px;align-self:flex-start}.chatbot-bulle-user{color:#fff;background:#f5941f;border-bottom-right-radius:2px;align-self:flex-end}.chatbot-saisie{border-top:1px solid #eee;gap:8px;padding:8px;display:flex}.chatbot-saisie input{border:1px solid #ddd;border-radius:8px;flex:1;padding:8px 10px;font-size:14px}.chatbot-saisie button{color:#fff;cursor:pointer;background:#f5941f;border:none;border-radius:8px;padding:8px 12px;font-size:14px}*{box-sizing:border-box}body{background:#f8f9fa;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-layout{height:100vh;display:flex}.app-contenu{flex:1;overflow-y:auto}.vue-placeholder{text-align:center;color:#999;padding:40px}.app-verification-restaurant{background:#f8f9fa;justify-content:center;align-items:center;min-height:100vh;display:flex}.app-verification-restaurant form{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:380px;padding:40px;box-shadow:0 4px 20px #0000000f}.app-verification-restaurant h2{margin:0 0 6px;font-size:18px}.app-verification-restaurant p{color:#999;margin:0 0 20px;font-size:13px}.app-verification-restaurant input{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:8px;width:100%;margin-bottom:14px;padding:12px;font-size:14px}.app-verification-restaurant button{color:#fff;cursor:pointer;background:#ff9500;border:none;border-radius:10px;width:100%;padding:12px;font-size:14px;font-weight:600}.app-verification-erreur{color:#c0433f;margin:-8px 0 12px;font-size:12px}
