/* ======================= Tablette du mécano (« POS seul », rôle Mécano POS) =======================
   Caisse réduite à l'essentiel : gros bouton Scanner, Main d'œuvre, gros +/−, trois moyens de paiement, un seul bouton Encaisser.
   Les prix des articles ne se tapent pas (seule la main d'œuvre a un prix à écrire). Chargé après pos.css et scanner.css. */
.pos-simple .pos-q{height:46px;font-size:16px}
.pos-simple .pos-scan{min-height:46px;padding:0 18px;background:var(--copper);border-color:var(--copper);color:var(--copper-ink);font-size:15px;font-weight:700}
.pos-simple .pos-scan svg{width:22px;height:22px}
.pos-simple .pos-scan span{display:inline!important}
.pos-simple .pos-libres .btn{min-height:46px;width:auto;padding:0 14px;font-size:14px}
.pos-simple .pos-libres .btn span{display:inline}
.pos-simple .pil{min-height:36px;font-size:13px;padding:0 14px}
.pos-simple .prod .nm{font-size:14px}
.pos-simple .line{padding:10px 0;gap:6px 10px}
.pos-simple .line .nm{font-size:15px}
.pos-simple .line>b.num{font-size:16px}
.pos-simple .line .qty button{width:40px;height:40px;font-size:20px}
.pos-simple .line .qty span{min-width:30px;text-align:center;font-size:16px;font-weight:700}
.pos-simple .line input{width:110px;height:40px;font-size:16px}
.pos-simple .line .prix-fixe{font-size:14px;color:var(--muted)}
.pos-simple .line .rm{width:40px;height:40px;font-size:22px}
.pos-simple .pays{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.pos-simple .pay{height:56px!important;flex-direction:column!important;gap:3px;font-size:13px!important;font-weight:600}
.pos-simple .pay img{width:24px;height:24px}
.pos-simple .recu .inp{min-height:42px;height:42px;font-size:16px}
.pos-simple .cart-btns{display:flex!important;gap:8px}
.pos-simple .cart-btns .pay-go{flex:1}
.pos-simple .cart-btns .btn.pf{width:96px;min-height:64px;font-size:13px}
.pos-simple .pay-go{min-height:64px}
.pos-simple .pay-go .lib{font-size:13px}
.pos-simple .pay-go .num{font-size:1.5rem!important}
.pos-simple .pos-top .tb{min-height:40px}
/* Fenêtre « Le client a-t-il payé ? » */
.conf-simple{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding-top:6px}
.conf-moyen{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700}
.conf-moyen img{width:36px;height:36px;border-radius:8px}
.conf-total{font-size:2.2rem;font-weight:800;letter-spacing:-.02em}
.conf-aide{margin:0;padding:10px 12px;border-radius:10px;background:var(--warn-soft);font-size:15px;max-width:420px}
.conf-rendu{margin:0;padding:10px 14px;border-radius:10px;background:var(--ok-soft);font-size:17px}
.conf-rendu b{font-size:1.3em}
.conf-btns .btn{min-height:52px;font-size:16px;flex:1}
.pos-simple .pay span{white-space:nowrap;font-size:12.5px}
/* Haut de la caisse tablette : qui est connecté (toucher = changer de personne) */
.pos-simple .tb-qui{font-weight:700}
.pos-simple .tb-qui span+span{font-weight:400;opacity:.75}
/* Tablette du garage : écran des prénoms puis clavier du code (public/tablette.js) */
.tb-entree{width:min(560px,100%);align-items:center;text-align:center;gap:12px;position:relative;z-index:1}
.tb-logo{width:180px;max-width:60%}
.tb-titre{margin:4px 0 0;font-size:26px}
.tb-sous{margin:0;color:var(--muted);font-size:16px}
.tb-prenoms{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;width:100%;margin-top:8px}
.tb-prenom{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 10px;border-radius:16px;border:2px solid var(--line);background:var(--panel2);color:var(--ink);font:inherit;font-size:20px;font-weight:700;cursor:pointer}
.tb-prenom:active{transform:scale(.97);border-color:var(--copper)}
.tb-av{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--copper);color:var(--copper-ink);font-size:30px}
.tab-lien{background:none;border:0;color:var(--muted);text-decoration:underline;font:inherit;font-size:13px;margin-top:10px;cursor:pointer;padding:8px}
.tb-retour{margin-top:6px}
.tb-points{display:flex;gap:18px;margin:8px 0 2px}
.tb-points i{width:20px;height:20px;border-radius:50%;border:2px solid var(--ink);transition:background .1s}
.tb-points i.plein{background:var(--ink)}
.tb-points.secoue{animation:tbSecoue .35s}
@keyframes tbSecoue{20%,60%{transform:translateX(-10px)}40%,80%{transform:translateX(10px)}}
.tb-err{min-height:22px;color:var(--bad);font-weight:600;font-size:15px}
.tb-clavier{display:grid;grid-template-columns:repeat(3,88px);gap:12px}
.tb-clavier button{height:76px;border-radius:50%;border:1.5px solid var(--line);background:var(--panel2);color:var(--ink);font:inherit;font-size:30px;font-weight:600;cursor:pointer}
.tb-clavier button:active{background:var(--copper);color:var(--copper-ink)}
.tb-clavier .tb-autre{font-size:16px;font-weight:500;border-color:transparent;background:none;border-radius:12px}
@media (max-height:760px){.tb-logo{width:130px}.tb-clavier button{height:62px}.tb-clavier{grid-template-columns:repeat(3,76px);gap:10px}.tb-entree{gap:8px;padding:18px 28px}}
/* Utilisateurs & rôles : cadre « Tablette du garage » */
.tb-cadre{margin-top:var(--esp-4)}
.tb-liste{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.tb-ligne{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:8px 10px;border-radius:8px;background:var(--panel2)}
.tb-ligne .vt-act{margin-left:auto}
.conf-moyen svg{width:30px;height:30px}.conf-moyen span{white-space:nowrap}
.tb-sous.tb-nouveau{color:var(--copper);font-weight:700;max-width:420px}
.tb-l-txt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.tb-ligne{align-items:center}
.tb-ajout{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.tb-lienpage{margin:var(--esp-3) 0 0}.tb-lienpage a{color:var(--copper);font-weight:600}
