@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');:root{--navy:#12344b;--gold:#d4a83f;--ink:#183041;--muted:#718087;--paper:#f5f5f2;--line:#e6e8e6}*{box-sizing:border-box}body{margin:0;background:var(--paper);font:14px 'DM Sans',Arial,sans-serif;color:var(--ink)}a{color:inherit;text-decoration:none}.login-page{min-height:100vh;display:grid;place-items:center;padding:22px;background:linear-gradient(140deg,#e8e4d8 0%,#f7f5f0 52%,#e5edf0 100%)}.login-card{width:min(430px,100%);background:#fff;padding:38px 40px;box-shadow:0 18px 55px #112e4214}.login-brand{display:flex;align-items:center;gap:10px;color:var(--navy);text-transform:uppercase;font-size:10px;line-height:1.3;letter-spacing:.07em}.login-brand img{width:56px;height:56px;object-fit:contain}.login-brand b{font-size:15px;color:#a98021;letter-spacing:.14em}.eyebrow{margin-top:32px;color:#ac8528;font-weight:700;letter-spacing:.15em;font-size:9px}.login-card h1,.dash-title h1{font:700 28px Manrope,Arial,sans-serif;color:var(--navy);margin:8px 0}.muted{color:var(--muted);font-size:12px;line-height:1.7}.login-card form{margin-top:25px}.login-card label{display:block;font-size:11px;font-weight:700;margin:15px 0}.login-card input:not([type=hidden]){display:block;width:100%;height:44px;border:1px solid var(--line);padding:0 12px;margin-top:6px;font:inherit;outline:0}.login-card input:focus{border-color:var(--gold)}.primary{height:46px;background:var(--navy);border:0;color:white;font:700 12px inherit;width:100%;cursor:pointer;margin-top:8px}.primary span{color:var(--gold);margin-left:12px}.back-link{display:block;text-align:center;margin-top:21px;font-size:10px;color:var(--muted)}.alert{padding:11px 14px;font-size:12px;margin:16px 0}.alert.error{background:#fff0ee;color:#923a32}.alert.success{background:#e9f4ed;color:#28643c}.admin-header{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1200px)/2),30px)}.admin-header .login-brand img{width:47px;height:47px}.admin-header .login-brand{font-size:9px}.admin-header .login-brand b{font-size:13px}.admin-user{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:11px}.admin-user form{margin:0}.logout,.view-site{border:1px solid #d8dfe0;background:white;padding:10px 13px;color:var(--navy);font:600 10px inherit;cursor:pointer}.logout:hover,.view-site:hover{border-color:var(--gold)}.dashboard{max-width:1200px;margin:42px auto;padding:0 26px}.dash-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.dash-title .eyebrow{margin:0}.dash-title h1{font-size:27px}.dash-title .muted{margin:0}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:24px 0}.stat{padding:18px 19px;background:#fff;border:1px solid var(--line);transition:border .15s}.stat:hover{border-color:var(--gold)}.stat span,.stat b{display:block}.stat span{font-size:10px;color:var(--muted)}.stat b{font:700 25px Manrope,Arial,sans-serif;color:var(--navy);margin-top:8px}.table-card{background:white;border:1px solid var(--line)}.table-top{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--line)}.table-top h2{font:700 15px Manrope,Arial,sans-serif;margin:0;color:var(--navy)}.table-top span{font-size:10px;color:var(--muted)}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #eef0ee;font-size:11px;vertical-align:middle}th{font-size:9px;color:#68767c;text-transform:uppercase;letter-spacing:.07em;background:#fbfbfa}td strong{font-size:11px}td a:hover{color:#a98021}td small{font-size:10px;color:var(--muted)}tr:last-child td{border-bottom:0}.badge{font-size:9px;font-weight:700;padding:5px 8px;white-space:nowrap}.badge.en_attente{color:#87620c;background:#fff3d6}.badge.confirme{color:#27633c;background:#e8f3eb}.badge.termine{color:#345d78;background:#e9f1f6}.badge.annule{color:#90453f;background:#f9eae8}.status-form{display:flex;gap:5px;align-items:center}.status-form select{height:30px;border:1px solid var(--line);font:10px inherit;background:white;color:var(--ink);padding:0 5px}.status-form button{width:30px;height:30px;border:0;background:var(--navy);color:white;cursor:pointer}.status-form button:hover{background:#1f5877}.empty{text-align:center;padding:55px 20px;color:var(--muted);font-size:12px}.dashboard-note{font-size:10px;color:var(--muted);margin-top:14px}@media(max-width:700px){.login-card{padding:30px 24px}.admin-header{padding:0 16px;height:68px}.admin-user{gap:9px;font-size:9px}.logout{padding:8px;font-size:9px}.dashboard{margin:25px auto;padding:0 14px}.dash-title{align-items:flex-start;gap:10px}.dash-title h1{font-size:22px}.dash-title .muted{font-size:10px}.view-site{white-space:nowrap;padding:9px;font-size:9px}.stats{grid-template-columns:repeat(2,1fr);gap:8px}.stat{padding:13px}.stat span{font-size:9px}.stat b{font-size:22px}.table-top{padding:14px}.table-top h2{font-size:13px}.admin-header .login-brand{font-size:8px}.admin-header .login-brand img{width:40px;height:40px}}@media(max-width:400px){.admin-user>span{display:none}.dash-title{display:block}.view-site{display:inline-block;margin-top:12px}}
.filters{display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(3,minmax(130px,1fr)) auto auto;gap:10px;align-items:end;padding:14px;background:#fff;border:1px solid var(--line);margin-bottom:14px}.filters label{display:block;font-size:9px;color:#66757b;font-weight:700;margin-bottom:5px}.filters input,.filters select{width:100%;height:38px;min-width:0;border:1px solid var(--line);background:#fff;padding:0 9px;color:var(--ink);font:11px 'DM Sans',Arial,sans-serif}.filter-submit,.filter-reset{height:38px;display:flex;align-items:center;justify-content:center;padding:0 15px;font:700 10px 'DM Sans',Arial,sans-serif}.filter-submit{border:0;background:var(--navy);color:#fff;cursor:pointer}.filter-submit:hover{background:#1e5878}.filter-reset{border:1px solid var(--line);color:var(--muted)}.filters input:focus,.filters select:focus{outline:2px solid #d4a83f55;border-color:var(--gold)}@media(max-width:900px){.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-search{grid-column:span 2}}@media(max-width:600px){.filters{grid-template-columns:1fr 1fr;padding:12px;gap:9px}.filter-search{grid-column:1/-1}.filter-submit,.filter-reset{width:100%;font-size:10px}.filters input,.filters select{height:42px;font-size:14px}.dashboard{margin:22px auto}.stats .stat{min-height:68px}.table-top{gap:8px}.table-top span{white-space:nowrap}}
