:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:#edf2ff;background:#080d19;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-height:100vh;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}.hidden{display:none!important}.backglow{pointer-events:none;position:fixed;inset:0;background:radial-gradient(ellipse at 88% 0,rgba(55,102,225,.19),transparent 38%),radial-gradient(ellipse at 6% 65%,rgba(25,181,190,.09),transparent 35%);z-index:-1}header{max-width:1320px;margin:auto;padding:29px 34px;display:flex;align-items:center;gap:25px;border-bottom:1px solid #ffffff14}.brand{font-size:23px;font-weight:800;letter-spacing:-.8px;color:#fff;text-decoration:none}.brand>span:not(.brand-icon){color:#6b9bff}.brand-icon{background:linear-gradient(135deg,#78b2ff,#4066ff);border-radius:11px;padding:3px 10px;margin-right:7px;color:#07101f}.mini,.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:750;color:#7893bd}.mini{margin-left:auto}main{max-width:1320px;margin:0 auto;padding:38px 34px 90px}.authshell{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:center;min-height:650px}.hero h1{font-size:clamp(44px,5vw,79px);line-height:1.08;letter-spacing:-3.5px;margin:25px 0}.hero em{font-style:normal;background:linear-gradient(90deg,#6c9dff,#58e0d6);background-clip:text;color:transparent}.hero p{max-width:490px;color:#9ba9c1;font-size:17px;line-height:1.7}.hero-stats{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}.hero-stats span,.datepill{padding:10px 13px;background:#ffffff0b;border:1px solid #ffffff18;border-radius:12px;color:#b8c6e0;font-size:12px}.panel{background:linear-gradient(145deg,#151f34,#10192a);border:1px solid #ffffff17;border-radius:22px;box-shadow:0 14px 50px #0000002b}.authcard,.formpanel{padding:34px}.authcard h2,.formpanel h2,.tablepanel h2{font-size:27px;letter-spacing:-.8px;margin:10px 0}.muted{color:#91a1bc}.authcard>p,.formpanel>p{line-height:1.6;font-size:13px;margin-bottom:24px}label{display:block;font-size:12px;color:#c0cee4;font-weight:600;margin:16px 0}input,select{display:block;width:100%;height:49px;border:1px solid #ffffff24;border-radius:11px;background:#090f1d;color:#f5f8ff;padding:0 14px;margin-top:8px;outline:0}input:focus,select:focus{border-color:#568cff;box-shadow:0 0 0 3px #4272ea28}.primary{background:linear-gradient(110deg,#507df3,#3369dd);border:1px solid #6b96ff;border-radius:12px;color:#fff;font-weight:750;padding:15px 19px}.primary span{float:right}.full{width:100%;margin-top:12px}.ghost{background:#ffffff0b;border:1px solid #ffffff20;padding:10px 15px;border-radius:11px;color:#d6e4ff}.feedback{font-size:13px;min-height:18px;margin-top:13px;line-height:1.5}.feedback.error{color:#ff909e}.feedback.success{color:#72e1b5}.toprow{display:flex;justify-content:space-between;align-items:center;margin:20px 0 30px}.smalltitle{font-size:clamp(35px,4vw,55px);letter-spacing:-2px;margin:11px 0 3px}.period{color:#669cff}.tabs{display:flex;gap:8px;border-bottom:1px solid #ffffff21;margin:23px 0 26px;flex-wrap:wrap}.tab{border:0;color:#98a9c6;background:transparent;padding:15px 18px;border-bottom:2px solid transparent}.tab.active{color:#fff;border-bottom-color:#5b91ff}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.stat{padding:25px}.stat span{font-size:11px;letter-spacing:1.2px;color:#93aacb}.stat strong{display:block;font-size:43px;margin:13px 0 5px;letter-spacing:-1.5px}.stat strong.medium{font-size:25px}.stat small{color:#8195b4}.tablepanel{padding:28px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:14px}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;margin-top:20px;font-size:13px}th{color:#8196b8;font-size:10px;letter-spacing:1px}th,td{padding:15px 10px;border-bottom:1px solid #ffffff12}td{color:#e1eafa}.pill{padding:6px 10px;border-radius:100px;background:#27435a;color:#8de6d0;font-size:11px;display:inline-block}.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.people{display:flex;flex-direction:column;gap:11px;margin-top:18px}.person{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:15px;background:#ffffff08;border-radius:13px;border:1px solid #ffffff10;flex-wrap:wrap}.person b{display:block}.person small{color:#90a4c5}.personactions{display:flex;gap:6px;flex-wrap:wrap}.personactions button{background:#ffffff10;color:#dae5fa;border:1px solid #ffffff20;border-radius:8px;padding:8px;font-size:11px}.kioskpanel{max-width:660px;margin:20px auto;text-align:center;padding:32px}.clock{font-size:clamp(48px,8vw,88px);font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-3px;margin:15px 0}.kioskpanel label{text-align:left}.punchgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.punchgrid button{padding:30px 10px;border:1px solid #537af466;background:#244477;border-radius:16px;color:#fff;font-size:23px}.punchgrid button span{display:block;font-size:15px;margin-top:10px}.hint{color:#7f92b0;font-size:12px;line-height:1.65;margin-top:17px}footer{text-align:center;font-size:10px;letter-spacing:2px;color:#526480;padding:20px}@media(max-width:850px){.authshell,.two-col{grid-template-columns:1fr;gap:20px}.authshell{min-height:auto}.hero h1{font-size:52px}.stats{grid-template-columns:1fr}.mini{display:none}header,main{padding-left:18px;padding-right:18px}.authcard,.formpanel,.tablepanel{padding:23px}}

