@import url("https://fonts.googleapis.com/css2?family=Google+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Google+Sans+Code:wght@500&display=swap");:root{--white:#ffffff;--surface:#fafaf9;--line:#eceae6;--line-strong:#d8d5cf;--ink:#1a1a18;--ink-soft:#6f6d67;--ink-faint:#a3a09a;--sage:#3d6b5c;--sage-deep:#2a4c41;--sage-tint:#eef4f1;--sage-line:#c9ddd5;--amber:#a8672f;--amber-tint:#fdf3e9;--radius-sm:8px;--radius:12px;--radius-lg:18px;--shadow-sm:0 1px 2px rgba(26,26,24,.04),0 1px 3px rgba(26,26,24,.06);--shadow:0 2px 4px rgba(26,26,24,.03),0 8px 24px rgba(26,26,24,.06);--shadow-lg:0 12px 40px rgba(26,26,24,.10);--font-display:"Google Sans",system-ui,-apple-system,sans-serif;--font-body:"Google Sans",system-ui,-apple-system,sans-serif;--font-mono:"Google Sans Code","IBM Plex Mono",monospace;--ease:cubic-bezier(.22,.61,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.025em;margin-top:0;line-height:1.15}a{color:var(--sage-deep);-webkit-text-decoration-color:var(--sage-line);text-decoration-color:var(--sage-line);text-underline-offset:3px}a:hover{-webkit-text-decoration-color:var(--sage);text-decoration-color:var(--sage)}:focus-visible{outline:2px solid var(--sage);outline-offset:2px;border-radius:4px}@keyframes riseIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.card,.hero>*,.view-header{animation:riseIn .5s var(--ease) both}.card:nth-child(2){animation-delay:.04s}.card:nth-child(3){animation-delay:.08s}.card:nth-child(4){animation-delay:.12s}.hero>:nth-child(2){animation-delay:.06s}.hero>:nth-child(3){animation-delay:.12s}.hero>:nth-child(4){animation-delay:.18s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.app-header{justify-content:space-between;padding:14px 32px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.85);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);position:-webkit-sticky;position:sticky;top:0;z-index:50;gap:16px}.app-header,.brand{display:flex;align-items:center}.brand{gap:10px;text-decoration:none;color:inherit}.brand svg{width:28px;height:28px;flex:none;transition:transform .4s var(--ease)}.brand:hover svg{transform:rotate(-6deg) scale(1.06)}.brand-text .name{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:-.03em}.brand-text .tag{font-size:11px;color:var(--ink-faint);margin-top:-3px;letter-spacing:.01em}.user-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.user-name{font-size:13.5px;font-weight:500;color:var(--ink-soft)}.badge,.role-badge{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.07em;background:var(--sage-tint);color:var(--sage-deep);padding:4px 9px;border-radius:999px;white-space:nowrap;border:1px solid var(--sage-line)}.badge.off{background:var(--surface);color:var(--ink-faint);border-color:var(--line)}.badge.warn{background:var(--amber-tint);color:var(--amber);border-color:#f0dcc4}.page{max-width:940px;margin:0 auto;padding:40px 32px 96px}.view-header{margin-bottom:28px}.view-header h1{font-size:32px;margin:0 0 6px}.view-header p{margin:0;color:var(--ink-soft);font-size:15px;max-width:60ch}.eyebrow{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);margin-bottom:8px;display:block}.grid-2{display:grid;grid-template-columns:280px 1fr;grid-gap:20px;gap:20px;align-items:start}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:14px}.grid-3,.grid-4{display:grid;gap:14px;margin-bottom:20px}.grid-4{grid-template-columns:repeat(4,1fr);grid-gap:14px}@media (max-width:820px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page{padding:28px 20px 72px}.view-header h1{font-size:26px}.app-header{padding:12px 20px}.brand-text .tag{display:none}}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 24px;margin-bottom:14px;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}.card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.card h3{font-size:15px;margin:0 0 14px;font-family:var(--font-body);font-weight:600;letter-spacing:-.01em}.kpi{padding:20px 22px}.kpi .num{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1;letter-spacing:-.03em;color:var(--ink)}.kpi .lbl{color:var(--ink-faint);font-size:11px;margin-top:8px;text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-mono)}.row-item{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}.row-item:last-child{border-bottom:none}.row-item>span:first-child{color:var(--ink-soft)}.row-item b{font-weight:600;color:var(--ink)}.roster{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.roster-btn{width:100%;display:flex;align-items:center;gap:11px;background:transparent;border:1px solid transparent;border-radius:var(--radius);padding:9px 10px;text-align:left;cursor:pointer;font-family:inherit;font-size:14px;color:var(--ink);transition:background .18s var(--ease),border-color .18s var(--ease)}.roster-btn:hover{background:var(--surface)}.roster-btn.selected{background:var(--sage-tint);border-color:var(--sage-line);font-weight:500}.avatar{width:30px;height:30px;border-radius:50%;display:flex;font-size:11.5px;font-weight:600;flex:none;letter-spacing:.02em}.avatar,.btn{background:var(--sage);color:var(--white);align-items:center;justify-content:center}.btn{display:inline-flex;gap:7px;border:1px solid var(--sage);border-radius:10px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .18s var(--ease),transform .12s var(--ease),box-shadow .18s var(--ease)}.btn:hover{background:var(--sage-deep);border-color:var(--sage-deep);box-shadow:var(--shadow-sm)}.btn:active{transform:translateY(1px) scale(.985);box-shadow:none}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn.subtle{background:var(--white);color:var(--ink);border-color:var(--line-strong)}.btn.subtle:hover{background:var(--surface);border-color:var(--ink-faint)}.btn.small{padding:7px 13px;font-size:13px;border-radius:9px}label.f{display:block;font-size:12.5px;color:var(--ink-soft);margin-bottom:5px;font-weight:500;letter-spacing:.005em}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:10px;font-family:inherit;font-size:14px;background:var(--white);color:var(--ink);margin-bottom:12px;transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}input:hover,select:hover,textarea:hover{border-color:var(--ink-faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-tint)}input::placeholder,textarea::placeholder{color:var(--ink-faint)}textarea{resize:vertical;min-height:88px;line-height:1.5}input[type=checkbox]{accent-color:var(--sage)}.switch-row{display:flex;align-items:center;gap:12px;font-size:14px}.switch{position:relative;display:inline-block;width:42px;height:24px;flex:none}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;background:var(--line-strong);border-radius:999px;transition:background .22s var(--ease);cursor:pointer}.slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:var(--white);border-radius:50%;transition:transform .22s var(--ease);box-shadow:var(--shadow-sm)}.switch input:checked+.slider{background:var(--sage)}.switch input:checked+.slider:before{transform:translateX(18px)}table{width:100%;border-collapse:collapse;font-size:14px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:640px){.table-scroll table{min-width:480px}}th{text-align:left;color:var(--ink-faint);font-weight:500;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;padding:0 10px 10px;font-family:var(--font-mono)}td{padding:12px 10px;border-top:1px solid var(--line)}tbody tr{transition:background .16s var(--ease)}tbody tr:hover{background:var(--surface)}.notice{background:var(--sage-tint);color:var(--sage-deep);border:1px solid var(--sage-line);border-radius:var(--radius);margin-bottom:18px}.error,.notice{padding:12px 15px;font-size:13.5px}.error{background:var(--amber-tint);color:var(--amber);border:1px solid #f0dcc4;border-radius:var(--radius);margin-bottom:14px}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:var(--white)}.login-card{width:400px;max-width:100%;background:var(--white);border:1px solid var(--line);border-radius:22px;padding:34px 32px;box-shadow:var(--shadow);animation:riseIn .55s var(--ease) both}.login-card .brand{justify-content:center;margin-bottom:22px}.login-card h1{font-size:24px;text-align:center;margin:0 0 6px}.login-card p.sub{text-align:center;color:var(--ink-soft);font-size:13.5px;margin:0 0 24px}.role-picker{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:22px}.role-card{background:var(--white);border:1.5px solid var(--line-strong);border-radius:var(--radius);padding:16px 10px;text-align:center;cursor:pointer;font-family:inherit;transition:border-color .2s var(--ease),background .2s var(--ease),transform .16s var(--ease)}.role-card:hover{border-color:var(--sage);transform:translateY(-2px)}.role-card:active{transform:translateY(0)}.role-card.selected{border-color:var(--sage);background:var(--sage-tint)}.role-card .emoji{font-size:22px;display:block;margin-bottom:6px}.role-card b{font-size:12.5px;font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}.overlay{position:fixed;inset:0;background:rgba(26,26,24,.32);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:200;padding:20px}.overlay.show{display:flex;animation:fadeIn .2s var(--ease)}.modal{background:var(--white);border-radius:20px;padding:26px;width:440px;max-width:100%;box-shadow:var(--shadow-lg);animation:popIn .28s var(--ease)}.modal h3{font-family:var(--font-display);font-size:19px;margin:0 0 16px}.modal-close{float:right;background:none;border:none;color:var(--ink-faint);font-size:17px;cursor:pointer;padding:4px;line-height:1;transition:color .18s var(--ease)}.modal-close:hover{color:var(--ink)}.hero{max-width:780px;margin:88px auto 96px;padding:0 32px;text-align:center}.hero h1{font-size:56px;line-height:1.05;margin:12px 0 20px;letter-spacing:-.035em}.hero h1 em{font-style:italic;font-weight:400;color:var(--sage)}.hero p.lead{font-size:17px;color:var(--ink-soft);max-width:54ch;margin:0 auto 32px;line-height:1.6}.hero .cta-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.hero .cta-row .btn{padding:13px 24px;font-size:15px}.section{max-width:980px;margin:0 auto;padding:0 32px 96px}.section-title{text-align:center;margin-bottom:44px}.section-title h2{font-size:34px;margin:0 0 10px;letter-spacing:-.03em}.section-title p{color:var(--ink-soft);font-size:15.5px;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.feature-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:26px 24px;transition:border-color .28s var(--ease),transform .28s var(--ease),box-shadow .28s var(--ease)}.feature-card:hover{border-color:var(--sage-line);transform:translateY(-3px);box-shadow:var(--shadow)}.feature-card .icon{width:38px;height:38px;border-radius:11px;background:var(--sage-tint);display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-size:17px}.feature-card h3{font-family:var(--font-display);font-size:17px;margin:0 0 8px;font-weight:700;letter-spacing:-.015em}.feature-card p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.55}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;align-items:stretch}.price-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 20px;display:flex;flex-direction:column;transition:border-color .28s var(--ease),transform .28s var(--ease),box-shadow .28s var(--ease)}.price-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.price-card.featured{border-color:var(--sage);box-shadow:var(--shadow-sm);position:relative}.price-card.featured:before{content:"Recommandé";position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--sage);color:var(--white);font-size:9.5px;padding:3px 10px;border-radius:999px;white-space:nowrap}.price-card .plan-name,.price-card.featured:before{font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.price-card .plan-name{font-size:10.5px;color:var(--ink-faint)}.price-card .plan-price{font-family:var(--font-display);font-size:30px;font-weight:700;margin:10px 0 2px;letter-spacing:-.03em}.price-card .plan-unit{font-size:12.5px;color:var(--ink-faint);margin-bottom:18px}.price-card ul{list-style:none;padding:0;margin:0;font-size:13.5px;color:var(--ink-soft);flex:1 1}.price-card li{padding:5px 0;display:flex;gap:8px;align-items:flex-start}.price-card li:before{content:"→";color:var(--sage);flex:none}@media (max-width:900px){.feature-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr 1fr}.hero{margin:56px auto 64px;padding:0 20px}.hero h1{font-size:36px}.section{padding:0 20px 64px}.section-title h2{font-size:26px}.role-picker{grid-template-columns:1fr}}@media (max-width:560px){.pricing-grid{grid-template-columns:1fr}}.site-footer{border-top:1px solid var(--line);padding:32px;text-align:center;color:var(--ink-faint);font-size:13px}.site-footer a{color:var(--ink-soft);margin:0 10px}@media print{body *{visibility:hidden}.fiche-imprimable,.fiche-imprimable *{visibility:visible}.fiche-imprimable{position:absolute;top:0;left:0;width:100%;padding:20px}.no-print{display:none!important}}.confetti-layer{position:fixed;inset:0;pointer-events:none;z-index:300;overflow:hidden}.confetti-piece{position:absolute;top:-12px;border-radius:2px;animation:confetti-fall linear forwards}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0deg);opacity:1}to{transform:translateY(105vh) rotate(540deg);opacity:.9}}.succes-banner{background:var(--sage-tint);border:1px solid var(--sage-line);color:var(--sage-deep);border-radius:var(--radius-lg);padding:18px 20px;margin-bottom:16px;display:flex;align-items:center;gap:12px;font-size:15px;font-weight:500;animation:riseIn .5s var(--ease) both}.succes-banner .emoji{font-size:24px}