.local-ai-polish #ai-chat-overlay{overflow-x:hidden;overscroll-behavior-x:none;padding:12px;box-sizing:border-box}
.local-ai-polish #ai-chat-overlay *{box-sizing:border-box;min-width:0}
.local-ai-polish #ai-chat-overlay .ai-chat-sheet{width:min(100%,540px)!important;max-width:100%!important;overflow-x:hidden!important;border-radius:22px!important}
.local-ai-polish #ai-guided-content{width:100%;max-width:100%;overflow-x:hidden;touch-action:pan-y;overscroll-behavior-x:none}
.local-ai-polish .ai-guided-body{padding:18px!important;overflow-x:hidden!important;max-width:100%}
.local-ai-polish .ai-generator-head{padding:20px 18px!important;gap:12px!important}
.local-ai-polish .ai-chat-title{flex:1}
.local-ai-polish .ai-generator-head .ai-chat-title b{font-family:inherit!important;font-size:19px!important;font-weight:700!important;line-height:1.25;overflow-wrap:anywhere}
.local-ai-polish .ai-chat-title small{font-size:11px;line-height:1.5;white-space:normal!important}
.local-ai-polish .ai-chat-close{flex:0 0 36px;width:36px;height:36px;border:1px solid #393940;border-radius:50%;font-size:19px;background:#202025}
.local-ai-polish .ai-chat-badge{display:none}
.local-ai-polish .ai-mode-nav{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 18px!important;padding:4px!important;gap:4px!important;overflow:visible!important}
.local-ai-polish .ai-mode-nav button{width:100%;min-width:0!important;padding:12px 3px!important;font-size:12px!important;min-height:44px!important}
.local-ai-polish .ai-generator-primary{gap:10px!important}
.local-ai-polish .ai-generator-primary>button{min-height:94px!important;padding:16px!important;border-radius:16px!important;background:#1a1b22!important;border:1px solid #34353e!important;box-shadow:none!important;gap:12px!important}
.local-ai-polish .ai-generator-primary>button>span{flex:1;overflow-wrap:anywhere}
.local-ai-polish .ai-generator-primary b{font-size:16px!important;line-height:1.35!important}
.local-ai-polish .ai-generator-primary small{font-size:12px!important;line-height:1.5!important;margin-top:5px!important}
.local-ai-polish .ai-generator-primary i,.local-ai-polish .ai-generator-grid i{width:58px!important;height:58px!important;flex:0 0 58px!important;border-radius:16px!important;background:var(--bg2)!important;color:var(--accent-soft)!important;box-shadow:none!important}
.local-ai-polish .ai-generator-primary i svg,.local-ai-polish .ai-generator-grid i svg{width:44px!important;height:44px!important}
.local-ai-polish .ai-generator-primary i .local-ai-symbol,.local-ai-polish .ai-generator-grid i .local-ai-symbol{width:32px!important;height:32px!important}
.local-ai-polish .ai-generator-section-title{display:flex!important;flex-wrap:wrap;gap:6px;margin:26px 0 12px!important;align-items:baseline!important}
.local-ai-polish .ai-generator-section-title>span{font-family:inherit!important;font-size:17px!important;font-weight:650!important}
.local-ai-polish .ai-generator-section-title small{font-size:10px!important}
.local-ai-polish .ai-generator-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%}
.local-ai-polish .ai-generator-grid>button{min-height:138px!important;padding:14px!important;border-radius:16px!important;border:1px solid #34353e!important;background:#191a21!important;box-shadow:none!important;gap:12px!important;overflow-wrap:anywhere}
.local-ai-polish .ai-generator-grid>button>span{font-size:14px!important;line-height:1.35!important;white-space:normal!important}
.local-ai-polish .ai-program-menu i{background:#252b3e!important;color:#a6baff!important}
.local-ai-polish .ai-coach-menu i{background:var(--bg2)!important;color:var(--accent2)!important}
.local-ai-polish #ai-chat-overlay input,.local-ai-polish #ai-chat-overlay select{max-width:100%}
@media(max-width:360px){.local-ai-polish #ai-chat-overlay{padding:6px}.local-ai-polish .ai-guided-body{padding:12px!important}.local-ai-polish .ai-generator-head{padding:16px 12px!important}.local-ai-polish .ai-mode-nav{margin:0 12px!important}.local-ai-polish .ai-generator-primary>button{padding:12px!important}.local-ai-polish .ai-generator-primary b{font-size:14px!important}.local-ai-polish .ai-generator-grid>button{padding:12px!important}.local-ai-polish .ai-generator-grid>button>span{font-size:13px!important}}
/* Bound the flex chain so the body can scroll within the dialog. */
.local-ai-polish #ai-chat-overlay .ai-guided-sheet{height:min(820px,calc(100dvh - 24px))!important;max-height:calc(100dvh - 24px)!important;min-height:0!important;overflow:hidden!important;margin-bottom:0!important}
.local-ai-polish #ai-guided-content{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;overflow:hidden!important}
.local-ai-polish #ai-guided-content>.ai-chat-head,.local-ai-polish #ai-guided-content>.ai-mode-nav{flex-shrink:0!important}
.local-ai-polish #ai-guided-content>.ai-chat-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))!important}
.local-ai-polish #ai-guided-content>.ai-chat-body>*{flex-shrink:0}
/* Text gets a full row; the illustration never squeezes words into fragments. */
.local-ai-polish .ai-generator-grid>button{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:space-between!important;height:auto!important;min-height:136px!important}
.local-ai-polish .ai-generator-grid>button>span{display:block!important;width:100%!important;flex:none!important;max-width:none!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;overflow:visible!important;text-overflow:clip!important}
.local-ai-polish .ai-generator-grid>button>i{align-self:flex-end!important;flex:0 0 58px!important;margin:0!important}
.local-ai-polish .ai-generator-primary>button>span{word-break:normal!important;overflow-wrap:normal!important;white-space:normal!important;overflow:visible!important}
.local-ai-polish .ai-generator-head .ai-chat-title small{max-width:none!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.local-ai-polish .ai-generator-head .ai-chat-title b{word-break:normal!important;overflow-wrap:normal!important}

/* Generated illustrations retain their transparent canvas and full silhouette. */
.local-ai-polish .ai-generator-primary>button>i,
.local-ai-polish .ai-generator-grid>button>i{width:88px!important;height:88px!important;flex:0 0 88px!important;background:transparent!important;border-radius:0!important;overflow:visible!important}
.local-ai-polish .ai-card-illustration{display:block;width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:normal;mask:none;border-radius:0;max-width:100%}
.local-ai-polish .ai-generator-grid>button{gap:6px!important}
@media(max-width:360px){.local-ai-polish .ai-generator-primary>button>i{width:70px!important;height:70px!important;flex-basis:70px!important}}

/* Coach IA: one clear decision per screen, with genuinely distinct outcomes. */
.local-ai-polish .ai-coach-menu{padding-top:14px!important}
.local-ai-polish .ai-coach-intro{padding:4px 2px 14px}
.local-ai-polish .ai-coach-intro>span{color:var(--accent-soft);font-size:9px;font-weight:800;letter-spacing:1.5px}
.local-ai-polish .ai-coach-intro h3{margin:7px 0 4px;font-size:24px;line-height:1.08;letter-spacing:-.45px}
.local-ai-polish .ai-coach-intro p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.local-ai-polish .ai-coach-choices .ai-generator-grid{gap:9px!important}
.local-ai-polish .ai-coach-signals>button{min-height:112px!important;padding:14px!important;background:#17181e!important}
.local-ai-polish .ai-coach-signals>button{position:relative!important;display:block!important;padding:15px 15px 64px!important}
.local-ai-polish .ai-coach-signals>button>span{display:flex!important;width:100%!important;min-width:0!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important}
.local-ai-polish .ai-coach-signals b{display:block;width:100%;font-size:15px;line-height:1.16;white-space:normal;overflow-wrap:normal}
.local-ai-polish .ai-coach-signals small{display:block;width:100%;max-width:120px;color:var(--muted);font-size:10px;line-height:1.3;white-space:normal;overflow-wrap:normal}
.local-ai-polish .ai-coach-signals>button>i{width:48px!important;height:48px!important;flex-basis:48px!important;border-radius:14px!important;background:rgba(var(--accent-rgb),.1)!important;color:var(--accent-soft)!important}
.local-ai-polish .ai-coach-signals>button>i{position:absolute!important;right:12px!important;bottom:12px!important;margin:0!important}
.local-ai-polish .ai-coach-signals>button>i svg{width:25px!important;height:25px!important}
.local-ai-polish .ai-coach-step{padding-top:14px!important}
.local-ai-polish .ai-coach-back{min-height:42px;padding:0;border:0;background:none;color:var(--muted);font-size:11px;font-weight:700;text-align:left}
.local-ai-polish .ai-coach-question{position:relative;margin:8px 0 18px;padding:22px 82px 20px 20px;border:1px solid rgba(var(--accent-rgb),.24);border-radius:18px;background:linear-gradient(135deg,rgba(var(--accent-rgb),.12),rgba(255,255,255,.025) 68%),#15161b}
.local-ai-polish .ai-coach-question>i{position:absolute;top:20px;right:18px;display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:rgba(var(--accent-rgb),.14);color:var(--accent-soft)}
.local-ai-polish .ai-coach-question>i svg{width:25px;height:25px}
.local-ai-polish .ai-coach-question>span{color:var(--accent-soft);font-size:8px;font-weight:800;letter-spacing:1.4px}
.local-ai-polish .ai-coach-question h3{margin:7px 0 5px;font-size:22px;line-height:1.12}
.local-ai-polish .ai-coach-question p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}
.local-ai-polish .ai-coach-answer-list{display:grid;gap:9px}
.local-ai-polish .ai-coach-answer-list>button{display:flex;min-height:74px;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border:1px solid #34353d;border-radius:15px;background:#191a20;color:var(--text);text-align:left}
.local-ai-polish .ai-coach-answer-list>button span{display:flex;min-width:0;flex-direction:column;gap:4px}
.local-ai-polish .ai-coach-answer-list b{font-size:15px;line-height:1.2}
.local-ai-polish .ai-coach-answer-list small{color:var(--muted);font-size:11px;line-height:1.3}
.local-ai-polish .ai-coach-answer-list em{color:var(--accent-soft);font-size:24px;font-style:normal}
.local-ai-polish .ai-coach-answer-list>button:active{transform:scale(.985);background:var(--bg2)}
.local-ai-polish .ai-coach-control{margin:14px 2px 0;color:var(--dim);font-size:10px;text-align:center}
@media(max-width:360px){.local-ai-polish .ai-coach-signals>button{min-height:116px!important;padding:13px 13px 60px!important}.local-ai-polish .ai-coach-signals b{font-size:14px}.local-ai-polish .ai-coach-signals small{font-size:9px}.local-ai-polish .ai-coach-question{padding-left:16px}.local-ai-polish .ai-coach-answer-list>button{padding:13px 14px}}

/* Motion IA : transitions brèves, hiérarchie lisible, aucun mouvement permanent. */
.local-ai-polish #ai-chat-overlay{transition:opacity 180ms ease,backdrop-filter 220ms ease!important}
.local-ai-polish #ai-chat-overlay .ai-guided-sheet{transform:translate3d(0,14px,0) scale(.985)!important;transform-origin:50% 100%;transition:transform 260ms cubic-bezier(.22,1,.36,1),opacity 180ms ease!important;opacity:.72}
.local-ai-polish #ai-chat-overlay.show .ai-guided-sheet{transform:translate3d(0,0,0) scale(1)!important;opacity:1}
.local-ai-polish #ai-guided-content>.ai-chat-head{animation:aiPanelIn 220ms cubic-bezier(.22,1,.36,1) both}
.local-ai-polish #ai-guided-content>.ai-mode-nav{animation:aiPanelIn 240ms 24ms cubic-bezier(.22,1,.36,1) both}
.local-ai-polish #ai-guided-content>.ai-chat-body{animation:aiPanelIn 260ms 45ms cubic-bezier(.22,1,.36,1) both}
.local-ai-polish .ai-mode-nav button{position:relative;overflow:hidden;transition:color 160ms ease,background-color 180ms ease,transform 120ms ease,box-shadow 180ms ease!important}
.local-ai-polish .ai-mode-nav button::after{content:'';position:absolute;right:24%;bottom:3px;left:24%;height:2px;border-radius:2px;background:var(--accent);opacity:0;transform:scaleX(.25);transition:opacity 180ms ease,transform 220ms cubic-bezier(.22,1,.36,1)}
.local-ai-polish .ai-mode-nav button.active::after{opacity:1;transform:scaleX(1)}
.local-ai-polish .ai-mode-nav button:active{transform:scale(.96)}
.local-ai-polish .ai-generator-primary>button,.local-ai-polish .ai-generator-grid>button,.local-ai-polish .ai-coach-answer-list>button{transition:transform 150ms cubic-bezier(.2,.8,.2,1),border-color 180ms ease,background-color 180ms ease,box-shadow 180ms ease!important;animation:aiChoiceIn 280ms cubic-bezier(.22,1,.36,1) both}
.local-ai-polish .ai-generator-primary>button:nth-child(2),.local-ai-polish .ai-generator-grid>button:nth-child(2),.local-ai-polish .ai-coach-answer-list>button:nth-child(2){animation-delay:35ms}
.local-ai-polish .ai-generator-grid>button:nth-child(3),.local-ai-polish .ai-coach-answer-list>button:nth-child(3){animation-delay:70ms}
.local-ai-polish .ai-generator-grid>button:nth-child(4){animation-delay:95ms}
.local-ai-polish .ai-generator-grid>button:nth-child(5){animation-delay:120ms}
.local-ai-polish .ai-generator-grid>button:nth-child(6){animation-delay:145ms}
.local-ai-polish .ai-generator-grid>button:nth-child(7){animation-delay:170ms}
.local-ai-polish .ai-generator-grid>button:nth-child(8){animation-delay:195ms}
.local-ai-polish .ai-generator-primary>button:active,.local-ai-polish .ai-generator-grid>button:active,.local-ai-polish .ai-coach-answer-list>button:active{transform:scale(.975)!important;transition-duration:80ms!important}
.local-ai-polish .ai-coach-question{animation:aiQuestionIn 280ms cubic-bezier(.22,1,.36,1) both}
.local-ai-polish .ai-coach-question>i{transition:transform 220ms cubic-bezier(.22,1,.36,1)}
.local-ai-polish .ai-coach-question:hover>i{transform:rotate(-4deg) scale(1.04)}
@keyframes aiPanelIn{from{opacity:0;transform:translate3d(0,7px,0)}to{opacity:1;transform:none}}
@keyframes aiChoiceIn{from{opacity:0;transform:translate3d(0,9px,0) scale(.985)}to{opacity:1;transform:none}}
@keyframes aiQuestionIn{from{opacity:0;transform:translate3d(8px,0,0)}to{opacity:1;transform:none}}
@media(hover:hover){
  .local-ai-polish .ai-generator-primary>button:hover,.local-ai-polish .ai-generator-grid>button:hover,.local-ai-polish .ai-coach-answer-list>button:hover{transform:translateY(-2px);border-color:rgba(var(--accent-rgb),.42)!important;box-shadow:0 10px 22px rgba(0,0,0,.18)!important}
}
@media(prefers-reduced-motion:reduce){
  .local-ai-polish #ai-chat-overlay,.local-ai-polish #ai-chat-overlay *,.local-ai-polish #ai-chat-overlay *::before,.local-ai-polish #ai-chat-overlay *::after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