.schedule-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #ffffff15}.schedule-row label{margin:0;display:flex;align-items:center;gap:8px;font-size:12px}.schedule-row input[type=checkbox]{width:auto;margin:0;accent-color:#59bff4}.schedule-row input[type=time]{font-size:12px;padding:8px;min-width:0}.notice-row{padding:12px 0;border-bottom:1px solid #ffffff15;display:flex;flex-direction:column;gap:5px}.notice-row small{color:#9db4d1}.panel a{color:#79dfff}

/* ShopControl V4 - thème clair à haut contraste */
:root{color:#172b48!important;background:#f4f8ff!important;color-scheme:light!important}
body{color:#172b48;background:linear-gradient(135deg,#f6faff 0%,#eef9fb 65%,#f6f4ff 100%)}
.backglow{background:radial-gradient(ellipse at 8% 0%,rgba(63,137,245,.13),transparent 43%),radial-gradient(ellipse at 98% 44%,rgba(25,197,174,.12),transparent 45%)}
header{border-color:#d9e6f5} .brand{color:#16355c}.brand>span:not(.brand-icon){color:#246df4}.mini,.eyebrow{color:#396a9d}
.panel{background:#ffffff;border:1px solid #dbe7f5;box-shadow:0 12px 35px #1f558214}
.hero h1,.smalltitle,h2,.clock,.stat strong{color:#142c4e}.hero p,.muted,.hint,.stat small{color:#526882}
.hero em{background:linear-gradient(90deg,#2c6df5,#0dafa4);background-clip:text;color:transparent}
.hero-stats span,.datepill{background:#fff;border-color:#d5e3f0;color:#32516c}
label{color:#274567}input,select{color:#172b48;background:#fafdff;border:1px solid #cbdced}
input:focus,select:focus{border-color:#377bf1;box-shadow:0 0 0 4px #377bf122}
.primary{background:linear-gradient(110deg,#256cf0,#0c9ea6);border:1px solid #1662d2;color:white;box-shadow:0 5px 15px #2c6bc12b}
.primary:hover,.punchgrid button:hover{filter:brightness(1.06)}.ghost{background:#eef5ff;border:1px solid #cbdcec;color:#174671}
.tab{color:#466682}.tab.active{color:#165ad0;border-bottom-color:#256cf0;background:#eaf2ff;border-radius:10px 10px 0 0}
.tabs{border-color:#d8e5f4}th{color:#3b627e}td{color:#253d58}th,td{border-bottom:1px solid #e1eaf4}
.person{background:#f5f9ff;border:1px solid #dce9f7}.person small,.notice-row small{color:#58728b}.personactions button{background:#e9f2ff;color:#24547b;border:1px solid #cbddef}
.pill{background:#def9f0;color:#087855}.schedule-row,.notice-row{border-color:#e1eaf4}
.feedback.error{color:#b91c1c}.feedback.success{color:#08784e}.stat span{color:#477092}
.punchgrid button{background:linear-gradient(110deg,#246be9,#0da4ae);border:1px solid #2276d6;color:#fff;font-weight:800}
.stage-caption{background:#e9f4ff;border:1px solid #c8ddf9;color:#204d7b;padding:15px;border-radius:14px;line-height:1.55}
footer{color:#647e9b}.panel a{color:#1d63d4}
@media (max-width:600px){.hero h1{font-size:clamp(38px,10vw,52px)}.kioskpanel{padding:22px}.clock{letter-spacing:-1px}}
