@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--color-bg: #F7F7FB;--color-surface: #FFFFFF;--color-primary: #6366F1;--color-primary-hover: #4F46E5;--color-on-primary: #FFFFFF;--color-success: #059669;--color-success-bg: #ECFDF5;--color-warning: #D97706;--color-warning-bg: #FFFBEB;--color-danger: #DC2626;--color-danger-bg: #FEF2F2;--color-foreground: #14132B;--color-muted-foreground: #64748B;--color-border: #E5E4F0;--color-muted: #F1F0F9;--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px;--shadow-card: 0 1px 2px rgba(20, 19, 43, .04), 0 8px 24px rgba(20, 19, 43, .06)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-bg: #0F0E1A;--color-surface: #17162A;--color-primary: #818CF8;--color-primary-hover: #A5B4FC;--color-on-primary: #14132B;--color-success: #34D399;--color-success-bg: rgba(52, 211, 153, .12);--color-warning: #FBBF24;--color-warning-bg: rgba(251, 191, 36, .12);--color-danger: #F87171;--color-danger-bg: rgba(248, 113, 113, .12);--color-foreground: #F1F0F9;--color-muted-foreground: #A1A0C0;--color-border: #2A2946;--color-muted: #1E1D36;--shadow-card: 0 1px 2px rgba(0, 0, 0, .2), 0 8px 24px rgba(0, 0, 0, .3)}}:root[data-theme=dark]{--color-bg: #0F0E1A;--color-surface: #17162A;--color-primary: #818CF8;--color-primary-hover: #A5B4FC;--color-on-primary: #14132B;--color-success: #34D399;--color-success-bg: rgba(52, 211, 153, .12);--color-warning: #FBBF24;--color-warning-bg: rgba(251, 191, 36, .12);--color-danger: #F87171;--color-danger-bg: rgba(248, 113, 113, .12);--color-foreground: #F1F0F9;--color-muted-foreground: #A1A0C0;--color-border: #2A2946;--color-muted: #1E1D36;--shadow-card: 0 1px 2px rgba(0, 0, 0, .2), 0 8px 24px rgba(0, 0, 0, .3)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--color-bg);color:var(--color-foreground);-webkit-font-smoothing:antialiased}button,input{font-family:inherit;color:inherit}a{color:inherit}::selection{background:var(--color-primary);color:var(--color-on-primary)}.gate{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px}.gate-card{width:100%;max-width:320px;display:flex;flex-direction:column;gap:12px;text-align:center}.gate-card h1{margin:0;font-size:1.5rem;font-weight:700}.gate-card p{margin:0;color:var(--color-muted-foreground);font-size:.9rem}.gate-card input{padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-foreground);font-size:1rem;min-height:44px}.gate-card input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.gate-card button{padding:12px 14px;min-height:44px;border-radius:var(--radius-sm);border:none;background:var(--color-primary);color:var(--color-on-primary);font-weight:600;cursor:pointer;transition:background .15s ease-out}.gate-card button:hover{background:var(--color-primary-hover)}.gate-error{color:var(--color-danger)!important}.app-shell{min-height:100dvh;display:flex;flex-direction:column}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:16px clamp(16px,4vw,40px);border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-bg);z-index:10}.top-bar-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.1rem}.top-bar-mark{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-on-primary);display:flex;align-items:center;justify-content:center;font-weight:800}.back-button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-foreground);cursor:pointer;font-weight:500;transition:background .15s ease-out,border-color .15s ease-out}.back-button:hover{background:var(--color-muted)}.back-button:focus-visible,.tile:focus-visible,button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.app-main{flex:1;display:flex;flex-direction:column;min-height:0}.page-content{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:clamp(20px,4vw,40px)}.page-header{margin-bottom:24px}.page-header h1{margin:0 0 4px;font-size:clamp(1.5rem,3vw,2rem);font-weight:800}.page-header p{margin:0;color:var(--color-muted-foreground)}.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1024px){.bento-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.bento-grid{grid-template-columns:1fr}}.tile{text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px;display:flex;flex-direction:column;gap:10px;min-height:148px;cursor:pointer;transition:transform .15s ease-out,box-shadow .15s ease-out,border-color .15s ease-out;grid-column:span 1}.tile-wide{grid-column:span 2}@media (max-width: 560px){.tile-wide{grid-column:span 1}}.tile:not(.tile-disabled):hover{transform:scale(1.02);border-color:var(--color-primary)}.tile:not(.tile-disabled):active{transform:scale(.99)}.tile-disabled{cursor:not-allowed;opacity:.62}.tile-top{display:flex;align-items:center;justify-content:space-between}.tile-icon{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--color-muted);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.tile-title{margin:0;font-size:1.05rem;font-weight:700}.tile-description{margin:0;color:var(--color-muted-foreground);font-size:.88rem;line-height:1.5}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:600}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-muted{background:var(--color-muted);color:var(--color-muted-foreground)}.search-bar{display:flex;align-items:center;gap:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 14px;min-height:48px;margin-bottom:20px;color:var(--color-muted-foreground)}.search-bar input{flex:1;border:none;background:none;outline:none;font-size:.95rem;color:var(--color-foreground);min-height:44px}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.filter-chip{min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-muted-foreground);font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s ease-out,border-color .15s ease-out,color .15s ease-out}.filter-chip:hover{border-color:var(--color-primary)}.filter-chip-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.filter-chip-clear{border-style:dashed}.entreprise-list{display:flex;flex-direction:column;gap:8px}.entreprise-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 18px;text-align:left;cursor:pointer;min-height:44px;transition:border-color .15s ease-out,background .15s ease-out}.entreprise-row:hover{border-color:var(--color-primary);background:var(--color-muted)}.entreprise-row-sub{color:var(--color-muted-foreground);font-size:.85rem;margin-top:2px}.error-banner{background:var(--color-danger-bg);color:var(--color-danger);padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:16px}.hint{color:var(--color-muted-foreground);font-size:.85rem;display:flex;align-items:center;gap:6px}.fiche{margin-top:16px;display:flex;flex-direction:column;gap:24px}.fiche-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.fiche-header h1{margin:0}.fiche-meta{display:flex;flex-wrap:wrap;gap:16px;color:var(--color-muted-foreground);font-size:.9rem}.fiche-meta-item{display:inline-flex;align-items:center;gap:6px}.fiche-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px}.fiche-section h2{margin:0 0 12px;font-size:1rem;font-weight:700}.readonly-field{margin:0;color:var(--color-muted-foreground)}.fiabilite-group{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.fiabilite-chip{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-foreground);font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .15s ease-out,border-color .15s ease-out,color .15s ease-out}.fiabilite-chip:hover:not(:disabled){border-color:var(--color-primary)}.fiabilite-chip:disabled{opacity:.6;cursor:wait}.fiabilite-chip-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.hint-error{color:var(--color-danger)}.contact-list{display:flex;flex-direction:column;gap:12px}.contact-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 16px}.contact-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.contact-detail{display:flex;align-items:center;gap:6px;color:var(--color-muted-foreground);font-size:.88rem;margin-top:2px}.contact-note{margin:8px 0 0;font-size:.88rem;color:var(--color-foreground)}.douma{flex:1;min-height:0;display:flex;flex-direction:column;max-width:760px;width:100%;margin:0 auto;padding:0 clamp(16px,4vw,24px)}.douma-scroll{flex:1;min-height:0;overflow-y:auto;padding:24px 0;display:flex;flex-direction:column;gap:16px}.douma-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;color:var(--color-muted-foreground);padding:40px 16px}.douma-empty-icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--color-muted);color:var(--color-primary);display:flex;align-items:center;justify-content:center;margin-bottom:4px}.douma-empty h2{margin:0;color:var(--color-foreground);font-size:1.2rem}.douma-empty p{margin:0;max-width:320px}.douma-row{display:flex;align-items:flex-end;gap:8px}.douma-row-user{justify-content:flex-end}.douma-row-assistant{justify-content:flex-start}.douma-avatar{width:28px;height:28px;min-width:28px;border-radius:999px;background:var(--color-primary);color:var(--color-on-primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem}.douma-bubble{max-width:72%;padding:12px 16px;border-radius:var(--radius-md);line-height:1.5;font-size:.95rem;white-space:pre-wrap;word-break:break-word}.douma-bubble-user{background:var(--color-primary);color:var(--color-on-primary);border-bottom-right-radius:4px}.douma-bubble-assistant{background:var(--color-surface);color:var(--color-foreground);border:1px solid var(--color-border);border-bottom-left-radius:4px}.douma-typing{display:flex;gap:4px;padding:16px;align-items:center}.douma-typing span{width:6px;height:6px;border-radius:999px;background:var(--color-muted-foreground);animation:douma-bounce 1.2s infinite ease-in-out}.douma-typing span:nth-child(2){animation-delay:.15s}.douma-typing span:nth-child(3){animation-delay:.3s}@keyframes douma-bounce{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion: reduce){.douma-typing span{animation:none}}.douma-input-row{display:flex;gap:8px;padding:16px 0 20px;border-top:1px solid var(--color-border)}.douma-input-row input{flex:1;min-height:48px;padding:0 16px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-foreground);font-size:.95rem;outline:none}.douma-input-row input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.douma-input-row button{width:48px;height:48px;min-width:48px;border-radius:var(--radius-md);border:none;background:var(--color-primary);color:var(--color-on-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease-out,opacity .15s ease-out}.douma-input-row button:hover:not(:disabled){background:var(--color-primary-hover)}.douma-input-row button:disabled{opacity:.5;cursor:not-allowed}
