.state-note{color:var(--muted);font-size:13.5px;text-align:center;padding:24px 0}.ticket-screen{flex:1;display:flex;flex-direction:column;align-items:center;gap:22px;padding-top:8px}.ticket-card{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 20px 24px;display:flex;flex-direction:column;align-items:center;gap:6px}.ticket-card .service-name{color:var(--muted);font-size:13.5px}.ticket-card .number{font-family:var(--font-display);font-weight:700;font-size:64px;line-height:1;letter-spacing:-.01em;color:var(--ink);margin:6px 0}.ticket-card .guichet-row{display:flex;align-items:baseline;gap:8px;margin-top:4px}.ticket-card .guichet-label{color:var(--muted);font-size:13.5px}.ticket-card .guichet-value{font-family:var(--font-display);font-weight:600;font-size:20px}.status-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;font-size:13.5px;font-weight:500}.status-pill .dot{width:7px;height:7px;border-radius:50%}.status-pill.en_attente{background:var(--amber-soft);color:var(--amber)}.status-pill.en_attente .dot{background:var(--amber)}.status-pill.appele{background:var(--accent-soft);color:var(--accent)}.status-pill.appele .dot{background:var(--accent)}.status-pill.traite{background:var(--success-soft);color:var(--success)}.status-pill.traite .dot{background:var(--success)}.status-pill.annule{background:#f1f0ee;color:var(--muted)}.status-pill.annule .dot{background:var(--muted)}.ticket-hint{color:var(--muted);font-size:13px;text-align:center;max-width:32ch}.new-ticket-link{margin-top:auto;text-align:center;font-size:13.5px;color:var(--muted);text-decoration:underline;background:none;border:none;cursor:pointer;padding:10px}.client-shell{display:flex;flex-direction:column;max-width:none;min-height:100dvh;padding:0;gap:0;background:#fff}.client-header{justify-content:space-between;padding:18px 24px;min-height:96px;box-shadow:0 3px 7px #00000015;z-index:1;background:#fff}.airtel-brand{display:flex;align-items:center;color:#ed2027;text-decoration:none;font-size:38px;font-weight:700;letter-spacing:-2px}.airtel-brand svg{width:52px;height:55px}.client-language{display:flex;align-items:center;gap:16px;font-size:14px}.client-language>span{font-size:18px;letter-spacing:-3px;border:1px solid #202938;padding:2px 5px;border-radius:3px}.client-content{position:relative;isolation:isolate;width:100%;max-width:600px;margin:0 auto;padding:36px 28px 140px;flex:1}.client-content:before{content:"";position:absolute;z-index:-1;top:240px;right:0;bottom:50px;left:0;opacity:.035;background:#e30613;clip-path:polygon(0 38%,34% 15%,76% 0,100% 5%,100% 37%,42% 60%,5% 70%,0 57%,68% 31%,80% 33%,67% 51%,28% 100%,77% 83%,100% 57%,100% 100%,0 100%)}.client-title{text-align:center;font-size:clamp(24px,6vw,32px);font-weight:750;margin:0 0 36px}.client-progress{list-style:none;display:grid;grid-template-columns:1fr 1.8fr 1fr;padding:0;margin:0 0 42px}.client-progress li{position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;color:#777}.step-label{min-height:36px;font-size:14px;line-height:18px;display:flex;align-items:center}.step-number{width:50px;height:50px;border:1px solid #bbb;border-radius:50%;display:grid;place-items:center;background:#fff;color:#999;font-size:26px;position:relative}.client-progress li:not(:last-child):after{content:"";height:13px;background:#ebebeb;position:absolute;top:75px;left:50%;width:140%;z-index:-1}.client-progress li:nth-child(2):after{width:80%}.client-progress .reached{color:#202938}.client-progress .reached .step-number{background:#64cba0;border-color:#64cba0;color:#fff;font-weight:600}.client-progress .reached:not([aria-current=step]):after{background:#64cba0}.contact-fields{display:flex;flex-direction:column;gap:18px}.contact-fields label,.service-options legend{color:#4e9fc2;font-size:18px;line-height:1.5}.contact-fields input{width:100%;border:1px solid transparent;border-radius:16px;padding:24px;background:#fff;box-shadow:0 1px 16px #00000009;font:inherit;font-size:20px}.contact-fields label:not(:first-child){margin-top:26px}.client-form .error-banner{margin-bottom:22px}.service-options{border:0;padding:0;margin:0;min-width:0}.service-options legend{text-align:center;width:100%;margin-bottom:18px}.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.service-tile{min-height:94px;padding:20px;gap:12px;border-radius:14px;border:1px solid transparent;background:#ffffffbd;box-shadow:0 1px 15px #00000008;font-size:15px;line-height:1.6;overflow-wrap:anywhere}.service-tile.selected{border-color:#202938}.service-tile input{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 27px;width:27px;height:27px;border-radius:50%;border:1px solid #aaa;margin:0;display:grid;place-content:center;background:#fff}.service-tile input:checked{border-color:#64cba0;background:#64cba0}.service-tile input:checked:after{content:"✓";color:#fff;font-weight:700;font-size:21px}.client-back{background:none;border:0;color:#657080;padding:22px 0;cursor:pointer}.client-footer{position:fixed;bottom:0;left:0;width:100%;padding:16px 28px calc(20px + env(safe-area-inset-bottom,0px));background:#fff;box-shadow:0 -3px 12px #0000000b;z-index:2}.client-primary{display:block;width:100%;max-width:544px;margin:auto;border:none;border-radius:4px;background:#202938;color:#fff;padding:21px;font-size:21px;cursor:pointer}.client-primary:disabled{background:#92969e;cursor:not-allowed}.client-shell :focus-visible{outline:3px solid #3088aa;outline-offset:4px}.sms-note{font-size:14px;color:#657080;line-height:1.6;text-align:center;margin:0}.ticket-card{background:#ffffffdf;box-shadow:0 4px 22px #00000008}@media (max-width: 380px){.client-content{padding-left:18px;padding-right:18px}.service-list{gap:14px}.service-tile{padding:14px 10px;font-size:14px;gap:8px}.step-label{font-size:12px}.client-header{padding:14px 18px}}.shop-picker{display:flex;flex-direction:column;gap:12px;padding-bottom:24px;border-bottom:1px solid #eee}.shop-picker h2{font-size:22px;margin:0}.shop-picker select{width:100%;min-width:0;padding:16px 10px;border:1px solid #ddd;border-radius:10px;background:#fff;font:inherit}.shop-picker p{font-size:14px;line-height:1.5;margin:0}.admin-app{min-height:100%;display:flex}.admin-sidebar{width:220px;flex:none;background:var(--surface);border-right:1px solid var(--line);padding:22px 14px;display:flex;flex-direction:column;gap:26px}.admin-sidebar .brand{display:flex;align-items:center;gap:10px;padding:0 8px}.admin-sidebar .brand .mark{width:28px;height:28px;border-radius:8px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:13px}.admin-sidebar .brand .title{font-family:var(--font-display);font-weight:600;font-size:14.5px}.admin-nav{display:flex;flex-direction:column;gap:2px}.admin-nav a{display:block;padding:9px 10px;border-radius:var(--radius-sm);font-size:14px;text-decoration:none;color:var(--muted)}.admin-nav a.active,.admin-nav a:hover{background:var(--accent-soft);color:var(--accent)}.admin-sidebar .spacer{flex:1}.logout-btn{align-self:flex-start;border:none;background:none;color:var(--muted);font-size:13px;cursor:pointer;padding:8px 10px}.logout-btn:hover{color:var(--ink)}.admin-main{flex:1;min-width:0;padding:28px 32px 40px}.admin-header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}.admin-header h1{font-family:var(--font-display);font-weight:600;font-size:22px;margin:0}.admin-header p{color:var(--muted);font-size:13.5px;margin:4px 0 0}.btn{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);padding:9px 14px;font-size:13.5px;font-weight:500;cursor:pointer;color:var(--ink)}.btn:hover{border-color:#cfcabf}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(.95)}.btn.ghost{border-color:transparent;background:none;color:var(--muted)}.btn.small{padding:6px 10px;font-size:12.5px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}table.data-table{width:100%;border-collapse:collapse;font-size:13.5px}.data-table th{text-align:left;font-weight:500;color:var(--muted);font-size:12.5px;padding:11px 16px;border-bottom:1px solid var(--line)}.data-table td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table .muted{color:var(--muted)}.tag{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:500}.tag.on{background:var(--success-soft);color:var(--success)}.tag.off{background:#f1f0ee;color:var(--muted)}.tag.en_attente{background:var(--amber-soft);color:var(--amber)}.tag.appele{background:var(--accent-soft);color:var(--accent)}.tag.traite{background:var(--success-soft);color:var(--success)}.tag.annule{background:#f1f0ee;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;padding:16px}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:12.5px;color:var(--muted)}.field input,.field textarea,.field select{border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 10px;font-size:13.5px;font-family:inherit;background:var(--bg)}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px}.form-actions{display:flex;gap:8px;padding:0 16px 16px}.section-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:14px}.empty-row{padding:26px 16px;text-align:center;color:var(--muted);font-size:13.5px}.error-banner{background:var(--accent-soft);color:var(--accent);border-radius:var(--radius-sm);padding:12px 14px;font-size:13.5px}.login-shell{min-height:100%;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:100%;max-width:340px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 24px;display:flex;flex-direction:column;gap:16px}.login-card .mark{width:34px;height:34px;border-radius:10px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700}.login-card h1{font-family:var(--font-display);font-size:19px;margin:0}.login-card p.sub{color:var(--muted);font-size:13.5px;margin:-10px 0 0}:root{--bg: #faf9f7;--surface: #ffffff;--ink: #17181c;--muted: #6b6e76;--line: #e6e3dc;--accent: #e30613;--accent-ink: #ffffff;--accent-soft: #fdeceb;--success: #1e824c;--success-soft: #e7f4ec;--amber: #9a6b12;--amber-soft: #fbf1de;--font-display: "Space Grotesk", "Inter", sans-serif;--font-body: "Inter", sans-serif;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--shadow-card: 0 1px 2px rgba(23, 24, 28, .06)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}button{font-family:inherit}a{color:inherit}::selection{background:var(--accent-soft);color:var(--accent)}
