:root{--color-primary:#6366F1;--color-primary-light:#818CF8;--color-primary-dark:#4F46E5;--color-primary-glow:rgba(99,102,241,0.15);--color-secondary:#475569;--color-secondary-light:#64748B;--color-secondary-dark:#334155;--color-accent:#F59E0B;--color-accent-light:#FBBF24;--color-accent-dark:#D97706;--color-accent-glow:rgba(245,158,11,0.15);--color-background:#F8FAFC;--color-surface:#FFFFFF;--color-surface-elevated:#FFFFFF;--color-surface-warm:#FFFBF5;--color-text:#1E293B;--color-text-secondary:#475569;--color-text-muted:#64748B;--color-text-inverse:#FFFFFF;--color-border:#E2E8F0;--color-border-light:#F1F5F9;--color-success:#059669;--color-success-light:#10B981;--color-success-bg:rgba(5,150,105,0.12);--color-success-glow:rgba(16,185,129,0.25);--color-warning:#D97706;--color-warning-bg:rgba(217,119,6,0.12);--color-error:#DC2626;--color-error-light:#EF4444;--color-error-bg:rgba(220,38,38,0.12);--color-error-glow:rgba(239,68,68,0.25);--color-info:#2563EB;--font-display:"DM Sans","Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-body:"DM Sans","Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"DM Mono","JetBrains Mono","Fira Code",monospace;--font-numbers:"Tabular Nums","DM Mono",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -4px rgba(0,0,0,0.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.1);--transition-fast:150ms ease-out;--transition-base:200ms ease-out;--transition-slow:300ms ease-out;--z-dropdown:100;--z-sticky:200;--z-modal-backdrop:300;--z-modal:400;--z-toast:500;--header-height:60px;--bottom-nav-height:72px;--max-width:1200px;--content-padding:var(--space-4)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;background-color:var(--color-background);min-height:100vh;min-height:100dvh}body,h1,h2,h3,h4,h5,h6{color:var(--color-text)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.3}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin-bottom:var(--space-4)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.chip-button:focus,.chip-button:focus-visible{outline:none!important;box-shadow:none!important}::selection{background-color:var(--color-primary-light);color:var(--color-text-inverse)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-border-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--color-text-muted);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;border:none;background:none}img,svg{display:block;max-width:100%}ol,ul{list-style:none}table{border-collapse:collapse;width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-center{text-align:center}.text-right{text-align:right}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-primary{color:var(--color-primary)}.text-accent{color:var(--color-accent)}.money{font-weight:500;font-feature-settings:"tnum" on,"lnum" on}.money,.money-large{font-family:var(--font-mono)}.money-large{font-size:var(--text-3xl);font-weight:600;font-feature-settings:"tnum" on,"lnum" on}.trend-up{color:var(--color-success)}.trend-down{color:var(--color-error)}.status-paid{background-color:rgba(16,185,129,.15);color:#059669}.status-pending{background-color:rgba(245,158,11,.15);color:#D97706}.status-cancelled{background-color:rgba(239,68,68,.15);color:var(--color-error)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes awaitingPulse{0%{transform:rotate(0deg)}25%{transform:rotate(180deg)}50%{transform:rotate(180deg)}75%{transform:rotate(1turn)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.02)}}.animate-fadeIn{animation:fadeIn var(--transition-slow) ease-out}.animate-slideUp{animation:slideUp var(--transition-slow) ease-out}.animate-scaleIn{animation:scaleIn var(--transition-slow) ease-out}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.skeleton{background:linear-gradient(90deg,var(--color-border-light) 0,var(--color-surface) 50%,var(--color-border-light) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--content-padding)}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-6)}.glass{background:rgba(255,255,255,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.gradient-bg{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4;z-index:-1}.grain:after{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.02;pointer-events:none;z-index:9999}@supports (padding-bottom:env(safe-area-inset-bottom)){.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}}@media print{body{background:white}.no-print{display:none!important}}.landing-nav-link{color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm);font-weight:500;transition:color var(--transition-fast)}@media (max-width:640px){.landing-nav-link{display:none}}.hero-search-mobile{display:none;width:100%}.hero-search-desktop{width:100%}@media (max-width:767px){.hero-search-mobile{display:block}.hero-search-desktop{display:none}}.annuaire-header-mobile{display:none}.annuaire-header-desktop{display:flex}@media (max-width:767px){.annuaire-header-mobile{display:block}.annuaire-header-desktop{display:none!important}}a[href^="/r/"]:hover{border-color:#D1CBC4!important;box-shadow:0 4px 16px rgba(0,0,0,.06)!important}a[href^="/r/"]:hover span[style*="6366F1"]{opacity:.9}.seo-content{font-size:15px;line-height:1.8;color:#6B6560}.seo-content h2{font-size:20px;font-weight:600;color:#2C2520;margin:0 0 12px;line-height:1.3}.seo-content h3{font-size:17px;font-weight:600;color:#3D3630;margin:24px 0 8px}.seo-content p{margin:0 0 14px}.seo-content a{color:#6366F1;text-decoration:none;font-weight:500}.seo-content a:hover{text-decoration:underline}.seo-content strong{color:#3D3630;font-weight:600}.seo-content ol,.seo-content ul{margin:0 0 14px;padding-left:20px}.seo-content li{margin-bottom:4px}@media (max-width:600px){a[href^="/r/"]{flex-direction:column!important}a[href^="/r/"]>div:first-child{width:100%!important;height:180px!important}}