:root{
  --ink:#0D1538;--ink-soft:#3A4060;--muted:#5B6276;--faint:#8A90A2;
  --purple:#6B2CFF;--pink:#FF4F9A;--orange:#FF8A3D;--green:#3FA45B;--blue:#4D7CFF;
  --cream:#FAF7F0;--md-primary:#6B2CFF;--md-on-primary:#fff;--md-primary-container:#EBE4FF;--md-on-primary-container:#2A1466;
  --md-surface:#fff;--md-surface-container:#F5F0E6;--md-surface-container-high:#EFE9DC;--md-outline:#E7E1D4;--md-outline-soft:#F0EBDF;
  --c-need:#FCE7F0;--on-need:#C42B6E;--c-offer:#E7ECFF;--on-offer:#2B49C4;--c-fasc:#FFEBDA;--on-fasc:#C75A14;--c-link:#E2F3E7;--on-link:#1F7A41;
  --r-xs:12px;--r-sm:16px;--r-md:22px;--r-lg:28px;--r-full:999px;--ease:cubic-bezier(.2,.8,.2,1);--ease-spring:cubic-bezier(.34,1.56,.5,1);
  --shadow-card:0 1px 2px rgba(20,24,60,.05),0 10px 28px -16px rgba(20,24,60,.18);--shadow-dock:0 8px 24px -18px rgba(20,24,60,.42),0 2px 7px rgba(20,24,60,.06)
}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--cream);background-image:radial-gradient(135% 100% at 50% -10%,#fff 0%,var(--cream) 46%);-webkit-font-smoothing:antialiased;min-height:100dvh;overflow:hidden;display:flex;flex-direction:column}button,input,textarea{font:inherit}button{cursor:pointer;border:none;background:none;color:inherit}a{text-decoration:none;color:inherit}.flower{display:inline-block;background:url("bouclepro-symbol.png") center/contain no-repeat;flex-shrink:0}:focus-visible{outline:3px solid color-mix(in oklab,var(--purple) 55%,white);outline-offset:2px;border-radius:6px}
/* Header include */
.app-header{flex:0 0 auto;z-index:60;padding:10px 14px 8px;background:linear-gradient(180deg,rgba(250,247,240,.92),rgba(250,247,240,.72));backdrop-filter:blur(14px)}.app-header-in{max-width:980px;margin:0 auto;display:grid;grid-template-columns:minmax(210px,auto) minmax(160px,1fr) auto;align-items:center;gap:12px}.brand-area{display:flex;align-items:center;gap:10px;min-width:0}.logo-link{width:42px;height:42px;border-radius:50%;background:var(--md-surface);border:1px solid var(--md-outline);display:grid;place-items:center;box-shadow:0 1px 2px rgba(20,24,60,.04)}.logo-link .flower{width:26px;height:26px}.context-picker{position:relative}.context-picker>summary{list-style:none;display:flex;align-items:center;gap:8px;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:var(--r-full);padding:7px 12px 7px 7px;box-shadow:0 1px 2px rgba(20,24,60,.04);cursor:pointer}.context-picker>summary::-webkit-details-marker{display:none}.ctx-icon{width:32px;height:32px;border-radius:13px;background:var(--md-primary-container);color:var(--md-on-primary-container);display:grid;place-items:center;font-size:18px;flex:0 0 auto}.ctx-copy{display:flex;flex-direction:column;line-height:1.05;min-width:0}.ctx-copy small{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.ctx-copy b{font-size:14px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.chevron{font-size:16px;color:var(--faint)}.global-search{height:42px;display:flex;align-items:center;gap:8px;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:var(--r-full);padding:0 8px 0 14px;box-shadow:0 1px 2px rgba(20,24,60,.04);min-width:0}.global-search i{font-size:20px;color:var(--faint)}.global-search input{min-width:0;flex:1;border:none;background:transparent;outline:none;color:var(--ink);font-size:14px}.global-search button{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:var(--faint)}.global-search button:hover{background:var(--md-surface-container);color:var(--ink-soft)}.header-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:42px;height:42px;border-radius:var(--r-full);display:grid;place-items:center;font-size:21px;color:var(--ink-soft);background:var(--md-surface);border:1px solid var(--md-outline);transition:background .15s,transform .12s,color .15s;position:relative}.icon-btn:hover{background:var(--md-surface-container);color:var(--ink)}.avatar{width:42px;height:42px;border-radius:50%;overflow:hidden;border:2px solid #fff;box-shadow:0 0 0 1px var(--md-outline);display:block;cursor:pointer}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.header-menu,.avatar-menu-wrap{position:relative}.header-menu>summary{list-style:none}.header-menu>summary::-webkit-details-marker,.avatar-menu-wrap>summary::-webkit-details-marker{display:none}.dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 2px #fff}.menu-card{position:absolute;top:calc(100% + 8px);right:0;z-index:100;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:20px;box-shadow:0 22px 50px -26px rgba(20,24,60,.38);padding:10px;min-width:260px}.context-menu{left:0;right:auto}.menu-card h3{margin:6px 8px 10px;font-size:15px}.menu-card a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;color:var(--ink-soft);font-size:14px}.menu-card a:hover{background:var(--md-surface-container);color:var(--ink)}.menu-card a i{font-size:20px;color:var(--purple)}.menu-card a span{display:flex;flex-direction:column}.menu-card a small,.avatar-menu small{color:var(--faint);font-size:12px}.compact-menu{min-width:210px}.avatar-menu{min-width:230px}.avatar-menu strong{display:block;padding:6px 10px 1px}.avatar-menu>small{display:block;padding:0 10px 8px}.avatar-menu hr{border:none;border-top:1px solid var(--md-outline-soft);margin:6px 0}
.app-main{flex:1 1 auto;min-height:0;width:100%;max-width:760px;margin:0 auto;display:flex;flex-direction:column;padding:0 20px;padding-bottom:92px}
/* Loop */
.screen-shell,.loop-shell{flex:1 1 auto;min-height:0;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:24px;overflow:hidden;box-shadow:0 1px 2px rgba(20,24,60,.05),0 24px 56px -28px rgba(20,24,60,.4)}.loop-frame{height:100%;display:flex;flex-direction:column}.chat-tools{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:11px 13px;border-bottom:1px solid var(--md-outline-soft);background:var(--md-surface)}.ct-label{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--faint);flex-shrink:0}.tool-rail{display:flex;gap:9px;overflow-x:auto;flex:1;min-width:0;scrollbar-width:none}.tool-rail::-webkit-scrollbar{display:none}.tool{flex:0 0 auto;display:inline-flex;align-items:center;gap:9px;text-align:left;background:var(--md-surface-container);border:1px solid var(--md-outline);border-radius:14px;padding:7px 13px 7px 8px;transition:transform .14s,box-shadow .2s,border-color .2s,background .15s}.tool:hover{background:#fff;box-shadow:0 8px 18px -12px rgba(20,24,60,.32)}.tool .tic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-size:18px}.tool .summary{background:#EADFFF;color:var(--purple)}.tool .manifest{background:var(--c-offer);color:var(--on-offer)}.tool .todo{background:var(--c-link);color:var(--on-link)}.badge-mini{background:var(--md-surface-container);color:var(--ink-soft);font-size:11px;font-weight:800;padding:3px 8px;border-radius:var(--r-full)}.thread-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px 16px 8px;background:linear-gradient(180deg,#FBF9F3,#FCFAF5);scroll-behavior:smooth;overscroll-behavior:contain}.thread{display:flex;flex-direction:column;gap:14px;padding-bottom:4px}.day{display:flex;align-items:center;gap:12px;margin:2px 2px 14px;color:var(--faint);font-size:12px;font-weight:600}.day::before,.day::after{content:"";flex:1;height:1px;background:var(--md-outline)}.msg{display:flex;gap:11px;max-width:84%}.msg .av{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;background:#E7E2F2;margin-top:18px}.msg .col{display:flex;flex-direction:column;gap:3px;min-width:0}.msg .meta{display:flex;align-items:baseline;gap:8px;padding:0 4px}.msg .meta b{font-size:13px;font-weight:700}.msg .meta time{font-size:11px;color:var(--faint)}.bubble{background:var(--md-surface);border:1px solid var(--md-outline);padding:11px 15px;border-radius:6px 18px 18px 18px;font-size:15px;line-height:1.45;color:var(--ink);box-shadow:0 1px 2px rgba(20,24,60,.04);text-wrap:pretty}.bubble .ref{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--on-need);background:var(--c-need);padding:2px 9px;border-radius:var(--r-full);margin-bottom:6px}.msg.me{align-self:flex-end;flex-direction:row-reverse}.msg.me .bubble{background:var(--md-primary);border-color:transparent;color:#fff;border-radius:18px 6px 18px 18px;box-shadow:0 8px 18px -10px rgba(107,44,255,.6)}.event,.ai-action{align-self:center;display:flex;align-items:flex-start;gap:10px;width:fit-content;max-width:min(92%,640px);background:linear-gradient(180deg,#FBFAFF,#F4EFFF);border:1px solid #E7DCFF;color:var(--ink-soft);font-size:13px;font-weight:500;line-height:1.4;padding:10px 14px;border-radius:18px;text-align:left}.event-ic,.aa-ic{width:22px;height:22px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;background:#EADFFF;color:var(--purple);margin-top:-1px}.event b{color:var(--purple);font-weight:800}.event a{color:var(--purple);font-weight:800;text-decoration:underline}.ai-action{align-self:stretch;width:auto;max-width:100%;border-radius:18px}.aa-ic{width:34px;height:34px;border-radius:12px;font-size:18px}.ai-action span:not(.aa-ic){display:block;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--purple);margin-bottom:4px}.ai-action p{margin:0 0 10px;font-size:14px;line-height:1.45;color:var(--ink)}.ai-action button{display:inline-flex;align-items:center;gap:7px;background:var(--purple);color:#fff;font-size:13px;font-weight:700;padding:9px 13px;border-radius:12px}.composer{flex:0 0 auto;display:flex;align-items:flex-end;gap:8px;padding:10px 11px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--md-outline-soft);background:var(--md-surface)}.composer .plus{width:40px;height:40px;border-radius:50%;background:var(--md-surface-container);color:var(--ink-soft);display:grid;place-items:center;font-size:21px;flex-shrink:0}.composer .field{flex:1;min-width:0;background:var(--md-surface-container);border:1px solid var(--md-outline);border-radius:20px;display:flex}.composer textarea{width:100%;border:none;background:none;resize:none;font-size:15px;line-height:1.4;color:var(--ink);padding:10px 14px;max-height:110px;outline:none}.composer .send{width:40px;height:40px;border-radius:50%;background:var(--md-primary);color:#fff;display:grid;place-items:center;font-size:20px;flex-shrink:0;box-shadow:0 8px 18px -8px rgba(107,44,255,.6)}
/* Screens */
.screen-shell{overflow:auto;padding:22px}.screen-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.screen-head h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.04em;line-height:.98;margin:4px 0 8px}.screen-head p{margin:0;color:var(--muted);font-size:16px;line-height:1.5}.kicker{display:inline-flex;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--purple)}.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--md-primary);color:#fff;border-radius:14px;padding:12px 16px;font-weight:800;box-shadow:0 10px 22px -10px rgba(107,44,255,.6);white-space:nowrap}.filter-row{display:flex;gap:9px;overflow-x:auto;margin:0 0 18px}.chip{display:inline-flex;align-items:center;border-radius:999px;background:var(--md-surface-container);border:1px solid var(--md-outline);padding:8px 12px;font-weight:750;color:var(--ink-soft);white-space:nowrap}.chip.active{background:var(--md-primary-container);color:var(--md-on-primary-container);border-color:transparent}.market-grid,.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.market-card,.person,.article-card{background:#fff;border:1px solid var(--md-outline);border-radius:20px;padding:16px;box-shadow:var(--shadow-card)}.market-card>span{display:inline-flex;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 9px;margin-bottom:12px}.market-card.need>span{background:var(--c-need);color:var(--on-need)}.market-card.offer>span{background:var(--c-offer);color:var(--on-offer)}.market-card.explore>span{background:var(--c-fasc);color:var(--on-fasc)}.market-card.meet>span{background:var(--c-link);color:var(--on-link)}.market-card.learn>span{background:var(--md-primary-container);color:var(--md-on-primary-container)}.market-card h2{font-size:18px;line-height:1.2;margin:0 0 8px}.market-card p{margin:0 0 14px;color:var(--muted);line-height:1.45}.market-card footer{display:flex;justify-content:space-between;gap:10px;align-items:center}.market-card footer b{color:var(--purple)}.market-card footer small{color:var(--faint);font-weight:650}.blog-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px}.toc{position:sticky;top:0;align-self:start;background:#fff;border:1px solid var(--md-outline);border-radius:20px;padding:16px}.toc h2{margin:0 0 10px;font-size:16px}.toc a{display:block;padding:9px 8px;border-radius:12px;color:var(--ink-soft);font-weight:700}.toc a:hover{background:var(--md-surface-container);color:var(--ink)}.article-list{display:grid;gap:14px}.article-card{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px}.cover{width:84px;min-height:96px;border-radius:16px;display:grid;place-items:center;font-weight:900;color:#fff;background:linear-gradient(135deg,var(--purple),var(--pink))}.cover.chatgpt{background:linear-gradient(135deg,#0EA5E9,#6B2CFF)}.cover.elearn{background:linear-gradient(135deg,#3FA45B,#4D7CFF)}.cover.formation{background:linear-gradient(135deg,#FF8A3D,#FF4F9A)}.cover.pedagogy{background:linear-gradient(135deg,#0D1538,#6B2CFF)}.article-card h2{margin:6px 0 8px;font-size:20px}.article-card p{margin:0 0 8px;color:var(--muted);line-height:1.45}.article-card small{color:var(--faint);font-weight:750}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.person{display:flex;gap:13px}.person img{width:54px;height:54px;border-radius:50%;object-fit:cover}.person h2{font-size:18px;margin:0 0 4px}.person p{margin:0 0 10px;color:var(--muted);font-size:13px}.person div div{display:flex;flex-wrap:wrap;gap:6px}.person span{font-size:12px;background:var(--md-surface-container);border-radius:999px;padding:5px 8px;color:var(--ink-soft);font-weight:700}.messages-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px;height:calc(100% - 92px);min-height:430px}.thread-list{background:#fff;border:1px solid var(--md-outline);border-radius:20px;padding:8px;display:flex;flex-direction:column;gap:6px}.thread-person{text-align:left;padding:12px;border-radius:15px}.thread-person.active{background:var(--md-primary-container);color:var(--md-on-primary-container)}.thread-person b{display:block}.thread-person small{color:var(--muted)}.thread-person.active small{color:var(--md-on-primary-container)}.dm-window{background:#fff;border:1px solid var(--md-outline);border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:12px;overflow:auto}.dm-msg{max-width:76%;padding:12px 14px;border-radius:18px;background:var(--md-surface-container);line-height:1.45}.dm-msg.bob{align-self:flex-end;background:var(--md-primary);color:#fff}.dm-composer{display:flex;gap:8px;margin-top:auto;border-top:1px solid var(--md-outline-soft);padding-top:12px}.dm-composer input{flex:1;border:1px solid var(--md-outline);background:var(--md-surface-container);border-radius:999px;padding:10px 13px;outline:none}.dm-composer button{width:42px;height:42px;border-radius:50%;background:var(--md-primary);color:#fff;display:grid;place-items:center}
/* Side panel */
.panel-scrim,.fab-scrim{position:fixed;inset:0;z-index:80;background:rgba(13,21,56,.42);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .24s var(--ease)}.panel-scrim.open,.fab-scrim.open{opacity:1;pointer-events:auto}.side-panel{position:fixed;top:0;right:0;bottom:0;z-index:90;width:min(480px,100%);background:var(--md-surface);border-left:1px solid var(--md-outline);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .36s var(--ease-spring);box-shadow:-24px 0 60px -30px rgba(20,24,60,.45)}.side-panel.open{transform:none}.side-panel header{display:flex;align-items:center;gap:13px;padding:18px;border-bottom:1px solid var(--md-outline-soft)}.side-panel .pic{width:42px;height:42px;border-radius:13px;background:#EADFFF;color:var(--purple);display:grid;place-items:center;font-size:22px}.side-panel header div{flex:1}.side-panel header b{display:block;font-size:18px;font-weight:850}.side-panel header small{color:var(--faint)}.side-panel header button{width:38px;height:38px;border-radius:50%;background:var(--md-surface-container);display:grid;place-items:center}.side-body{flex:1;overflow:auto;padding:18px}.panel-card{background:var(--md-surface-container);border:1px solid var(--md-outline-soft);border-radius:16px;padding:14px;margin-bottom:12px}.panel-card p{color:var(--muted);line-height:1.45;margin:6px 0 0}
/* Dock include */
.dock-wrap{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;justify-content:center;padding:0 16px calc(12px + env(safe-area-inset-bottom));pointer-events:none}.dock{pointer-events:auto;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;gap:2px;width:auto;min-width:min(410px,calc(100vw - 24px));max-width:430px;background:color-mix(in oklab,var(--md-surface) 78%,transparent);backdrop-filter:saturate(1.5) blur(18px);-webkit-backdrop-filter:saturate(1.5) blur(18px);border:1px solid color-mix(in oklab,var(--md-outline) 80%,transparent);border-radius:24px;padding:6px 8px 5px;box-shadow:var(--shadow-dock)}.dock-tab{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:3px 5px 2px;border-radius:18px;color:var(--muted);transition:color .2s var(--ease)}.dock-ind{display:flex;align-items:center;justify-content:center;width:46px;height:30px;border-radius:18px;font-size:20px;transition:background .26s var(--ease),color .2s var(--ease),transform .34s var(--ease-spring)}.dock-tab span:last-child{font-size:9.8px;line-height:1.05;font-weight:650}.dock-tab.is-active{color:var(--md-on-primary-container)}.dock-tab.is-active .dock-ind{background:var(--md-primary-container);color:var(--md-on-primary-container)}.dock-tab.is-active span:last-child{font-weight:800;color:var(--ink)}.dock-tab:not(.is-active):hover .dock-ind{background:var(--md-surface-container)}.dock-fab .dock-ind{width:48px;height:39px;border-radius:18px;background:linear-gradient(160deg,#7E45FF,#5A1FE6);color:#fff;font-size:23px;box-shadow:0 9px 18px -10px rgba(107,44,255,.65),inset 0 1px 0 rgba(255,255,255,.25);transform:translateY(-8px)}.dock-fab span:last-child{color:var(--purple);font-weight:800;transform:translateY(-5px)}.quick-actions{pointer-events:auto;position:fixed;left:50%;bottom:82px;transform:translateX(-50%) translateY(12px) scale(.98);width:min(420px,calc(100vw - 24px));display:grid;gap:8px;opacity:0;visibility:hidden;transition:.22s var(--ease);z-index:85}.quick-actions.open{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0) scale(1)}.quick-actions button{display:flex;align-items:center;gap:12px;text-align:left;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:18px;padding:12px;box-shadow:var(--shadow-card)}.quick-actions button small{display:block;color:var(--faint);font-weight:650}.qa-ico{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;font-size:20px}.qa-ico.need{background:var(--c-offer);color:var(--on-offer)}.qa-ico.offer{background:var(--c-need);color:var(--on-need)}.qa-ico.meet{background:var(--c-link);color:var(--on-link)}.qa-ico.explore{background:var(--c-fasc);color:var(--on-fasc)}.qa-ico.learn{background:var(--md-primary-container);color:var(--md-on-primary-container)}
@media (min-width:901px){.app-main{padding-bottom:96px}.dock-wrap{padding-bottom:14px}.dock{min-width:420px;max-width:450px}.dock-ind{width:48px;height:31px}.dock-fab .dock-ind{width:50px;height:40px}.quick-actions{bottom:88px}}
@media (max-width:760px){.app-header{padding:8px 10px}.app-header-in{grid-template-columns:auto 1fr auto;gap:8px}.global-search{order:3;grid-column:1/-1;height:38px}.ctx-copy small{display:none}.ctx-copy b{max-width:42vw;font-size:13px}.logo-link{width:38px;height:38px}.icon-btn,.avatar{width:38px;height:38px}.header-actions{gap:6px}.menu-card{position:fixed;top:60px;left:12px;right:12px;min-width:0}.app-main{padding:0 8px 82px}.screen-shell,.loop-shell{border-radius:20px}.chat-tools{padding:9px 10px}.ct-label{display:none}.tool{padding:7px 10px 7px 7px}.tool .tic{width:31px;height:31px}.thread-scroll{padding:14px 12px 8px}.msg{max-width:92%;gap:9px}.msg .av{width:32px;height:32px}.bubble{font-size:14.5px;padding:10px 13px}.event,.ai-action{align-self:stretch;width:auto;max-width:100%;border-radius:17px;font-size:12.8px;line-height:1.4;padding:10px 12px}.composer{padding:8px 9px calc(8px + env(safe-area-inset-bottom));gap:7px}.composer .plus,.composer .send{width:38px;height:38px}.composer textarea{font-size:14.5px;padding:9px 12px}.screen-shell{padding:16px}.screen-head{flex-direction:column}.btn-primary{width:100%;justify-content:center}.market-grid,.directory-grid{grid-template-columns:1fr}.blog-layout,.messages-layout{grid-template-columns:1fr}.toc{position:static}.messages-layout{height:auto}.thread-list{flex-direction:row;overflow:auto}.thread-person{min-width:130px}.article-card{grid-template-columns:70px minmax(0,1fr)}.cover{width:70px;min-height:86px}.side-panel{width:100%;border-left:none;border-radius:22px 22px 0 0;top:7vh}.dock-wrap{padding-left:10px;padding-right:10px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.dock{min-width:0;width:100%;max-width:390px;border-radius:22px;padding:5px 6px 4px;gap:0}.dock-ind{width:40px;height:28px;font-size:19px}.dock-tab span:last-child{font-size:9px}.dock-fab .dock-ind{width:44px;height:36px;font-size:22px;transform:translateY(-7px)}.dock-fab span:last-child{transform:translateY(-4px)}.quick-actions{bottom:calc(70px + env(safe-area-inset-bottom))}}
@media (max-width:380px){.ctx-copy{display:none}.dock{padding-left:4px;padding-right:4px}.dock-ind{width:36px}.dock-tab span:last-child{font-size:8.5px}.dock-fab .dock-ind{width:40px;height:34px}.event-ic,.aa-ic{display:none}.event,.ai-action{display:block}}

/* ==========================================================
   v02 adaptive layout fix
   - page scroll restored
   - loop frame aligned with header width
   - dock reduced and made lighter/floating
   Material 3 logic: adaptive content width, no fixed frozen viewport.
   ========================================================== */
:root{
  --bp-layout-max:1180px;
  --bp-header-height:66px;
  --bp-footer-clearance:104px;
}
html{
  min-height:100%;
  overflow-y:auto;
  overflow-x:hidden;
}
body{
  min-height:100dvh;
  height:auto;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  display:block!important;
}
.app-header{
  position:sticky;
  top:0;
  z-index:60;
}
.app-header-in{
  max-width:var(--bp-layout-max)!important;
}
.app-main{
  width:100%;
  max-width:var(--bp-layout-max)!important;
  min-height:calc(100dvh - var(--bp-header-height));
  height:auto;
  margin:0 auto;
  display:block!important;
  padding-left:20px;
  padding-right:20px;
  padding-bottom:var(--bp-footer-clearance)!important;
}
.screen-shell,.loop-shell{
  width:100%;
  max-width:100%;
  min-height:calc(100dvh - 168px);
  height:auto;
}
.loop-frame{
  min-height:calc(100dvh - 168px);
  height:auto!important;
}
.thread-scroll{
  flex:0 0 auto!important;
  min-height:auto!important;
  overflow:visible!important;
  padding-bottom:22px;
}
.thread{
  padding-bottom:0;
}
.composer{
  position:sticky;
  bottom:86px;
  z-index:20;
  background:color-mix(in oklab,var(--md-surface) 88%,transparent);
  backdrop-filter:saturate(1.4) blur(14px);
  -webkit-backdrop-filter:saturate(1.4) blur(14px);
}
.dock-wrap{
  padding:0 16px calc(10px + env(safe-area-inset-bottom))!important;
}
.dock{
  min-width:min(390px,calc(100vw - 24px))!important;
  max-width:405px!important;
  border-radius:22px!important;
  padding:4px 7px 3px!important;
  gap:0!important;
  box-shadow:0 10px 28px -20px rgba(20,24,60,.48),0 1px 4px rgba(20,24,60,.06)!important;
}
.dock-tab{
  padding:2px 4px 1px!important;
  gap:0!important;
  border-radius:17px!important;
}
.dock-ind{
  width:41px!important;
  height:26px!important;
  font-size:18px!important;
}
.dock-tab span:last-child{
  font-size:8.9px!important;
  line-height:1!important;
}
.dock-fab .dock-ind{
  width:43px!important;
  height:34px!important;
  font-size:22px!important;
  border-radius:17px!important;
  transform:translateY(-6px)!important;
}
.dock-fab span:last-child{
  transform:translateY(-4px)!important;
}
.quick-actions{
  bottom:74px!important;
}
.side-panel{
  max-height:100dvh;
}
@media (min-width:901px){
  .app-main{padding-bottom:108px!important;}
  .screen-shell,.loop-shell{min-height:calc(100dvh - 174px);}
  .loop-frame{min-height:calc(100dvh - 174px);}
  .composer{bottom:88px;}
}
@media (max-width:760px){
  .app-header{position:sticky;}
  .app-main{
    max-width:100%!important;
    padding-left:8px!important;
    padding-right:8px!important;
    padding-bottom:88px!important;
    min-height:calc(100dvh - 92px);
  }
  .screen-shell,.loop-shell{
    min-height:calc(100dvh - 164px);
  }
  .loop-frame{
    min-height:calc(100dvh - 164px);
  }
  .thread-scroll{
    overflow:visible!important;
  }
  .composer{
    bottom:72px;
  }
  .dock-wrap{padding-bottom:calc(8px + env(safe-area-inset-bottom))!important;}
  .dock{max-width:376px!important;min-width:0!important;width:100%!important;padding:4px 6px 3px!important;border-radius:21px!important;}
  .dock-ind{width:38px!important;height:25px!important;font-size:18px!important;}
  .dock-tab span:last-child{font-size:8.5px!important;}
  .dock-fab .dock-ind{width:41px!important;height:33px!important;transform:translateY(-6px)!important;}
  .quick-actions{bottom:66px!important;}
}
@media (max-width:380px){
  .dock-ind{width:34px!important;}
  .dock-tab span:last-child{font-size:8px!important;}
}


/* ============================================================
   v03 fixes: create menu without blur + balanced floating dock
   + learning loop tools
   ============================================================ */
.fab-scrim,
.fab-scrim.open{
  display:none!important;
  opacity:0!important;
  pointer-events:none!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.dock-wrap{
  padding:0 16px calc(14px + env(safe-area-inset-bottom))!important;
}
.dock{
  min-width:min(460px,calc(100vw - 26px))!important;
  max-width:480px!important;
  border-radius:28px!important;
  padding:8px 11px 7px!important;
  gap:4px!important;
  box-shadow:0 16px 36px -24px rgba(20,24,60,.48),0 2px 8px rgba(20,24,60,.07)!important;
}
.dock-tab{
  gap:4px!important;
  padding:5px 6px 4px!important;
  border-radius:20px!important;
}
.dock-ind{
  width:52px!important;
  height:34px!important;
  font-size:22px!important;
  border-radius:22px!important;
}
.dock-tab span:last-child{
  font-size:11px!important;
  line-height:1.05!important;
  font-weight:700!important;
}
.dock-fab .dock-ind{
  width:56px!important;
  height:46px!important;
  border-radius:20px!important;
  font-size:27px!important;
  transform:translateY(-12px)!important;
}
.dock-fab span:last-child{
  display:none!important;
}
.quick-actions{
  bottom:92px!important;
  z-index:85!important;
}
.quick-actions.open{
  filter:none!important;
}
.tic.support{background:var(--c-offer)!important;color:var(--on-offer)!important}
.tic.evaluation{background:var(--c-fasc)!important;color:var(--on-fasc)!important}
.tic.ressources{background:var(--c-need)!important;color:var(--on-need)!important}
.learning-loop .event b{color:var(--purple)}
.learning-loop .ref{background:var(--md-primary-container);color:var(--md-on-primary-container)}
@media (min-width:901px){
  .dock{min-width:480px!important;max-width:500px!important;}
  .dock-ind{width:54px!important;height:35px!important;}
  .dock-fab .dock-ind{width:58px!important;height:48px!important;}
  .quick-actions{bottom:100px!important;}
}
@media (max-width:760px){
  .dock-wrap{padding-left:12px!important;padding-right:12px!important;padding-bottom:calc(12px + env(safe-area-inset-bottom))!important;}
  .dock{width:100%!important;min-width:0!important;max-width:430px!important;border-radius:26px!important;padding:7px 8px 6px!important;gap:2px!important;}
  .dock-tab{padding:4px 3px 3px!important;gap:3px!important;}
  .dock-ind{width:46px!important;height:31px!important;font-size:21px!important;}
  .dock-tab span:last-child{font-size:10px!important;}
  .dock-fab .dock-ind{width:52px!important;height:43px!important;font-size:26px!important;transform:translateY(-11px)!important;}
  .quick-actions{bottom:calc(88px + env(safe-area-inset-bottom))!important;}
}
@media (max-width:380px){
  .dock-ind{width:42px!important;}
  .dock-tab span:last-child{font-size:9.5px!important;}
  .dock-fab .dock-ind{width:48px!important;height:40px!important;}
}


/* ============================================================
   v04 — deployment root, Material 3 standalone FAB, collapsed search,
   two-loop selector, desktop split tool panel
   ============================================================ */
html,body{overflow:auto!important;min-height:100dvh!important;height:auto!important;}
body{display:block!important;}
.app-header{position:sticky;top:0;z-index:120;}
.app-header-in{max-width:1180px!important;grid-template-columns:minmax(230px,auto) minmax(54px,1fr) auto!important;}
.search-zone{position:relative;display:flex;justify-content:center;min-width:0;}
.search-trigger{width:46px;height:46px;border-radius:50%;background:var(--md-surface);border:1px solid var(--md-outline);display:grid;place-items:center;font-size:24px;color:var(--ink-soft);box-shadow:0 1px 2px rgba(20,24,60,.04);transition:background .15s,transform .12s,color .15s;}
.search-trigger:hover{background:var(--md-surface-container);color:var(--ink);}
.search-zone .global-search{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.96);width:min(620px,calc(100vw - 420px));min-width:300px;opacity:0;visibility:hidden;pointer-events:none;transition:.2s var(--ease);z-index:150;}
.search-zone.search-open .global-search{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,-50%) scale(1);}
.search-zone.search-open .search-trigger{opacity:0;pointer-events:none;}
.search-close{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:var(--faint);}
.search-close:hover{background:var(--md-surface-container-high);color:var(--ink);}
.app-main{max-width:1180px!important;padding-left:20px!important;padding-right:20px!important;padding-bottom:128px!important;min-height:calc(100dvh - 74px)!important;}
.page-boucle .app-main,.page-apprendre .app-main{display:grid!important;grid-template-columns:minmax(0,1fr) 390px;align-items:stretch;gap:16px;}
.page-boucle.panel-collapsed .app-main,.page-apprendre.panel-collapsed .app-main{grid-template-columns:minmax(0,1fr) 0!important;gap:0!important;}
.page-boucle.panel-collapsed .side-panel,.page-apprendre.panel-collapsed .side-panel{display:none!important;}
.screen-shell,.loop-shell{min-height:calc(100dvh - 198px)!important;}
.loop-frame{min-height:calc(100dvh - 198px)!important;}
.side-panel{position:static!important;z-index:auto!important;width:100%!important;min-width:0!important;height:auto!important;max-height:none!important;transform:none!important;border:1px solid var(--md-outline)!important;border-radius:24px!important;box-shadow:0 1px 2px rgba(20,24,60,.05),0 24px 56px -32px rgba(20,24,60,.30)!important;overflow:hidden!important;background:var(--md-surface)!important;display:flex!important;}
.side-panel.open{transform:none!important;}
.panel-scrim,.panel-scrim.open{display:none!important;opacity:0!important;pointer-events:none!important;background:transparent!important;backdrop-filter:none!important;}
.side-panel header{padding:16px!important;}
.side-panel .panel-expand{width:38px;height:38px;border-radius:50%;background:var(--md-surface-container);display:grid;place-items:center;color:var(--ink-soft);}
.side-panel .panel-expand:hover{background:var(--md-surface-container-high);color:var(--ink);}
.side-panel .side-body{max-height:none!important;}
.thread-scroll{overflow-y:auto!important;}
/* bottom navigation is only navigation; FAB is independent */
.dock-wrap{z-index:90!important;padding:0 16px calc(14px + env(safe-area-inset-bottom))!important;}
.dock{grid-template-columns:repeat(4,1fr)!important;min-width:min(390px,calc(100vw - 32px))!important;max-width:430px!important;padding:9px 12px 8px!important;border-radius:30px!important;gap:6px!important;}
.dock-tab{padding:6px 7px 5px!important;}
.dock-ind{width:58px!important;height:35px!important;font-size:22px!important;}
.dock-tab span:last-child{font-size:11px!important;line-height:1.05!important;}
.standalone-fab{position:fixed;left:50%;bottom:82px;z-index:100;transform:translateX(-50%);width:64px;height:64px;border-radius:22px;background:linear-gradient(160deg,#7E45FF,#5A1FE6);color:#fff;display:grid;place-items:center;font-size:32px;box-shadow:0 18px 34px -18px rgba(107,44,255,.8),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .18s var(--ease),box-shadow .2s var(--ease),filter .16s var(--ease);}
.standalone-fab:hover{transform:translateX(-50%) translateY(-2px);filter:brightness(1.05);}
.standalone-fab[aria-expanded="true"]{transform:translateX(-50%) translateY(-3px) rotate(45deg);}
.quick-actions{bottom:154px!important;z-index:105!important;}
.quick-actions.open{filter:none!important;}
.fab-scrim,.fab-scrim.open{display:none!important;}
@media (max-width:900px){
  .app-header-in{grid-template-columns:auto 1fr auto!important;}
  .search-zone{justify-content:flex-end;}
  .search-zone .global-search{position:fixed;top:12px;left:50%;width:min(620px,calc(100vw - 24px));min-width:0;transform:translateX(-50%) translateY(-8px) scale(.98);}
  .search-zone.search-open .global-search{transform:translateX(-50%) translateY(0) scale(1);}
  .page-boucle .app-main,.page-apprendre .app-main{display:flex!important;flex-direction:column!important;gap:0!important;}
  .app-main{padding-left:8px!important;padding-right:8px!important;padding-bottom:118px!important;}
  .screen-shell,.loop-shell{min-height:calc(100dvh - 170px)!important;}
  .loop-frame{min-height:calc(100dvh - 170px)!important;}
  .side-panel{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%!important;height:min(72vh,640px)!important;border-radius:24px 24px 0 0!important;z-index:130!important;transform:translateY(105%)!important;transition:transform .3s var(--ease-spring)!important;display:flex!important;}
  .side-panel.open{transform:translateY(0)!important;}
  .panel-scrim.open{display:block!important;opacity:1!important;pointer-events:auto!important;background:rgba(13,21,56,.28)!important;backdrop-filter:none!important;}
  .side-panel .panel-expand{display:none!important;}
  .dock{max-width:440px!important;}
  .standalone-fab{bottom:80px;width:60px;height:60px;border-radius:21px;font-size:31px;}
  .quick-actions{bottom:148px!important;}
}
@media (max-width:640px){
  .context-picker>summary{padding-right:9px;}
  .app-header-in{gap:7px!important;}
  .search-trigger{width:42px;height:42px;font-size:23px;}
  .header-actions .icon-btn:nth-of-type(1){display:none;}
  .dock-wrap{padding-left:12px!important;padding-right:12px!important;padding-bottom:calc(12px + env(safe-area-inset-bottom))!important;}
  .dock{width:100%!important;min-width:0!important;max-width:420px!important;border-radius:28px!important;padding:8px 8px 7px!important;gap:2px!important;}
  .dock-ind{width:50px!important;height:33px!important;font-size:21px!important;}
  .dock-tab span:last-child{font-size:10px!important;}
  .standalone-fab{width:58px;height:58px;bottom:78px;border-radius:20px;}
  .quick-actions{bottom:calc(142px + env(safe-area-inset-bottom))!important;}
}
@media (max-width:380px){
  .dock-ind{width:44px!important;}
  .dock-tab span:last-child{font-size:9.3px!important;}
}

/* ============================================================
   v05 — full desktop canvas, centered dock FAB, contextual selector,
   right-side search expansion, non-closing tool resize
   ============================================================ */
:root{--bp-layout-max:calc(100vw - 32px);--bp-wide-max:1760px;}
.app-header{position:sticky;top:0;z-index:140!important;padding-left:16px!important;padding-right:16px!important;}
.app-header-in{width:min(var(--bp-layout-max),var(--bp-wide-max))!important;max-width:none!important;grid-template-columns:minmax(260px,auto) minmax(0,1fr) auto!important;margin:0 auto!important;}
.header-fill{min-width:0;}
.header-actions{position:relative;display:flex;align-items:center;gap:8px;}
.header-actions .search-zone{order:-1;position:relative;display:flex;justify-content:flex-end;min-width:46px;}
.header-actions .search-trigger{width:46px;height:46px;border-radius:50%;background:var(--md-surface);border:1px solid var(--md-outline);display:grid;place-items:center;font-size:24px;color:var(--ink-soft);box-shadow:0 1px 2px rgba(20,24,60,.04);}
.header-actions .global-search{position:absolute!important;right:0!important;left:auto!important;top:50%!important;width:min(680px,calc(100vw - 420px))!important;min-width:320px!important;height:46px!important;transform:translateY(-50%) scaleX(.96)!important;transform-origin:right center!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:220!important;box-shadow:0 16px 38px -24px rgba(20,24,60,.45)!important;}
.header-actions .search-zone.search-open .global-search{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(-50%) scaleX(1)!important;}
.header-actions .search-zone.search-open .search-trigger{opacity:0!important;pointer-events:none!important;}
.menu-card a.is-current{background:var(--md-primary-container);color:var(--md-on-primary-container);}
.menu-card a.is-current i{color:var(--md-on-primary-container);}
.app-main{width:min(var(--bp-layout-max),var(--bp-wide-max))!important;max-width:none!important;padding-left:16px!important;padding-right:16px!important;padding-bottom:116px!important;margin:0 auto!important;}
.page-boucle .app-main,.page-apprendre .app-main{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(390px,30vw)!important;gap:16px!important;align-items:stretch!important;}
.page-boucle.panel-expanded .app-main,.page-apprendre.panel-expanded .app-main{grid-template-columns:minmax(0,1fr) minmax(560px,42vw)!important;}
.page-boucle.panel-collapsed .app-main,.page-apprendre.panel-collapsed .app-main{grid-template-columns:minmax(0,1fr) 0!important;gap:0!important;}
.screen-shell,.loop-shell{min-height:calc(100dvh - 158px)!important;}
.loop-frame{min-height:calc(100dvh - 158px)!important;}
.side-panel{display:flex!important;min-height:calc(100dvh - 158px)!important;transition:width .25s var(--ease),box-shadow .25s var(--ease),border-radius .25s var(--ease)!important;}
.side-panel .panel-expand i{transition:transform .18s var(--ease);}
.panel-expanded .side-panel .panel-expand i{transform:rotate(180deg);}
.side-panel .side-body{height:auto!important;max-height:none!important;overflow:auto!important;}
/* dock: FAB is centered in the same bar, same height/size as peers */
.standalone-fab{display:none!important;}
.dock-wrap{z-index:100!important;padding:0 16px calc(14px + env(safe-area-inset-bottom))!important;pointer-events:none!important;}
.dock{grid-template-columns:repeat(5,1fr)!important;min-width:min(520px,calc(100vw - 32px))!important;max-width:560px!important;padding:9px 12px 8px!important;border-radius:30px!important;gap:6px!important;pointer-events:auto!important;}
.dock-tab,.dock-create{min-width:0;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;padding:6px 7px 5px!important;border-radius:20px!important;color:var(--muted)!important;background:transparent!important;}
.dock-ind,.dock-create .dock-ind{width:56px!important;height:35px!important;border-radius:22px!important;font-size:22px!important;display:flex!important;align-items:center!important;justify-content:center!important;transform:none!important;}
.dock-create .dock-ind{background:linear-gradient(160deg,#7E45FF,#5A1FE6)!important;color:#fff!important;box-shadow:0 10px 20px -12px rgba(107,44,255,.7),inset 0 1px 0 rgba(255,255,255,.25)!important;}
.dock-create span:last-child{display:none!important;}
.dock-tab span:last-child{font-size:11px!important;line-height:1.05!important;font-weight:700!important;}
.dock-tab.is-active .dock-ind{background:var(--md-primary-container)!important;color:var(--md-on-primary-container)!important;}
.quick-actions{bottom:96px!important;z-index:115!important;}
.notification-shell{display:grid;gap:22px;}
.notification-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:24px;padding:24px;box-shadow:var(--shadow-card);}
.notif-big{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;font-size:31px;}
.notif-big.need{background:var(--c-offer);color:var(--on-offer)}.notif-big.message{background:var(--md-primary-container);color:var(--md-on-primary-container)}.notif-big.blog{background:var(--c-fasc);color:var(--on-fasc)}
.notification-card h2{margin:0 0 8px;font-size:24px}.notification-card p{margin:0 0 16px;color:var(--muted);font-size:16px;line-height:1.55}.notif-actions{display:flex;gap:10px;flex-wrap:wrap}
@media (min-width:1400px){.page-boucle .app-main,.page-apprendre .app-main{grid-template-columns:minmax(0,1fr) minmax(430px,28vw)!important}.page-boucle.panel-expanded .app-main,.page-apprendre.panel-expanded .app-main{grid-template-columns:minmax(0,1fr) minmax(640px,40vw)!important}}
@media (max-width:900px){
  .app-header-in{width:100%!important;grid-template-columns:auto 1fr auto!important;}
  .header-fill{display:none;}
  .header-actions .global-search{position:fixed!important;top:10px!important;left:12px!important;right:12px!important;width:auto!important;min-width:0!important;transform:translateY(-8px) scale(.98)!important;}
  .header-actions .search-zone.search-open .global-search{transform:translateY(0) scale(1)!important;}
  .page-boucle .app-main,.page-apprendre .app-main{display:block!important;width:100%!important;}
  .side-panel{position:fixed!important;left:8px!important;right:8px!important;bottom:0!important;top:auto!important;width:auto!important;min-height:0!important;max-height:78dvh!important;border-radius:24px 24px 0 0!important;z-index:130!important;transform:translateY(110%)!important;}
  .side-panel.open{transform:translateY(0)!important;}
  .panel-expanded .side-panel{max-height:94dvh!important;}
  .panel-scrim.open{display:block!important;opacity:1!important;pointer-events:auto!important;background:rgba(13,21,56,.22)!important;backdrop-filter:none!important;}
  .side-panel .panel-expand{display:grid!important;}
}
@media (max-width:760px){
  .app-header{padding-left:8px!important;padding-right:8px!important;}
  .header-actions{gap:6px;}
  .header-actions .search-trigger,.icon-btn,.avatar{width:38px!important;height:38px!important;font-size:19px!important;}
  .app-main{width:100%!important;padding-left:8px!important;padding-right:8px!important;padding-bottom:90px!important;}
  .dock{width:100%!important;min-width:0!important;max-width:430px!important;padding:7px 8px 6px!important;gap:2px!important;}
  .dock-tab,.dock-create{padding:4px 3px 3px!important;gap:3px!important;}
  .dock-ind,.dock-create .dock-ind{width:46px!important;height:31px!important;font-size:21px!important;}
  .dock-tab span:last-child{font-size:10px!important;}
  .quick-actions{bottom:calc(86px + env(safe-area-inset-bottom))!important;}
  .notification-card{grid-template-columns:1fr;padding:18px;}
}
@media (max-width:380px){.dock-ind,.dock-create .dock-ind{width:42px!important}.dock-tab span:last-child{font-size:9.5px!important}}

/* v05 mobile header fix: never hide notification/search action accidentally */
@media (max-width:760px){.header-actions .icon-btn:nth-of-type(1){display:grid!important}.notif-btn{display:grid!important}}


/* ============================================================
   v06 — FR/EN toggle + creation pages + operational content states
   ============================================================ */
.lang-toggle{display:inline-flex;align-items:center;gap:2px;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:999px;padding:3px;box-shadow:0 1px 2px rgba(20,24,60,.04)}
.lang-toggle button,.lang-toggle a{height:28px;min-width:34px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:900;color:var(--faint);letter-spacing:.04em;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.lang-toggle button.active,.lang-toggle a.active{background:var(--md-primary-container);color:var(--md-on-primary-container)}
.lang-toggle button:not(.active):hover,.lang-toggle a:not(.active):hover{background:var(--md-surface-container);color:var(--ink-soft)}
.create-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px;align-items:start}.create-card{background:var(--md-surface);border:1px solid var(--md-outline);border-radius:24px;padding:20px;box-shadow:var(--shadow-card)}.main-create-card{display:flex;gap:16px;align-items:flex-start}.main-create-card .qa-ico{width:56px;height:56px;border-radius:18px;font-size:26px}.create-card h2{margin:0 0 10px;font-size:22px}.create-card p{color:var(--muted);line-height:1.55}.step-list{margin:0;padding-left:22px;color:var(--ink-soft);line-height:1.65;font-weight:650}.create-form-card{grid-column:1/-1;display:grid;gap:9px}.create-form-card label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);font-weight:900}.create-form-card input,.create-form-card textarea,.comment-form input,.dm-composer input{width:100%;border:1px solid var(--md-outline);background:var(--md-surface-container);border-radius:15px;padding:12px 14px;font:inherit;color:var(--ink);outline:none}.create-form-card input:focus,.create-form-card textarea:focus,.comment-form input:focus,.dm-composer input:focus{border-color:color-mix(in oklab,var(--purple) 38%,white);box-shadow:0 0 0 3px color-mix(in oklab,var(--purple) 12%,transparent)}
.filter-row .chip.active{box-shadow:inset 0 0 0 2px color-mix(in oklab,var(--purple) 42%,white);background:var(--md-primary-container);color:var(--md-on-primary-container)}
a.article-card{color:inherit;text-decoration:none;transition:transform .14s var(--ease),border-color .15s var(--ease),box-shadow .2s var(--ease)}a.article-card:hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--purple) 30%,var(--md-outline));box-shadow:0 18px 42px -34px rgba(20,24,60,.42)}.article-detail{max-width:880px;margin:0 auto}.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--purple);font-weight:900;text-decoration:none;margin-bottom:18px}.article-detail h1{font-size:clamp(32px,5vw,54px);line-height:1;margin:12px 0}.article-lead{font-size:20px;color:var(--muted);line-height:1.55;margin:0 0 10px}.article-meta{color:var(--faint);font-weight:750;margin:12px 0 22px}.article-hero{height:250px;border-radius:28px;display:grid;place-items:center;color:#fff;font-size:46px;font-weight:950;letter-spacing:.08em;margin:0 0 26px;background:linear-gradient(135deg,#6B2CFF,#FF8A3D)}.article-hero.chatgpt{background:linear-gradient(135deg,#0D1538,#4D7CFF)}.article-hero.elearning,.article-hero.formation,.article-hero.pedagogie{background:linear-gradient(135deg,#3FA45B,#6B2CFF)}.article-body{font-size:18px;line-height:1.7;color:var(--ink-soft)}.article-body h2{color:var(--ink);margin-top:30px}.comments{margin-top:34px;border-top:1px solid var(--md-outline);padding-top:22px}.comment-list{display:grid;gap:12px;margin:12px 0 14px}.comment{background:var(--md-surface-container);border:1px solid var(--md-outline-soft);border-radius:18px;padding:14px}.comment p{margin:6px 0 0;color:var(--muted);line-height:1.45}.comment.me{background:var(--md-primary-container);color:var(--md-on-primary-container)}.comment.me p{color:var(--md-on-primary-container)}.comment-form,.dm-composer{display:flex;gap:10px}.comment-form button,.dm-composer button{width:46px;border-radius:15px;background:var(--md-primary);color:#fff;font-size:20px;display:grid;place-items:center;flex:0 0 auto}.dm-window{display:flex;flex-direction:column}.dm-thread{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:2px 2px 8px}.dm-msg.me{align-self:flex-end;background:var(--md-primary);color:#fff;border-color:transparent;max-width:76%}.dm-msg.me b{color:#fff}.messages-layout{min-height:min(620px,calc(100dvh - 230px))}.context-menu a.is-current{background:var(--md-primary-container);color:var(--md-on-primary-container)}
@media(max-width:760px){.lang-toggle{padding:2px}.lang-toggle button{height:26px;min-width:31px;font-size:10px;padding:0 7px}.create-layout{grid-template-columns:1fr}.comment-form,.dm-composer{gap:7px}.article-hero{height:180px;border-radius:22px}.article-detail h1{font-size:30px}.article-lead{font-size:17px}.dm-msg.me{max-width:92%}}
@media(max-width:430px){.brand-area{gap:6px}.lang-toggle button{min-width:28px;padding:0 6px}.ctx-copy b{max-width:34vw!important}}

/* ============================================================
   v07 — active directory filters, compact language switch, richer loop tools,
   restored ChatLoop inner scrollbar
   ============================================================ */
.lang-toggle{padding:1px!important;gap:1px!important;border-radius:999px!important;transform:scale(.88);transform-origin:left center;box-shadow:none!important}
.lang-toggle button{height:21px!important;min-width:25px!important;padding:0 5px!important;font-size:8.8px!important;letter-spacing:.03em!important}
.filter-state{margin:0 0 16px;color:var(--muted);font-weight:650}.filter-state b{color:var(--ink)}
.filter-row a.chip{display:inline-flex;align-items:center;justify-content:center;color:inherit;text-decoration:none}
.tic.support,.tool[data-panel="support"] .tic{background:#E7ECFF!important;color:#2B49C4!important}.tic.evaluation,.tool[data-panel="evaluation"] .tic{background:#FFEBDA!important;color:#C75A14!important}.tic.ressources,.tool[data-panel="ressources"] .tic{background:#FCE7F0!important;color:#C42B6E!important}
.course-card{background:linear-gradient(180deg,#fff,#F7F3FF);border:1px solid #E7DCFF;border-radius:22px;padding:18px;margin-bottom:14px}.course-card h3{margin:5px 0 8px;font-size:22px;letter-spacing:-.03em}.course-card p{margin:0 0 14px;color:var(--muted);line-height:1.5}.course-kicker{display:inline-flex;align-items:center;width:max-content;background:var(--md-primary-container);color:var(--md-on-primary-container);border-radius:999px;padding:5px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.course-progress{height:10px;border-radius:999px;background:#E8E2F7;overflow:hidden}.course-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7E45FF,#5A1FE6);transition:width .35s var(--ease)}.course-meta{display:block;margin-top:8px;color:var(--faint);font-weight:750}.lesson-list{display:grid;gap:9px;margin:12px 0 14px}.lesson{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:15px;padding:11px 12px;text-align:left}.lesson span:first-child{width:32px;height:32px;border-radius:11px;background:var(--md-surface-container);display:grid;place-items:center;font-weight:900;color:var(--muted)}.lesson b{font-size:14px}.lesson small{font-weight:800;color:var(--faint)}.lesson.done span:first-child{background:var(--c-link);color:var(--on-link)}.lesson.cur{border-color:#D8C9FF;background:#FBFAFF}.lesson.cur span:first-child{background:var(--md-primary-container);color:var(--md-on-primary-container)}.btn.is-done{background:var(--green)!important;box-shadow:none!important}.quiz{display:grid;gap:13px}.quiz fieldset{border:1px solid var(--md-outline);background:var(--md-surface-container);border-radius:17px;padding:14px;margin:0}.quiz legend{font-weight:900;padding:0 6px}.quiz label{display:flex;gap:9px;align-items:flex-start;padding:8px 2px;color:var(--ink-soft);font-weight:650}.panel-alert{border-radius:15px;padding:12px 14px;font-weight:750;line-height:1.45}.panel-alert.ok{background:var(--c-link);color:var(--on-link);border:1px solid color-mix(in oklab,var(--green) 24%,white)}.panel-alert.warn{background:var(--c-fasc);color:var(--on-fasc);border:1px solid color-mix(in oklab,var(--orange) 24%,white)}.resource-list{display:grid;gap:12px}.resource-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;align-items:start;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:18px;padding:14px}.resource-card>i{width:42px;height:42px;border-radius:14px;background:var(--md-primary-container);color:var(--md-on-primary-container);display:grid;place-items:center;font-size:22px}.resource-card b{font-size:15px}.resource-card p{margin:5px 0 10px;color:var(--muted);line-height:1.42}.resource-card button{background:var(--md-surface-container);border:1px solid var(--md-outline-soft);border-radius:12px;padding:8px 11px;font-weight:900;color:var(--ink-soft)}.resource-card button:disabled{opacity:.55}
@media (min-width:901px){
  body.page-boucle,body.page-apprendre{overflow:hidden!important;height:100dvh!important;min-height:100dvh!important}
  .page-boucle .app-main,.page-apprendre .app-main{width:calc(100vw - 32px)!important;max-width:none!important;margin:0 auto!important;padding:0 0 98px!important;height:calc(100dvh - 70px)!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(410px,29vw)!important;gap:16px!important;align-items:stretch!important;overflow:hidden!important}
  .page-boucle.panel-expanded .app-main,.page-apprendre.panel-expanded .app-main{grid-template-columns:minmax(0,1fr) minmax(640px,40vw)!important}
  .page-boucle.panel-collapsed .app-main,.page-apprendre.panel-collapsed .app-main{grid-template-columns:minmax(0,1fr) 0!important;gap:0!important}
  .loop-shell.screen-shell{height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border-radius:24px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
  .loop-frame{height:100%!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border-radius:24px!important}
  .chat-tools{flex:0 0 auto!important}
  .thread-scroll{flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:16px!important;scrollbar-width:auto!important;overscroll-behavior:contain!important}
  .thread-scroll::-webkit-scrollbar{width:9px!important}.thread-scroll::-webkit-scrollbar-thumb{background:var(--md-outline)!important;border-radius:999px!important;border:2px solid transparent!important;background-clip:padding-box!important}.thread-scroll::-webkit-scrollbar-track{background:transparent!important}
  .composer{position:static!important;bottom:auto!important;flex:0 0 auto!important;background:var(--md-surface)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .side-panel{height:100%!important;min-height:0!important;max-height:none!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.side-panel .side-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important}.side-panel .side-body::-webkit-scrollbar{width:9px}.side-panel .side-body::-webkit-scrollbar-thumb{background:var(--md-outline);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
}
@media (max-width:760px){.lang-toggle{transform:scale(.82);margin-left:-4px}.lang-toggle button{height:20px!important;min-width:23px!important;font-size:8.2px!important}.tool-rail{gap:8px}.tool{padding:7px 9px 7px 7px!important}.course-card h3{font-size:19px}.lesson{grid-template-columns:29px minmax(0,1fr);}.lesson small{grid-column:2}.resource-card{grid-template-columns:36px minmax(0,1fr)}.resource-card>i{width:36px;height:36px;font-size:19px}}
body:not(.page-boucle):not(.page-apprendre){overflow:auto!important;min-height:100dvh!important;height:auto!important}


/* ==========================================================
   v10 layout harmonization
   - full-width desktop shell for loop pages
   - correct logo path is already handled in app.css
   - keep common header/footer while allowing loop to use whole screen
   ========================================================== */
@media (min-width:901px){
  .page-boucle .app-header-in,
  .page-apprendre .app-header-in{
    width:min(calc(100vw - 28px),1840px)!important;
    max-width:none!important;
  }
  .page-boucle .app-main,
  .page-apprendre .app-main{
    width:min(calc(100vw - 28px),1840px)!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* v11 language toggle anchors */
.lang-toggle a{height:21px!important;min-width:25px!important;padding:0 5px!important;font-size:8.8px!important;letter-spacing:.03em!important;border-radius:999px!important}
@media(max-width:760px){.lang-toggle a{height:20px!important;min-width:23px!important;font-size:8.2px!important;padding:0 5px!important}}


/* ==========================================================
   v12 — header layout toggle, compact button
   ========================================================== */
.layout-toggle{width:38px;height:38px;border-radius:var(--r-full);display:grid;place-items:center;background:var(--md-surface);border:1px solid var(--md-outline);color:var(--ink-soft);font-size:19px;box-shadow:0 1px 2px rgba(20,24,60,.04);transition:background .15s,transform .12s,color .15s}
.layout-toggle:hover{background:var(--md-surface-container);color:var(--ink)}
.layout-toggle:active{transform:scale(.92)}
body.layout-gutter .app-header-in{width:min(calc(100vw - 164px),1320px)!important;max-width:none!important}
body.layout-gutter .app-main{width:min(calc(100vw - 164px),1320px)!important;max-width:none!important}
body.layout-full .app-header-in{width:min(calc(100vw - 28px),1840px)!important;max-width:none!important}
body.layout-full .app-main{width:min(calc(100vw - 28px),1840px)!important;max-width:none!important}
@media(max-width:900px){.layout-toggle{display:none!important}body.layout-gutter .app-header-in,body.layout-gutter .app-main,body.layout-full .app-header-in,body.layout-full .app-main{width:100%!important}}

/* ============================================================
   v14 — rebuilt create forms, exchange details, meetings module
   ============================================================ */
.create-screen{min-height:calc(100dvh - 160px)}
.create-layout-v14{display:grid;grid-template-columns:280px minmax(0,1fr) 300px;gap:18px;align-items:start}
.create-actions-panel,.create-help-card,.create-form-prototype,.detail-card,.exchange-detail,.meeting-card{background:var(--md-surface);border:1px solid var(--md-outline);border-radius:24px;box-shadow:var(--shadow-card)}
.create-actions-panel,.create-help-card{padding:16px}.create-actions-panel h2,.create-help-card h2{margin:0 0 12px;font-size:17px}.create-action-link{display:flex;align-items:center;gap:12px;padding:10px;border-radius:17px;color:var(--ink);text-decoration:none}.create-action-link:hover,.create-action-link.is-current{background:var(--md-primary-container);color:var(--md-on-primary-container)}.create-action-link small{display:block;color:var(--muted);font-weight:650}.create-form-prototype{padding:22px;display:grid;gap:16px}.form-topline{display:flex;gap:14px;align-items:center}.create-icon{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;background:var(--md-primary-container);color:var(--md-on-primary-container);font-size:28px;flex:0 0 auto}.create-form-prototype h2{margin:0;font-size:26px}.create-form-prototype p{margin:3px 0 0;color:var(--muted)}.field-block{display:grid;gap:7px}.field-block span{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.field-block input,.field-block textarea,.field-block select{width:100%;border:1px solid var(--md-outline);background:var(--md-surface-container);border-radius:16px;padding:12px 14px;font:inherit;color:var(--ink);outline:none}.field-block textarea{resize:vertical;min-height:140px}.field-block input:focus,.field-block textarea:focus,.field-block select:focus{border-color:color-mix(in oklab,var(--purple) 42%,white);box-shadow:0 0 0 3px color-mix(in oklab,var(--purple) 12%,transparent)}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:12px 16px;background:var(--md-surface-container);border:1px solid var(--md-outline);font-weight:800;color:var(--ink-soft)}.create-help-card ul{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:9px}.create-help-card li{display:flex;gap:8px;color:var(--ink-soft);line-height:1.45}.create-help-card li i{color:var(--green);margin-top:2px}.ai-preview-card{background:#FBFAFF;border:1px solid #E7DCFF;border-radius:18px;padding:15px}.ai-preview-card p{color:var(--ink-soft);line-height:1.5}.ai-preview-card ul{margin:10px 0 0;padding-left:20px;color:var(--muted)}
.market-card{display:block;color:inherit;text-decoration:none;transition:transform .14s var(--ease),box-shadow .2s var(--ease),border-color .16s}.market-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px -34px rgba(20,24,60,.42);border-color:color-mix(in oklab,var(--purple) 28%,var(--md-outline))}.market-card.teach>span{background:#E7ECFF;color:#2B49C4}.exchange-detail{max-width:960px;margin:0 auto;padding:26px}.exchange-type{display:inline-flex;font-size:12px;text-transform:uppercase;letter-spacing:.07em;font-weight:900;border-radius:999px;background:var(--md-primary-container);color:var(--md-on-primary-container);padding:7px 11px}.exchange-type.presentiel{background:var(--c-link);color:var(--on-link)}.exchange-type.visio{background:var(--c-offer);color:var(--on-offer)}.exchange-detail h1{font-size:clamp(32px,5vw,56px);line-height:1;margin:12px 0}.detail-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.detail-meta-grid div{background:var(--md-surface-container);border:1px solid var(--md-outline-soft);border-radius:18px;padding:13px}.detail-meta-grid b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin-bottom:5px}.detail-meta-grid span{font-weight:850}.detail-card{padding:18px;margin:14px 0}.detail-card h2{margin:0 0 8px;font-size:20px}.detail-card p,.detail-card li{color:var(--muted);line-height:1.55}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.people-12{grid-template-columns:repeat(3,minmax(0,1fr))}.enhanced-person{min-height:178px}.role-line{font-weight:800;color:var(--ink-soft)!important}.directory-screen .filter-row{padding-bottom:4px}
.meetings-screen .filter-row{margin-bottom:18px}.meeting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.meeting-card{padding:18px}.meeting-card h2{margin:10px 0 8px;font-size:22px;line-height:1.16}.meeting-card p{color:var(--muted);line-height:1.5}.meeting-meta{display:grid;gap:8px;margin:14px 0}.meeting-meta span{display:flex;gap:8px;color:var(--ink-soft);font-weight:700}.meeting-meta i{color:var(--purple)}.meeting-actions{display:flex;gap:9px;flex-wrap:wrap}.meeting-actions button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--md-outline);background:var(--md-surface-container);border-radius:14px;padding:10px 12px;font-weight:800}.meeting-actions button:hover,.meeting-actions button.is-done{background:var(--md-primary-container);color:var(--md-on-primary-container)}.meeting-feedback{margin-top:12px;border-radius:14px;background:#E2F3E7;color:#1F7A41;padding:10px 12px;font-weight:850}
.conversation-title{border-bottom:1px solid var(--md-outline-soft);padding-bottom:10px;margin-bottom:4px}.conversation-title h2{margin:0;font-size:22px}.conversation-title p{margin:3px 0 0;color:var(--muted)}.dm-msg.them{align-self:flex-start;background:var(--md-surface-container)}.dm-msg.me{align-self:flex-end;background:var(--md-primary);color:#fff}.thread-list a{text-decoration:none;color:inherit}
@media(max-width:1080px){.create-layout-v14{grid-template-columns:1fr}.create-actions-panel{position:static}.people-12{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.create-layout-v14,.form-grid-2,.meeting-grid,.detail-meta-grid,.people-12{grid-template-columns:1fr}.create-form-prototype,.exchange-detail{padding:16px;border-radius:20px}.create-form-prototype h2{font-size:22px}.create-hero .btn-primary{width:100%}.meeting-actions button,.detail-actions a,.form-actions button,.form-actions a{width:100%;justify-content:center}.dm-msg.me,.dm-msg.them{max-width:92%}}


/* ============================================================
   v15 — dock modules + draggable floating toolbar + FakeProviderIA
   ============================================================ */
.dock-wrap{
  right:auto!important;
  width:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transform:translateX(-50%);
  touch-action:none;
}
.dock-wrap:not(.is-dragged){left:50%!important;bottom:calc(14px + env(safe-area-inset-bottom))!important;top:auto!important;}
.dock-wrap.is-dragged{right:auto!important;bottom:auto!important;transform:none!important;}
.dock-wrap.is-dragging{cursor:grabbing!important;user-select:none!important;}
.dock-wrap.is-pinned{cursor:default!important;}
.dock-pin{
  pointer-events:auto;position:absolute;right:-7px;top:-8px;width:22px;height:22px;border-radius:999px;
  display:grid;place-items:center;background:color-mix(in oklab,var(--md-surface) 92%,transparent);
  border:1px solid var(--md-outline);box-shadow:0 6px 16px -10px rgba(20,24,60,.35);color:var(--faint);font-size:13px;z-index:2;
}
.dock-pin:hover,.dock-pin[aria-pressed="true"]{color:var(--purple);background:#fff;}
.dock-pin[aria-pressed="true"] i{transform:rotate(-35deg)}
.dock{grid-template-columns:repeat(7,1fr)!important;min-width:min(630px,calc(100vw - 28px))!important;max-width:680px!important;padding:7px 10px 6px!important;gap:2px!important;}
.dock-tab{min-width:0!important;padding:4px 5px 3px!important;}
.dock-ind{width:46px!important;height:31px!important;font-size:20px!important;}
.dock-tab .lbl{font-size:9.5px!important;line-height:1.05!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:72px;}
.dock-create .dock-ind,.dock-fab .dock-ind{width:50px!important;height:38px!important;font-size:25px!important;transform:translateY(-7px)!important;border-radius:18px!important;}
.quick-actions{bottom:auto!important;}
@media(max-width:760px){
  .dock{min-width:min(100vw - 16px,520px)!important;max-width:calc(100vw - 16px)!important;padding:5px 6px 4px!important;gap:0!important;}
  .dock-ind{width:34px!important;height:25px!important;font-size:17px!important;}
  .dock-tab .lbl{font-size:7.4px!important;max-width:48px;}
  .dock-create .dock-ind,.dock-fab .dock-ind{width:38px!important;height:31px!important;font-size:22px!important;transform:translateY(-5px)!important;}
  .dock-pin{right:-4px;top:-8px;width:20px;height:20px;font-size:12px;}
}
@media(max-width:380px){.dock-tab .lbl{display:none!important}.dock{max-width:330px!important}.dock-ind{width:36px!important}.dock-create .dock-ind,.dock-fab .dock-ind{width:40px!important}}
.fake-provider-card{border:1px solid color-mix(in oklab,var(--purple) 22%,var(--md-outline));background:linear-gradient(180deg,#fff,#FBFAFF);border-radius:22px;padding:14px;box-shadow:0 16px 38px -32px rgba(107,44,255,.35)}
.fake-provider-head{display:flex;align-items:center;gap:11px;margin-bottom:12px}.fake-provider-logo{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:var(--md-primary-container);color:var(--md-on-primary-container);font-size:20px}.fake-provider-head b{font-weight:900}.fake-provider-head small{display:block;color:var(--faint);font-weight:700}.fake-provider-thread{max-height:310px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:8px;border-radius:16px;background:var(--md-surface-container);border:1px solid var(--md-outline-soft)}.fake-msg{max-width:88%;border:1px solid var(--md-outline);border-radius:16px;padding:10px 12px;background:#fff;box-shadow:0 1px 2px rgba(20,24,60,.04)}.fake-msg b{font-size:12px;color:var(--faint);display:block;margin-bottom:4px}.fake-msg p{margin:0;line-height:1.45}.fake-msg.ai{align-self:flex-start;border-color:#E7DCFF;background:linear-gradient(180deg,#FBFAFF,#F4EFFF)}.fake-msg.ai b{color:var(--purple)}.fake-msg.user{align-self:flex-end;background:var(--md-primary);color:#fff;border-color:transparent}.fake-msg.user b{color:rgba(255,255,255,.78)}.fake-tag{display:inline-flex;background:#EADFFF;color:var(--purple);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:900;margin-bottom:7px}.fake-provider-reply{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}.fake-provider-reply input{min-width:0;border:1px solid var(--md-outline);border-radius:14px;padding:12px 13px;background:#fff;outline:none}.fake-provider-reply input:focus{border-color:color-mix(in oklab,var(--purple) 45%,white);box-shadow:0 0 0 4px color-mix(in oklab,var(--purple) 12%,transparent)}
@media(max-width:760px){.fake-provider-reply{grid-template-columns:1fr}.fake-provider-reply button{width:100%;justify-content:center}.fake-msg{max-width:96%}.fake-provider-thread{max-height:260px}}

.dock-grip{pointer-events:auto;width:22px;height:42px;border-radius:999px;display:grid;place-items:center;color:var(--faint);background:color-mix(in oklab,var(--md-surface) 72%,transparent);border:1px solid var(--md-outline);margin-right:6px;cursor:grab}.dock-wrap.is-dragging .dock-grip{cursor:grabbing}.dock-wrap.is-pinned .dock-grip{opacity:.45;cursor:default}@media(max-width:760px){.dock-grip{display:none}}

/* ============================================================
   v16 — header simplifié : logo fusionné au sélecteur, langue dans le dock
   ============================================================ */
.app-header-in{
  grid-template-columns:minmax(0,auto) 1fr auto!important;
  gap:10px!important;
}
.brand-area{gap:0!important;min-width:0!important;max-width:100%!important;}
.logo-link,.lang-toggle{display:none!important;}
.brand-area .context-picker{min-width:0!important;}
.context-picker>summary.brand-context-summary{
  display:flex!important;align-items:center!important;gap:9px!important;
  min-height:46px!important;max-width:min(420px,calc(100vw - 178px))!important;
  padding:6px 12px 6px 7px!important;border-radius:999px!important;
  background:color-mix(in oklab,var(--md-surface) 92%,transparent)!important;
  border:1px solid var(--md-outline)!important;
  box-shadow:0 1px 2px rgba(20,24,60,.04)!important;
}
.context-picker>summary.brand-context-summary:hover{background:#fff!important;box-shadow:0 10px 24px -22px rgba(20,24,60,.28)!important;}
.brand-logo-mark{position:relative!important;width:34px!important;height:34px!important;border-radius:999px!important;background:#fff!important;border:1px solid var(--md-outline-soft)!important;display:grid!important;place-items:center!important;box-shadow:0 1px 2px rgba(20,24,60,.04)!important;}
.brand-logo-mark .flower{width:24px!important;height:24px!important;}
.ctx-page-badge{position:absolute!important;right:-4px!important;bottom:-4px!important;width:17px!important;height:17px!important;border-radius:999px!important;display:grid!important;place-items:center!important;background:var(--md-primary-container)!important;color:var(--md-on-primary-container)!important;border:2px solid #fff!important;font-size:10px!important;line-height:1!important;}
.brand-context-summary .ctx-copy b{max-width:230px!important;font-size:14.5px!important;}
.brand-context-summary .ctx-copy small{max-width:230px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.header-actions{gap:8px!important;}
.compact-menu{display:none!important;}
.menu-action{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;color:var(--ink-soft);font-size:14px;text-align:left;background:transparent;border:none;font-family:inherit;}
.menu-action:hover{background:var(--md-surface-container);color:var(--ink)}
.menu-action i{font-size:20px;color:var(--purple)}
.avatar-menu hr{border:none;border-top:1px solid var(--md-outline-soft);margin:6px 0}
.dock-lang-switch{pointer-events:auto;flex:0 0 auto;min-width:34px;height:34px;border-radius:999px;display:grid;place-items:center;text-decoration:none;background:color-mix(in oklab,var(--md-surface) 88%,transparent);border:1px solid var(--md-outline);color:var(--md-on-primary-container);font-size:11px;font-weight:950;letter-spacing:.05em;box-shadow:0 8px 20px -16px rgba(20,24,60,.42);margin-right:6px;}
.dock-lang-switch:hover{background:var(--md-primary-container);color:var(--md-on-primary-container)}
.dock-wrap.is-pinned .dock-lang-switch{opacity:.92}
@media(max-width:760px){
  .app-header-in{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;}
  .header-fill{display:none!important;}
  .context-picker>summary.brand-context-summary{max-width:calc(100vw - 136px)!important;min-height:40px!important;padding:5px 9px 5px 6px!important;gap:7px!important;}
  .brand-logo-mark{width:30px!important;height:30px!important;}
  .brand-logo-mark .flower{width:21px!important;height:21px!important;}
  .ctx-page-badge{width:15px!important;height:15px!important;font-size:9px!important;right:-4px!important;bottom:-4px!important;}
  .brand-context-summary .ctx-copy b{max-width:42vw!important;font-size:13px!important;}
  .brand-context-summary .ctx-copy small{display:none!important;}
  .header-actions{gap:6px!important;}
  .dock-lang-switch{min-width:30px;height:30px;font-size:10px;margin-right:4px;}
}
@media(max-width:430px){
  .context-picker>summary.brand-context-summary{max-width:calc(100vw - 126px)!important;}
  .brand-context-summary .ctx-copy b{max-width:36vw!important;}
  .chevron{display:none!important;}
}

/* ============================================================
   v18 — mobile Material 3 navigation bar + directory/details/settings
   Reparti de v16 ; v17 non intégré.
   ============================================================ */
html,body{max-width:100%;overflow-x:hidden;}
.avatar-menu .menu-action{cursor:pointer;}
body.dark-mode{--cream:#0F1020;--ink:#F7F3FF;--ink-soft:#D8D2EA;--muted:#BAB2D0;--faint:#8F87A8;--md-surface:#191827;--md-surface-container:#242233;--md-surface-container-high:#302D42;--md-outline:#3F3A56;--md-outline-soft:#302D42;background:#0F1020;background-image:radial-gradient(120% 100% at 50% -10%,#25213B 0%,#0F1020 52%);}
body.dark-mode .market-card,body.dark-mode .person,body.dark-mode .article-card,body.dark-mode .toc,body.dark-mode .dm-window,body.dark-mode .thread-list,body.dark-mode .notification-card,body.dark-mode .settings-card,body.dark-mode .privacy-card,body.dark-mode .dash-card,body.dark-mode .member-profile-card,body.dark-mode .member-action-card,body.dark-mode .new-message-panel{background:var(--md-surface);}
body.dark-mode .app-header{background:linear-gradient(180deg,rgba(15,16,32,.92),rgba(15,16,32,.72));}
body.dark-mode .brand-logo-mark,body.dark-mode .context-picker>summary.brand-context-summary{background:var(--md-surface)!important;}

.dashboard-grid,.settings-layout,.privacy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.dash-card,.settings-card,.privacy-card{background:#fff;border:1px solid var(--md-outline);border-radius:24px;padding:20px;box-shadow:var(--shadow-card);}
.dash-card i,.privacy-card i{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--md-primary-container);color:var(--md-on-primary-container);font-size:25px;margin-bottom:14px;}
.dash-card b,.privacy-card h2,.settings-card h2{display:block;margin:0 0 8px;font-size:20px;letter-spacing:-.02em;}
.dash-card p,.privacy-card p,.settings-card p{margin:0;color:var(--muted);line-height:1.55;}
.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.option-grid label,.settings-card label{display:flex;align-items:center;gap:9px;background:var(--md-surface-container);border:1px solid var(--md-outline-soft);border-radius:16px;padding:12px;font-weight:750;color:var(--ink-soft);}
.settings-card input[type="range"]{width:100%;margin:18px 0 8px;accent-color:var(--purple);}
.range-labels{display:flex;justify-content:space-between;color:var(--faint);font-size:12px;font-weight:800;}
.byo-card{display:grid;gap:12px;}.byo-card label{flex-direction:column;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:14px;color:var(--ink-soft)}.byo-card input,.byo-card select{width:100%;border:1px solid var(--md-outline);border-radius:14px;padding:12px;background:var(--md-surface);color:var(--ink);outline:none;}

.member-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:18px;align-items:start;}
.member-profile-card,.member-action-card,.new-message-panel{background:#fff;border:1px solid var(--md-outline);border-radius:24px;padding:20px;box-shadow:var(--shadow-card);}
.member-profile-card{display:grid;grid-template-columns:140px minmax(0,1fr);gap:20px;}.member-profile-card>img{width:140px;height:140px;border-radius:28px;object-fit:cover;}.member-profile-card h2{font-size:30px;margin:12px 0 6px;letter-spacing:-.04em}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.tag-list span{background:var(--md-surface-container);border-radius:999px;padding:7px 10px;font-weight:800;color:var(--ink-soft);font-size:13px;}
.member-action-card h2{margin:0 0 10px}.member-action-card p{color:var(--muted);line-height:1.55}.member-actions{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}.member-actions .btn-primary{border:0}.member-actions .chip{gap:7px}.member-agent-box,.private-message-box{margin-top:14px;border:1px solid var(--md-outline);border-radius:18px;background:var(--md-surface-container);padding:14px;display:grid;gap:10px}.member-agent-box[hidden],.private-message-box[hidden]{display:none!important}.agent-msg{padding:10px 12px;border-radius:16px;background:#fff;border:1px solid var(--md-outline);line-height:1.45}.agent-msg.ai{background:linear-gradient(180deg,#FBFAFF,#F4EFFF);border-color:#E7DCFF;color:var(--ink)}.agent-msg b{color:var(--purple)}.private-message-box textarea{width:100%;min-height:92px;border:1px solid var(--md-outline);border-radius:16px;padding:12px;background:#fff;color:var(--ink);font-family:inherit;resize:vertical;}
.directory-filter-row button{border:1px solid var(--md-outline);}.directory-grid .person{transition:opacity .18s var(--ease),transform .18s var(--ease);text-decoration:none;color:inherit}.directory-grid .person.is-hidden{display:none!important}.directory-grid .person:hover{transform:translateY(-2px);box-shadow:0 16px 34px -26px rgba(20,24,60,.36)}

.article-view-layout{align-items:start}.blog-sidebar hr{border:none;border-top:1px solid var(--md-outline-soft);margin:12px 0}.blog-sidebar a.active{background:var(--md-primary-container);color:var(--md-on-primary-container)}
.new-message-panel{margin-bottom:16px}.new-message-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.new-message-form select{min-width:0;border:1px solid var(--md-outline);background:var(--md-surface-container);border-radius:16px;padding:12px 14px;color:var(--ink);font-family:inherit;}
.dm-msg.them{align-self:flex-start}.dm-msg.me{align-self:flex-end;background:var(--md-primary);color:#fff}.conversation-title h2{margin:0}.conversation-title p{margin:4px 0 0;color:var(--muted)}

@media(max-width:900px){
  .member-detail-layout,.dashboard-grid,.settings-layout,.privacy-grid{grid-template-columns:1fr;}
  .member-profile-card{grid-template-columns:96px minmax(0,1fr);}.member-profile-card>img{width:96px;height:96px;border-radius:22px}.member-profile-card h2{font-size:24px;margin-top:8px}.new-message-form{grid-template-columns:1fr}.new-message-form .btn-primary{width:100%;justify-content:center}
}
@media(max-width:760px){
  body{min-height:100dvh;overflow-x:hidden!important;}
  .app-header{padding:8px 8px 6px!important;}
  .app-main{width:100%!important;max-width:none!important;margin:0!important;padding-left:8px!important;padding-right:8px!important;padding-bottom:86px!important;}
  .page-boucle .app-main,.page-apprendre .app-main{width:100%!important;max-width:none!important;display:block!important;}
  .loop-shell,.screen-shell{min-height:calc(100dvh - 142px)!important;}
  .loop-frame{min-height:calc(100dvh - 142px)!important;border-radius:22px!important;}
  .dock-wrap{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%!important;transform:none!important;display:block!important;padding:0!important;pointer-events:auto!important;touch-action:auto!important;background:color-mix(in oklab,var(--md-surface) 95%,transparent)!important;border-top:1px solid var(--md-outline)!important;box-shadow:none!important;z-index:160!important;}
  .dock-wrap.is-dragged,.dock-wrap.is-pinned{left:0!important;right:0!important;bottom:0!important;top:auto!important;transform:none!important;}
  .dock-pin,.dock-grip{display:none!important;}
  .dock-lang-switch{position:absolute!important;left:6px!important;top:8px!important;margin:0!important;z-index:4;min-width:32px!important;height:32px!important;box-shadow:none!important;background:var(--md-surface)!important;}
  .dock{width:100%!important;min-width:0!important;max-width:none!important;height:72px!important;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:0!important;padding:6px 2px 5px 40px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;}
  .dock-tab,.dock-create{padding:4px 0 3px!important;border-radius:0!important;min-width:0!important;gap:3px!important;}
  .dock-ind,.dock-create .dock-ind,.dock-fab .dock-ind{width:44px!important;height:30px!important;border-radius:999px!important;font-size:20px!important;transform:none!important;background:transparent!important;box-shadow:none!important;color:var(--muted)!important;}
  .dock-create .dock-ind,.dock-fab .dock-ind{background:var(--md-primary)!important;color:#fff!important;}
  .dock-tab.is-active .dock-ind{background:var(--md-primary-container)!important;color:var(--md-on-primary-container)!important;}
  .dock-tab .lbl{display:block!important;font-size:8.6px!important;line-height:1.05!important;font-weight:750!important;max-width:46px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--muted)!important;}
  .dock-tab.is-active .lbl{color:var(--ink)!important;font-weight:900!important;}
  .quick-actions{position:fixed!important;left:50%!important;right:auto!important;bottom:82px!important;transform:translateX(-50%) translateY(8px)!important;width:min(340px,calc(100vw - 20px))!important;z-index:180!important;}
  .quick-actions.open{transform:translateX(-50%) translateY(0)!important;}
  .messages-layout,.blog-layout{grid-template-columns:1fr!important;height:auto!important;min-height:0!important}.toc{position:static}.thread-list{max-height:260px;overflow:auto}.dm-window{min-height:420px}.article-card{grid-template-columns:1fr}.cover{width:100%;min-height:78px}.screen-head{display:grid;gap:12px}.screen-head .btn-primary{width:100%;justify-content:center}.option-grid{grid-template-columns:1fr}.member-profile-card{grid-template-columns:1fr}.member-profile-card>img{width:112px;height:112px}.member-actions .chip,.member-actions .btn-primary{width:100%;justify-content:center}.directory-grid.people-12{grid-template-columns:1fr!important;}
}
@media(max-width:390px){.dock-tab .lbl{font-size:7.8px!important;max-width:42px!important}.dock{padding-left:38px!important}.dock-ind,.dock-create .dock-ind,.dock-fab .dock-ind{width:38px!important;height:28px!important;font-size:18px!important}}

/* ============================================================
   v19 — mobile navigation bar fix
   Base: v18 only. On smartphones the dock becomes a stable
   Material 3-style bottom navigation bar, not a draggable toolbar.
   ============================================================ */
@media (max-width:760px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  body{min-height:100dvh!important;padding-bottom:calc(78px + env(safe-area-inset-bottom))!important;}
  .app-main{width:100%!important;max-width:100%!important;margin:0!important;padding-left:8px!important;padding-right:8px!important;padding-bottom:calc(92px + env(safe-area-inset-bottom))!important;}
  .page-boucle .app-main,.page-apprendre .app-main{padding-bottom:calc(92px + env(safe-area-inset-bottom))!important;}

  #dock-wrap.dock-wrap,
  .dock-wrap{
    position:fixed!important;
    inset:auto 0 0 0!important;
    left:0!important;
    right:0!important;
    top:auto!important;
    bottom:0!important;
    width:100vw!important;
    max-width:100vw!important;
    height:calc(76px + env(safe-area-inset-bottom))!important;
    min-height:calc(76px + env(safe-area-inset-bottom))!important;
    display:block!important;
    transform:none!important;
    translate:none!important;
    padding:0 max(8px, env(safe-area-inset-left)) env(safe-area-inset-bottom) max(8px, env(safe-area-inset-left))!important;
    margin:0!important;
    pointer-events:auto!important;
    touch-action:auto!important;
    background:color-mix(in oklab,var(--md-surface) 96%,transparent)!important;
    backdrop-filter:saturate(1.25) blur(18px)!important;
    -webkit-backdrop-filter:saturate(1.25) blur(18px)!important;
    border-top:1px solid var(--md-outline)!important;
    border-radius:0!important;
    box-shadow:0 -10px 28px -24px rgba(20,24,60,.42)!important;
    z-index:300!important;
  }
  #dock-wrap.is-dragged,
  #dock-wrap.is-pinned,
  #dock-wrap.is-dragging{left:0!important;right:0!important;top:auto!important;bottom:0!important;transform:none!important;}
  .dock-pin,.dock-grip{display:none!important;}

  #main-dock.dock,
  .dock{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:min(100%,520px)!important;
    min-width:0!important;
    max-width:520px!important;
    height:76px!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    align-items:center!important;
    justify-items:center!important;
    gap:0!important;
    padding:6px 0 5px 38px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .dock-lang-switch{
    position:absolute!important;
    left:0!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    margin:0!important;
    min-width:32px!important;
    width:32px!important;
    height:32px!important;
    border-radius:999px!important;
    z-index:4!important;
    box-shadow:none!important;
    background:var(--md-surface)!important;
    border:1px solid var(--md-outline)!important;
  }
  .dock-tab,.dock-create{
    width:100%!important;
    min-width:0!important;
    height:64px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:3px!important;
    padding:4px 0 3px!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .dock-ind,.dock-create .dock-ind,.dock-fab .dock-ind{
    width:42px!important;
    height:28px!important;
    border-radius:999px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:19px!important;
    transform:none!important;
    box-shadow:none!important;
    background:transparent!important;
    color:var(--muted)!important;
  }
  .dock-tab.is-active .dock-ind{
    background:var(--md-primary-container)!important;
    color:var(--md-on-primary-container)!important;
  }
  .dock-create .dock-ind,.dock-fab .dock-ind{
    width:46px!important;
    height:34px!important;
    border-radius:999px!important;
    background:var(--md-primary)!important;
    color:#fff!important;
    font-size:23px!important;
    box-shadow:0 10px 20px -15px rgba(107,44,255,.75)!important;
  }
  .dock-tab .lbl,.dock-create .lbl{
    display:block!important;
    max-width:46px!important;
    min-height:12px!important;
    font-size:8.4px!important;
    line-height:1.05!important;
    font-weight:750!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    color:var(--muted)!important;
    transform:none!important;
  }
  .dock-tab.is-active .lbl{color:var(--ink)!important;font-weight:950!important;}
  .dock-create .lbl{display:none!important;}
  .quick-actions{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    bottom:calc(86px + env(safe-area-inset-bottom))!important;
    width:min(350px,calc(100vw - 20px))!important;
    transform:translateX(-50%) translateY(8px) scale(.98)!important;
    z-index:320!important;
  }
  .quick-actions.open{transform:translateX(-50%) translateY(0) scale(1)!important;}
}
@media (max-width:390px){
  #main-dock.dock,.dock{width:100%!important;height:74px!important;padding-left:36px!important;}
  .dock-ind,.dock-create .dock-ind,.dock-fab .dock-ind{width:36px!important;height:27px!important;font-size:18px!important;}
  .dock-create .dock-ind,.dock-fab .dock-ind{width:42px!important;height:32px!important;font-size:22px!important;}
  .dock-tab .lbl{max-width:38px!important;font-size:7.3px!important;}
  .dock-lang-switch{width:30px!important;height:30px!important;min-width:30px!important;font-size:9.5px!important;}
}

/* ============================================================
   v20 — mobile app patterns from v19 base
   - language pill returns to the intelligent header capsule
   - bottom navigation is fixed only on list screens
   - Messages and Loops use mobile list -> detail flows
   ============================================================ */
.header-lang-pill{height:32px;min-width:42px;padding:0 12px;border-radius:999px;display:inline-grid;place-items:center;background:var(--md-surface);border:1px solid var(--md-outline);box-shadow:0 1px 2px rgba(20,24,60,.04);font-size:12px;font-weight:900;color:var(--md-on-primary-container);text-decoration:none;letter-spacing:.03em;flex:0 0 auto}.header-lang-pill:hover{background:var(--md-primary-container)}
.loop-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.loop-choice-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;background:#fff;border:1px solid var(--md-outline);border-radius:26px;padding:18px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow-card);transition:transform .16s var(--ease),box-shadow .2s var(--ease)}.loop-choice-card:hover{transform:translateY(-2px);box-shadow:0 22px 44px -32px rgba(20,24,60,.38)}.loop-choice-icon{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;background:var(--md-primary-container);color:var(--md-on-primary-container);font-size:24px}.loop-choice-copy b{display:block;font-size:20px;font-weight:900;letter-spacing:-.03em}.loop-choice-copy small{display:block;color:var(--faint);font-weight:800;margin:3px 0 8px}.loop-choice-copy p{margin:0;color:var(--muted);line-height:1.45}.loop-choice-card em{font-style:normal;background:var(--md-surface-container);border:1px solid var(--md-outline);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;color:var(--ink-soft)}
.mobile-detail-appbar{display:none}.attach-menu{position:absolute;left:10px;bottom:62px;z-index:220;min-width:190px;background:var(--md-surface);border:1px solid var(--md-outline);border-radius:20px;padding:8px;box-shadow:0 18px 44px -24px rgba(20,24,60,.45)}.attach-menu button{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px;border-radius:14px;color:var(--ink-soft);font-weight:800}.attach-menu button:hover{background:var(--md-surface-container);color:var(--ink)}.attach-menu i{font-size:20px;color:var(--purple)}.composer,.dm-composer{position:relative}.msg-plus{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--md-surface-container);color:var(--ink-soft);font-size:20px;flex:0 0 auto}
.messages-mobile-list{display:none}.modal-like[hidden]{display:none!important}.modal-close{position:absolute;right:14px;top:14px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--md-surface-container);color:var(--ink-soft)}.modal-like{position:relative}.mobile-contact-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border-radius:20px;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--md-outline);box-shadow:0 1px 2px rgba(20,24,60,.04)}.mobile-contact-row img{width:48px;height:48px;border-radius:50%;object-fit:cover}.mobile-contact-row span{min-width:0}.mobile-contact-row b{display:block;font-size:15px;font-weight:900}.mobile-contact-row small{display:block;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-contact-row em{font-style:normal;font-size:11px;font-weight:800;color:var(--faint);white-space:nowrap}.mobile-contact-row.active{background:var(--md-primary-container)}
@media(max-width:760px){
  .brand-area{gap:6px!important;min-width:0!important}.brand-context-summary{max-width:calc(100vw - 152px)!important}.context-picker>summary{padding:6px 10px 6px 6px!important}.ctx-icon{width:30px!important;height:30px!important;border-radius:12px!important}.ctx-copy small{font-size:9px!important}.ctx-copy b{font-size:13px!important;max-width:128px!important}.header-lang-pill{height:30px;min-width:38px;padding:0 10px;font-size:11px}.header-actions{gap:6px!important}.search-trigger,.icon-btn,.avatar{width:38px!important;height:38px!important}.avatar-menu,.notif-menu{right:0;max-width:calc(100vw - 18px)}
  #main-dock.dock,.dock{padding-left:0!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;height:76px!important}.dock-lang-switch{display:none!important}.dock-tab .lbl{font-size:8px!important;max-width:44px!important}.dock-ind,.dock-create .dock-ind,.dock-fab .dock-ind{width:40px!important;height:30px!important}.dock-create .dock-ind{width:46px!important;height:36px!important;box-shadow:0 8px 18px -10px rgba(107,44,255,.55)!important}.dock-wrap{height:calc(78px + env(safe-area-inset-bottom))!important}
  body.mobile-message-detail .app-header,body.mobile-loop-detail .app-header{display:none!important}body.mobile-message-detail .dock-wrap,body.mobile-loop-detail .dock-wrap{display:none!important}body.mobile-message-detail,body.mobile-loop-detail{padding-bottom:0!important;overflow:hidden!important;background:var(--cream)!important}body.mobile-message-detail .app-main,body.mobile-loop-detail .app-main{padding:0!important;width:100%!important;max-width:100%!important;height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
  .mobile-detail-appbar{height:58px;flex:0 0 58px;display:flex;align-items:center;gap:10px;padding:8px 12px;background:color-mix(in oklab,var(--md-surface) 97%,transparent);border-bottom:1px solid var(--md-outline);z-index:260}.mobile-detail-appbar .mobile-back,.mobile-appbar-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--md-surface-container);color:var(--ink-soft);font-size:21px;text-decoration:none;flex:0 0 auto}.mobile-detail-appbar img{width:38px;height:38px;border-radius:50%;object-fit:cover}.mobile-detail-appbar div{min-width:0;flex:1}.mobile-detail-appbar b{display:block;font-size:15px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-detail-appbar small{display:block;font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .loop-list-shell{min-height:calc(100dvh - 146px)!important}.loop-choice-grid{grid-template-columns:1fr!important}.loop-choice-card{grid-template-columns:44px minmax(0,1fr);padding:14px;border-radius:22px}.loop-choice-card em{grid-column:2;justify-self:start}.loop-choice-icon{width:44px;height:44px;border-radius:16px}.loop-choice-copy b{font-size:17px}.loop-choice-copy p{font-size:13px}
  body.mobile-loop-detail .loop-standalone{height:calc(100dvh - 58px)!important;min-height:0!important;flex:1!important;overflow:hidden!important;padding:0!important}body.mobile-loop-detail .loop-standalone>.app{height:100%!important;display:block!important;padding:0!important;margin:0!important;max-width:none!important;width:100%!important}body.mobile-loop-detail .chatframe{height:100%!important;border-radius:0!important;border:0!important;box-shadow:none!important}body.mobile-loop-detail .thread-scroll{padding-bottom:10px!important}body.mobile-loop-detail .composer{position:sticky!important;bottom:0!important;padding-bottom:calc(10px + env(safe-area-inset-bottom))!important;z-index:40!important}.chat-tools{padding:9px 10px!important}.chat-tools .ct-label{display:none!important}.rail{gap:8px!important}.tool{padding:7px 12px 7px 8px!important}.tool .tt b{font-size:13px!important}
  .attach-menu{position:absolute!important;left:8px!important;bottom:calc(58px + env(safe-area-inset-bottom))!important;width:min(230px,calc(100vw - 18px));}
  .messages-shell{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:12px 8px!important;min-height:calc(100dvh - 150px)!important}.messages-list-head{margin:4px 0 12px!important}.messages-list-head h1{font-size:28px!important}.messages-mobile-list{display:grid!important;gap:9px}.messages-desktop-layout{display:none!important}.messages-shell.is-list-mode .new-message-panel.modal-like{position:fixed!important;inset:auto 12px calc(86px + env(safe-area-inset-bottom)) 12px!important;z-index:380!important;border-radius:24px!important;box-shadow:0 28px 70px -28px rgba(20,24,60,.55)!important}.messages-shell.is-list-mode .new-message-panel.modal-like::before{content:"";position:fixed;inset:0;background:rgba(13,21,56,.24);z-index:-1;backdrop-filter:blur(2px)}
  body.mobile-message-detail .messages-shell{height:calc(100dvh - 58px)!important;min-height:0!important;flex:1!important;padding:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}body.mobile-message-detail .messages-list-head,body.mobile-message-detail .messages-mobile-list,body.mobile-message-detail .thread-list{display:none!important}body.mobile-message-detail .messages-desktop-layout{display:block!important;height:100%!important;min-height:0!important}body.mobile-message-detail .dm-window{height:100%!important;min-height:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;background:linear-gradient(180deg,#FBF9F3,#FCFAF5)!important;padding:12px 10px 0!important;overflow-y:auto!important}body.mobile-message-detail .conversation-title{display:none!important}body.mobile-message-detail .dm-msg{max-width:86%;margin-bottom:10px}body.mobile-message-detail .dm-composer{position:sticky!important;bottom:0!important;margin:8px -10px 0!important;padding:9px 10px calc(9px + env(safe-area-inset-bottom))!important;background:var(--md-surface)!important;border-top:1px solid var(--md-outline-soft)!important;display:flex!important;gap:8px!important;align-items:center!important}body.mobile-message-detail .dm-composer input{flex:1;min-width:0;border:1px solid var(--md-outline);background:var(--md-surface-container);border-radius:999px;padding:11px 14px;font-family:inherit;color:var(--ink)}body.mobile-message-detail .dm-composer button[type="submit"]{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--md-primary);color:#fff;font-size:20px;flex:0 0 auto}
}

/* ============================================================
   v21 — responsive presentations split
   Desktop keeps v19-like direct workspace. Mobile keeps v20 list/detail.
   ============================================================ */
.mobile-loop-entry{display:none!important;}
.desktop-loop-entry{display:block!important;}
.messages-mobile-head{display:none!important;}
.messages-desktop-head{display:flex!important;}

@media (min-width:761px){
  body.page-boucle:not(.mobile-loop-detail) .mobile-loop-entry{display:none!important;}
  body.page-boucle:not(.mobile-loop-detail) .desktop-loop-entry{display:block!important;}
  body.page-boucle:not(.mobile-loop-detail) .loop-standalone{width:100%;height:calc(100dvh - 98px);min-height:620px;}
  body.page-boucle:not(.mobile-loop-detail) .loop-standalone>.app{width:100%;height:100%;max-width:none;margin:0;}
  body.page-boucle:not(.mobile-loop-detail) .chatframe{min-height:0;}
  .messages-desktop-head{display:flex!important;}
  .messages-mobile-head{display:none!important;}
  .messages-mobile-list{display:none!important;}
  .messages-desktop-layout{display:grid!important;}
}

@media (max-width:760px){
  body.page-boucle:not(.mobile-loop-detail) .desktop-loop-entry{display:none!important;}
  body.page-boucle:not(.mobile-loop-detail) .mobile-loop-entry{display:block!important;}
  body.page-boucle:not(.mobile-loop-detail) .app-main{padding:0 8px calc(86px + env(safe-area-inset-bottom))!important;}
  body.page-boucle:not(.mobile-loop-detail) .loop-list-shell{min-height:calc(100dvh - 150px)!important;border-radius:22px!important;padding:16px!important;}
  .messages-desktop-head{display:none!important;}
  .messages-mobile-head{display:flex!important;}
}

/* ============================================================
   v22 — smartphone-only refinements
   Desktop presentation remains inherited from v19/v21.
   ============================================================ */
@media (max-width:760px){
  /* Loop detail: no bottom navigation, fixed composer, app-bar return only */
  body.mobile-loop-detail .dock-wrap,
  body.mobile-loop-detail #dock-wrap,
  body.mobile-loop-detail .quick-actions{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  body.mobile-loop-detail .loop-standalone{height:calc(100dvh - 58px)!important;overflow:hidden!important;}
  body.mobile-loop-detail .loop-standalone>.app{height:100%!important;overflow:hidden!important;}
  body.mobile-loop-detail .chatframe{height:100%!important;padding-bottom:calc(72px + env(safe-area-inset-bottom))!important;position:relative!important;}
  body.mobile-loop-detail .thread-scroll{padding-bottom:96px!important;}
  body.mobile-loop-detail .composer{
    position:fixed!important;
    left:0!important;right:0!important;bottom:0!important;
    margin:0!important;
    padding:9px 10px calc(9px + env(safe-area-inset-bottom))!important;
    background:color-mix(in oklab,var(--md-surface) 98%,transparent)!important;
    border-top:1px solid var(--md-outline-soft)!important;
    box-shadow:0 -12px 32px -28px rgba(20,24,60,.38)!important;
    z-index:330!important;
  }
  body.mobile-loop-detail .composer .plus,
  body.mobile-loop-detail .composer .send{width:42px!important;height:42px!important;}
  body.mobile-loop-detail .composer .field{border-radius:999px!important;}
  body.mobile-loop-detail .attach-menu{position:fixed!important;left:10px!important;bottom:calc(62px + env(safe-area-inset-bottom))!important;}

  /* Exchanges: smaller, reassuring filter chips on mobile */
  .exchanges-screen .filter-row{
    gap:6px!important;
    margin:0 -4px 12px!important;
    padding:0 4px 2px!important;
    scrollbar-width:none!important;
  }
  .exchanges-screen .filter-row::-webkit-scrollbar{display:none!important;}
  .exchanges-screen .chip{
    min-height:30px!important;
    padding:5px 9px!important;
    font-size:11.5px!important;
    line-height:1!important;
    border-radius:999px!important;
    font-weight:850!important;
  }
  .exchanges-screen .screen-head{gap:12px!important;margin-bottom:12px!important;}
  .exchanges-screen .screen-head .btn-primary{width:100%;justify-content:center;padding:10px 12px!important;border-radius:16px!important;}

  /* Direct create forms from module CTAs: no second list of forms on mobile */
  .create-screen.is-direct-form{padding:14px 10px!important;border-radius:0!important;border:0!important;box-shadow:none!important;background:transparent!important;}
  .create-screen.is-direct-form .create-hero{margin-bottom:12px!important;}
  .create-screen.is-direct-form .create-hero h1{font-size:28px!important;line-height:1!important;}
  .create-screen.is-direct-form .create-hero p{font-size:14px!important;line-height:1.45!important;}
  .create-screen.is-direct-form .create-layout-v14{display:block!important;}
  .create-screen.is-direct-form .create-form-prototype{border-radius:24px!important;box-shadow:var(--shadow-card)!important;}
  .direct-form-note{display:flex;align-items:flex-start;gap:8px;margin:0 0 12px;padding:10px 12px;border-radius:16px;background:var(--md-primary-container);color:var(--md-on-primary-container);font-size:13px;font-weight:800;line-height:1.35;}
  .direct-form-note i{font-size:18px;flex:0 0 auto;}

  /* Blog: articles first, categories and summary after, card-based Material feel */
  .blog-shell .blog-layout,
  .blog-shell .article-view-layout{
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
  }
  .blog-shell .article-list{order:1!important;display:grid!important;gap:12px!important;}
  .blog-shell .article-detail{order:1!important;}
  .blog-shell .toc,
  .blog-shell .blog-sidebar{
    order:2!important;
    position:static!important;
    background:linear-gradient(180deg,#FFFFFF,#FBF9F3)!important;
    border:1px solid var(--md-outline)!important;
    border-radius:24px!important;
    padding:14px!important;
    box-shadow:0 12px 30px -26px rgba(20,24,60,.36)!important;
  }
  .blog-shell .toc h2{font-size:12px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--faint)!important;margin:2px 0 8px!important;}
  .blog-shell .toc a{
    display:inline-flex!important;
    align-items:center!important;
    margin:0 6px 8px 0!important;
    padding:8px 11px!important;
    border-radius:999px!important;
    background:var(--md-surface-container)!important;
    color:var(--ink-soft)!important;
    font-size:12px!important;
    font-weight:850!important;
  }
  .blog-shell .toc a.active,
  .blog-shell .toc a:hover{background:var(--md-primary-container)!important;color:var(--md-on-primary-container)!important;}
  .blog-shell .toc hr{border:0;border-top:1px solid var(--md-outline-soft);margin:8px 0 12px;}
  .blog-shell .article-card{grid-template-columns:64px minmax(0,1fr)!important;gap:12px!important;padding:13px!important;border-radius:22px!important;}
  .blog-shell .article-card .cover{width:64px!important;min-height:76px!important;border-radius:18px!important;font-size:14px!important;}
  .blog-shell .article-card h2{font-size:16px!important;line-height:1.2!important;margin:5px 0 6px!important;}
  .blog-shell .article-card p{font-size:13px!important;line-height:1.35!important;}
}


/* ============================================================
   v23 — mobile chat detail + direct quick actions hardening
   Desktop presentation remains inherited from v19/v21.
   ============================================================ */
@media (max-width:760px){
  body.mobile-message-detail #dock-wrap,
  body.mobile-message-detail .dock-wrap,
  body.mobile-message-detail .quick-actions{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  body.mobile-message-detail{
    padding-bottom:0!important;
    overflow:hidden!important;
  }
  body.mobile-message-detail .app-main{
    height:100dvh!important;
    min-height:100dvh!important;
    padding:0!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }
  body.mobile-message-detail .messages-shell{
    height:calc(100dvh - 58px)!important;
    min-height:0!important;
    flex:1 1 auto!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    padding:0!important;
  }
  body.mobile-message-detail .messages-desktop-layout{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    display:block!important;
    overflow:hidden!important;
  }
  body.mobile-message-detail .dm-window{
    height:100%!important;
    min-height:0!important;
    overflow-y:auto!important;
    padding:12px 10px calc(86px + env(safe-area-inset-bottom))!important;
    scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom))!important;
  }
  body.mobile-message-detail .dm-composer{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    margin:0!important;
    padding:9px 10px calc(9px + env(safe-area-inset-bottom))!important;
    background:color-mix(in oklab,var(--md-surface) 98%,transparent)!important;
    border-top:1px solid var(--md-outline-soft)!important;
    box-shadow:0 -12px 32px -28px rgba(20,24,60,.38)!important;
    z-index:340!important;
  }
  body.mobile-message-detail .dm-composer .msg-plus,
  body.mobile-message-detail .dm-composer button[type="submit"]{
    width:42px!important;
    height:42px!important;
  }
  body.mobile-message-detail .dm-composer input{
    border-radius:999px!important;
  }
  body.mobile-message-detail .attach-menu{
    position:fixed!important;
    left:10px!important;
    bottom:calc(62px + env(safe-area-inset-bottom))!important;
    z-index:360!important;
  }
}


/* ============================================================
   v24 — smartphone polish only
   Desktop layout inherited from v19/v21 is intentionally untouched.
   ============================================================ */
@media (max-width:760px){
  /* 1) Message detail attachment FAB menu: Material-style compact sheet, not purple text buttons */
  body.mobile-message-detail .dm-composer .attach-menu,
  body.mobile-loop-detail .composer .attach-menu{
    position:fixed!important;
    left:12px!important;
    right:auto!important;
    bottom:calc(62px + env(safe-area-inset-bottom))!important;
    width:min(236px,calc(100vw - 24px))!important;
    min-width:0!important;
    display:grid!important;
    gap:6px!important;
    padding:8px!important;
    border-radius:24px!important;
    background:color-mix(in oklab,var(--md-surface) 98%,transparent)!important;
    border:1px solid var(--md-outline)!important;
    box-shadow:0 22px 58px -28px rgba(20,24,60,.52)!important;
    z-index:420!important;
  }
  body.mobile-message-detail .dm-composer .attach-menu[hidden],
  body.mobile-loop-detail .composer .attach-menu[hidden]{display:none!important;}
  body.mobile-message-detail .dm-composer .attach-menu button,
  body.mobile-loop-detail .composer .attach-menu button{
    width:100%!important;
    height:auto!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    padding:9px 11px!important;
    border-radius:16px!important;
    background:transparent!important;
    color:var(--ink)!important;
    font-size:14px!important;
    line-height:1.15!important;
    font-weight:850!important;
    text-align:left!important;
    box-shadow:none!important;
  }
  body.mobile-message-detail .dm-composer .attach-menu button:hover,
  body.mobile-message-detail .dm-composer .attach-menu button:focus,
  body.mobile-loop-detail .composer .attach-menu button:hover,
  body.mobile-loop-detail .composer .attach-menu button:focus{
    background:var(--md-primary-container)!important;
    color:var(--md-on-primary-container)!important;
  }
  body.mobile-message-detail .dm-composer .attach-menu button i,
  body.mobile-loop-detail .composer .attach-menu button i{
    width:30px!important;
    height:30px!important;
    border-radius:12px!important;
    display:grid!important;
    place-items:center!important;
    background:#EADFFF!important;
    color:var(--purple)!important;
    font-size:18px!important;
    flex:0 0 auto!important;
  }

  /* 2) Directory horizontal filters: smaller, denser, reassuring */
  .directory-screen .directory-filter-row{
    gap:6px!important;
    margin:0 -2px 14px 0!important;
    padding:0 0 6px!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
  }
  .directory-screen .directory-filter-row::-webkit-scrollbar{display:none!important;}
  .directory-screen .directory-filter-row .chip,
  .directory-screen .directory-filter-row button{
    min-height:32px!important;
    padding:6px 10px!important;
    border-radius:999px!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:850!important;
    box-shadow:none!important;
  }

  /* 3) Direct quick action pages become mobile AI chat flows */
  body.mobile-create-detail .dock-wrap,
  body.mobile-create-detail #dock-wrap,
  body.mobile-create-detail .quick-actions{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  body.mobile-create-detail{
    padding-bottom:0!important;
    overflow:hidden!important;
    background:var(--cream)!important;
  }
  body.mobile-create-detail .app-main{
    height:calc(100dvh - 58px)!important;
    min-height:0!important;
    overflow:auto!important;
    padding-bottom:calc(84px + env(safe-area-inset-bottom))!important;
  }
  body.mobile-create-detail .create-screen.is-direct-form{
    min-height:auto!important;
    padding:14px 10px 22px!important;
  }
  body.mobile-create-detail .create-screen.is-direct-form .create-hero{
    gap:10px!important;
    margin-bottom:12px!important;
  }
  body.mobile-create-detail .create-screen.is-direct-form .create-hero .kicker{
    color:var(--ink-soft)!important;
  }
  body.mobile-create-detail .create-screen.is-direct-form .create-hero h1{
    font-size:26px!important;
    line-height:1.02!important;
    margin-bottom:6px!important;
  }
  body.mobile-create-detail .create-screen.is-direct-form .create-hero p{
    font-size:14px!important;
  }
  body.mobile-create-detail .create-screen.is-direct-form .create-hero .btn-primary{
    width:100%!important;
    justify-content:center!important;
    padding:10px 12px!important;
    border-radius:16px!important;
  }
  body.mobile-create-detail .create-form-prototype .form-topline,
  body.mobile-create-detail .create-form-prototype .direct-form-note{
    display:none!important;
  }
  body.mobile-create-detail .create-form-prototype{
    padding:16px!important;
    border-radius:24px!important;
  }
  body.mobile-create-detail .create-form-prototype .form-grid-2:first-of-type{
    display:none!important;
  }
  body.mobile-create-detail .field-block span{
    font-size:11px!important;
    letter-spacing:.05em!important;
  }
  body.mobile-create-detail .field-block textarea{
    min-height:118px!important;
    border-radius:18px!important;
  }
  body.mobile-create-detail .fake-provider-card{
    margin-top:14px!important;
    border-radius:22px!important;
  }
  body.mobile-create-detail .fake-provider-reply,
  body.mobile-create-detail .form-actions{
    display:none!important;
  }
  .mobile-create-ai-composer{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:360!important;
    padding:9px 10px calc(9px + env(safe-area-inset-bottom))!important;
    background:color-mix(in oklab,var(--md-surface) 98%,transparent)!important;
    border-top:1px solid var(--md-outline-soft)!important;
    box-shadow:0 -12px 32px -28px rgba(20,24,60,.38)!important;
  }
  .mobile-create-ai-composer .mobile-ai-avatar,
  .mobile-create-ai-composer button{
    width:42px!important;
    height:42px!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
  }
  .mobile-create-ai-composer .mobile-ai-avatar{
    background:var(--md-primary-container)!important;
    color:var(--md-on-primary-container)!important;
    font-size:20px!important;
  }
  .mobile-create-ai-composer input{
    min-width:0!important;
    flex:1!important;
    border:1px solid var(--md-outline)!important;
    background:var(--md-surface-container)!important;
    border-radius:999px!important;
    padding:11px 14px!important;
    font-family:inherit!important;
    font-size:14px!important;
    outline:none!important;
    color:var(--ink)!important;
  }
  .mobile-create-ai-composer button{
    background:var(--md-primary)!important;
    color:#fff!important;
    font-size:20px!important;
    box-shadow:0 8px 18px -10px rgba(107,44,255,.58)!important;
  }
}
@media (min-width:761px){.mobile-create-ai-composer{display:none!important;}}


/* ============================================================
   v26 — homepage, split logo/context, directory fascination,
   editorial review and mobile label polish
   ============================================================ */
.bp-logo-home{width:42px;height:42px;border-radius:999px;background:var(--md-surface);border:1px solid var(--md-outline);display:grid;place-items:center;box-shadow:0 1px 2px rgba(20,24,60,.05);text-decoration:none;flex:0 0 auto;position:relative}
.bp-logo-home .flower{width:27px;height:27px}.bp-logo-home:hover{background:#fff;box-shadow:0 10px 24px -20px rgba(20,24,60,.32)}
.ctx-only-icon{width:30px!important;height:30px!important;border-radius:12px!important}.brand-area{gap:8px!important}.brand-area .context-picker{min-width:0}.brand-context-summary{max-width:min(320px,50vw)!important}
@media(max-width:760px){.bp-logo-home{width:38px;height:38px}.bp-logo-home .flower{width:24px;height:24px}.brand-area{gap:6px!important}.brand-context-summary{max-width:calc(100vw - 188px)!important}.ctx-only-icon{display:none!important}.demo-wizard-label{display:none!important}}

.featured-members{margin:0 0 18px;display:grid;gap:12px}.featured-head h2{margin:3px 0 0;font-size:22px;letter-spacing:-.03em}.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.featured-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:start;background:linear-gradient(180deg,#fff,#FBF9F3);border:1px solid var(--md-outline);border-radius:24px;padding:14px;text-decoration:none;color:var(--ink);box-shadow:0 14px 32px -28px rgba(20,24,60,.34)}.featured-card:hover{box-shadow:0 18px 38px -26px rgba(20,24,60,.42);transform:translateY(-1px)}.featured-card img{width:52px;height:52px;border-radius:18px;object-fit:cover}.featured-card span{display:flex;flex-direction:column;gap:3px}.featured-card b{font-size:15px}.featured-card small{font-size:12px;color:var(--ink-soft);font-weight:700;line-height:1.25}.featured-card em{grid-column:1/-1;display:flex;gap:7px;align-items:flex-start;background:var(--md-primary-container);color:var(--md-on-primary-container);border-radius:16px;padding:9px 10px;font-size:12.5px;font-style:normal;font-weight:760;line-height:1.35}.featured-card em i{font-size:16px;flex:0 0 auto}.fascination-line{display:flex!important;align-items:flex-start!important;gap:6px!important;margin:10px 0!important;padding:8px 10px!important;border-radius:16px!important;background:var(--md-surface-container)!important;color:var(--ink-soft)!important;font-size:12.5px!important;line-height:1.35!important}.fascination-line i{color:var(--purple);font-size:16px;flex:0 0 auto}.fascination-note{display:flex;gap:10px;align-items:flex-start;margin:14px 0;padding:12px;border-radius:18px;background:var(--md-primary-container);color:var(--md-on-primary-container)}.fascination-note i{font-size:20px;flex:0 0 auto}.fascination-note span{display:grid;gap:3px}.fascination-note b{font-size:12px;text-transform:uppercase;letter-spacing:.06em}.agent-msg{border:1px solid var(--md-outline);background:#fff;border-radius:16px;padding:10px 12px;margin-top:9px}.agent-msg.ai{background:var(--md-primary-container);color:var(--md-on-primary-container);border-color:transparent}.agent-msg p{margin:4px 0 0;line-height:1.4}
@media(max-width:760px){.featured-grid{grid-template-columns:1fr}.featured-card{border-radius:22px}.featured-head h2{font-size:19px}.fascination-line{font-size:12px!important}}

.editorial-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;align-items:start}.version-rail,.review-doc-card{background:var(--md-surface);border:1px solid var(--md-outline);border-radius:26px;padding:16px;box-shadow:0 16px 42px -34px rgba(20,24,60,.42)}.version-rail h2{margin:0 0 10px;font-size:16px}.ver-chip{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding:10px 12px;border-radius:16px;background:var(--md-surface-container);color:var(--ink);font-weight:850;text-align:left}.ver-chip small{color:var(--faint);font-size:11px}.ver-chip.active{background:var(--md-primary-container);color:var(--md-on-primary-container)}.version-note{margin-top:12px;padding:12px;border-radius:18px;background:#FBF9F3;border:1px solid var(--md-outline-soft)}.version-note p{margin:5px 0 0;color:var(--ink-soft);line-height:1.45}.doc-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px;color:var(--faint);font-size:13px;font-weight:750}.editable-review{min-height:420px}.doc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.review-feedback{margin:12px 0 0;color:var(--green);font-weight:850}.review-doc-card .doc h2{margin-top:0}
@media(max-width:760px){.editorial-layout{grid-template-columns:1fr}.version-rail{order:2}.review-doc-card{order:1}.doc-toolbar{align-items:flex-start;flex-direction:column}.editable-review{min-height:320px}}

@media(max-width:760px){
  .dock-tab .lbl[data-short-fr]::before{content:attr(data-short-fr)}
  body[data-lang="en"] .dock-tab .lbl[data-short-en]::before{content:attr(data-short-en)}
  .dock-tab .lbl[data-short-fr]{font-size:0!important;max-width:54px!important;overflow:visible!important;text-overflow:clip!important;}
  .dock-tab .lbl[data-short-fr]::before{font-size:7.8px!important;line-height:1.05!important;white-space:nowrap!important;display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:54px!important;}
}


/* v27 — mobile selector icon + fascination filter */
@media(max-width:760px){
  .brand-area .context-picker{display:block!important;flex:0 0 auto!important;}
  .context-picker>summary.brand-context-summary{width:40px!important;height:40px!important;max-width:40px!important;min-width:40px!important;padding:0!important;border-radius:999px!important;justify-content:center!important;}
  .context-picker>summary.brand-context-summary .ctx-only-icon{display:grid!important;width:30px!important;height:30px!important;margin:0!important;}
  .context-picker>summary.brand-context-summary .ctx-copy,
  .context-picker>summary.brand-context-summary .chevron{display:none!important;}
}
.fascination-filter-row{margin-top:-2px;margin-bottom:16px}.fascination-filter-chip{background:#efe6ff!important;color:#4b18b8!important;border-color:#ddccff!important;font-weight:900}.fascination-filter-chip.active{background:#6B2CFF!important;color:#fff!important;border-color:#6B2CFF!important}.fascination-panel{margin:14px 0 18px}.fascination-panel[hidden]{display:none!important}.fascination-panel-head{margin-bottom:12px}.fascination-panel-head h2{margin:3px 0 6px;font-size:clamp(22px,3vw,34px);letter-spacing:-.035em}.fascination-panel-head p{margin:0;color:var(--muted);font-weight:600}.fascination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.fascination-card{display:flex;gap:14px;padding:16px;border:1px solid var(--md-outline);border-radius:24px;background:linear-gradient(180deg,#fff,#fbf8ff);box-shadow:0 12px 34px -28px rgba(20,24,60,.35);text-decoration:none;color:inherit}.fascination-card img{width:58px;height:58px;border-radius:50%;object-fit:cover;flex:0 0 auto}.fascination-card h3{margin:0;font-size:18px}.fascination-card .role-line{margin:2px 0 10px;color:var(--ink-soft);font-weight:800}.fascination-card b{display:block;color:#5b22df;margin-bottom:8px}.fascination-card p{margin:0;color:var(--muted);font-weight:600;line-height:1.4}@media(max-width:860px){.fascination-grid{grid-template-columns:1fr}.fascination-card{border-radius:20px}}
.editorial-review-shell .editable-review h2{font-size:clamp(26px,4vw,42px);line-height:1.04;letter-spacing:-.04em}.editorial-review-shell .ver-chip{cursor:pointer}.editorial-review-shell .ver-chip.active{background:#6B2CFF!important;color:#fff!important}.editorial-review-shell .ver-chip.active small{color:rgba(255,255,255,.78)!important}


/* ============================================================
   v34 — desktop loop-choice placeholder + contextual demo button
   ============================================================ */
@media (min-width:901px){
  body.loop-choice-page .app-main{
    width:min(calc(100vw - 28px),1840px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-bottom:116px!important;
    min-height:calc(100dvh - 76px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(390px,30vw)!important;
    gap:16px!important;
    align-items:stretch!important;
  }
  .demo-choice-stage{display:contents!important;}
  body.loop-choice-page .demo-loop-choice,
  body.loop-choice-page .choice-tools-placeholder{
    min-height:calc(100dvh - 198px)!important;
  }
  .choice-tools-placeholder{
    display:flex;
    flex-direction:column;
    background:linear-gradient(180deg,#fff,#FBFAF5);
    border:1px solid var(--md-outline);
    border-radius:24px;
    box-shadow:0 1px 2px rgba(20,24,60,.05),0 24px 56px -28px rgba(20,24,60,.34);
    overflow:hidden;
  }
  .choice-tools-head{
    display:flex;
    align-items:center;
    gap:13px;
    padding:18px;
    border-bottom:1px solid var(--md-outline-soft);
  }
  .choice-tools-icon{
    width:46px;height:46px;border-radius:16px;
    display:grid;place-items:center;
    background:var(--md-primary-container);
    color:var(--md-on-primary-container);
    font-size:23px;flex:0 0 auto;
  }
  .choice-tools-head b{display:block;font-size:20px;letter-spacing:-.03em;line-height:1.05;}
  .choice-tools-head small{display:block;color:var(--faint);font-weight:800;margin-top:4px;}
  .choice-tools-body{padding:20px;display:grid;gap:12px;align-content:start;}
  .choice-tools-body p{margin:0 0 6px;color:var(--muted);font-weight:650;line-height:1.5;}
  .choice-tool-skeleton{
    min-height:72px;
    border:1px solid var(--md-outline-soft);
    background:var(--md-surface-container);
    border-radius:20px;
    display:flex;align-items:center;gap:12px;
    padding:14px;
    color:var(--ink-soft);
    font-weight:850;
  }
  .choice-tool-skeleton i{
    width:38px;height:38px;border-radius:14px;
    display:grid;place-items:center;
    background:#fff;color:var(--purple);
    font-size:20px;
    box-shadow:0 1px 2px rgba(20,24,60,.04);
  }
}
@media (max-width:900px){
  .demo-choice-stage{display:block;}
  .choice-tools-placeholder{display:none!important;}
}
.page-boucle .demo-wizard-trigger,
.page-apprendre .demo-wizard-trigger{
  animation:demoButtonArrival .72s cubic-bezier(.34,1.56,.5,1) both, demoButtonBeacon 2.6s ease-in-out .9s 4;
  position:relative;
}
.page-boucle .demo-wizard-trigger::after,
.page-apprendre .demo-wizard-trigger::after{
  content:"";
  position:absolute;inset:-6px;
  border-radius:999px;
  border:1px solid rgba(107,44,255,.22);
  opacity:0;
  pointer-events:none;
  animation:demoButtonRing 2.6s ease-in-out 1.05s 4;
}
@keyframes demoButtonArrival{from{opacity:0;transform:translateY(-8px) scale(.88)}to{opacity:1;transform:none}}
@keyframes demoButtonBeacon{0%,100%{box-shadow:0 1px 2px rgba(20,24,60,.04)}45%{box-shadow:0 1px 2px rgba(20,24,60,.04),0 0 0 8px rgba(107,44,255,.08),0 16px 36px -22px rgba(107,44,255,.55)}}
@keyframes demoButtonRing{0%{opacity:0;transform:scale(.88)}35%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.18)}}

/* ============================================================
   v42 — loop choice uses the full ChatLoop area with 3 loops
   ============================================================ */
@media (min-width:901px){
  body.loop-choice-page .demo-loop-choice{
    display:flex!important;
    flex-direction:column!important;
  }
  body.loop-choice-page .demo-loop-choice .loop-choice-grid{
    flex:1!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }
  body.loop-choice-page .demo-loop-choice .loop-choice-card{
    min-height:0!important;
    align-items:center!important;
    padding:24px!important;
  }
  body.loop-choice-page .demo-loop-choice .loop-choice-icon{
    width:58px!important;
    height:58px!important;
    border-radius:22px!important;
    font-size:28px!important;
  }
}


/* ============================================================
   v47 — loop creation sidebar before loop selection
   ============================================================ */
@media (min-width:901px){
  body.loop-choice-page .loop-create-sidebar{min-height:calc(100dvh - 198px)!important;}
  .loop-create-body{gap:14px!important;}
  .loop-create-form{display:grid;gap:12px;}
  .loop-create-form label{display:grid;gap:7px;}
  .loop-create-form label span{font-size:12px;font-weight:900;color:var(--faint);text-transform:uppercase;letter-spacing:.04em;}
  .loop-create-form input,.loop-create-form textarea,.loop-create-form select{
    width:100%;border:1px solid var(--md-outline);background:#fff;border-radius:16px;padding:12px 13px;color:var(--ink);font:800 14px/1.35 Inter,system-ui,sans-serif;outline:none;
  }
  .loop-create-form input:focus,.loop-create-form textarea:focus,.loop-create-form select:focus{border-color:#B99CFF;box-shadow:0 0 0 4px rgba(107,44,255,.12);}
  .loop-create-form.is-created{opacity:.58;filter:saturate(.9);}
  .loop-create-members{display:grid;gap:12px;}
  .loop-create-success{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;border:1px solid #D9C8FF;background:#F4EEFF;border-radius:18px;padding:12px;color:var(--ink);}
  .loop-create-success i{grid-row:1 / span 2;width:34px;height:34px;border-radius:13px;background:#fff;color:var(--purple);display:grid;place-items:center;font-weight:900;}
  .loop-create-success b{font-size:14px;font-weight:950;}.loop-create-success small{color:var(--muted);font-weight:750;}
  .member-pick-list{display:grid;gap:9px;}
  .member-pick-list button{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;border:1px solid var(--md-outline);background:#fff;border-radius:17px;padding:10px 11px;color:var(--ink);}
  .member-pick-list img{width:38px;height:38px;border-radius:50%;object-fit:cover;}.member-pick-list b{display:block;font-size:14px}.member-pick-list small{color:var(--faint);font-weight:750}.member-pick-list i{width:30px;height:30px;border-radius:12px;background:#F4EFE5;color:var(--purple);display:grid;place-items:center;}
  .member-pick-list button.is-added{border-color:#D6C4FF;background:#FBF8FF;}.member-pick-list button.is-added i{background:var(--purple);color:#fff;}
}

/* ============================================================
   v48 — loop creation simulation + FAB direct forms repair
   ============================================================ */
.loop-create-stage[hidden]{display:none!important;}
.loop-create-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:4px;}
.loop-create-progress span{display:flex;align-items:center;justify-content:center;min-height:30px;border-radius:999px;background:var(--md-surface-container);border:1px solid var(--md-outline-soft);color:var(--faint);font-size:11px;font-weight:900;letter-spacing:-.01em;white-space:nowrap;}
.loop-create-progress span.is-active{background:var(--md-primary-container);border-color:#D8C7FF;color:var(--md-on-primary-container);}
.loop-create-stage{display:grid;gap:12px;}
.loop-create-stage p{margin:0;color:var(--muted);font-weight:650;line-height:1.48;}
.loop-create-form{display:grid;gap:12px;}
.loop-create-form label{display:grid;gap:7px;}
.loop-create-form label span{font-size:12px;font-weight:900;color:var(--faint);text-transform:uppercase;letter-spacing:.04em;}
.loop-create-form input,.loop-create-form textarea,.loop-create-form select{width:100%;border:1px solid var(--md-outline);background:#fff;border-radius:16px;padding:12px 13px;color:var(--ink);font:800 14px/1.35 Inter,system-ui,sans-serif;outline:none;box-sizing:border-box;}
.loop-create-form input:focus,.loop-create-form textarea:focus,.loop-create-form select:focus{border-color:#B99CFF;box-shadow:0 0 0 4px rgba(107,44,255,.12);}
.loop-created-summary{border:1px solid #E7DCFF;background:#FBFAFF;border-radius:18px;padding:12px;display:grid;gap:4px;}
.loop-created-summary b{font-size:15px;font-weight:950;color:var(--ink);}.loop-created-summary small{color:var(--purple);font-weight:900;}.loop-created-summary p{font-size:13px;margin:0;color:var(--ink-soft);}
.member-pick-list{display:grid;gap:9px;}
.member-pick-list button{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;border:1px solid var(--md-outline);background:#fff;border-radius:17px;padding:10px 11px;color:var(--ink);font:inherit;cursor:pointer;}
.member-pick-list img{width:38px;height:38px;border-radius:50%;object-fit:cover;}.member-pick-list b{display:block;font-size:14px}.member-pick-list small{color:var(--faint);font-weight:750}.member-pick-list i{width:30px;height:30px;border-radius:12px;background:#F4EFE5;color:var(--purple);display:grid;place-items:center;}
.member-pick-list button.is-added{border-color:#D6C4FF;background:#FBF8FF;}.member-pick-list button.is-added i{background:var(--purple);color:#fff;}
.loop-create-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;}.loop-create-actions .btn,.loop-create-actions .btn-secondary{width:100%;justify-content:center;}
.loop-create-success-final{margin-top:2px;}
.created-loop-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px;border-radius:20px;border:1px solid #D9C8FF;background:linear-gradient(180deg,#fff,#FBF8FF);box-shadow:0 14px 30px -24px rgba(107,44,255,.42);}
.created-loop-card>span{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:var(--md-primary-container);color:var(--md-on-primary-container);font-size:22px;}.created-loop-card b{font-size:16px;font-weight:950;display:block;}.created-loop-card small{display:block;color:var(--purple);font-weight:900;margin-top:2px;}.created-loop-card p{margin:8px 0 0;color:var(--ink-soft);font-size:13px;line-height:1.42;}
.btn-block{width:100%;justify-content:center;}

.page-creer .create-screen{box-sizing:border-box;width:100%;}
.page-creer .create-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.page-creer .create-hero>div{min-width:0;max-width:760px;}
.page-creer .create-hero .btn-primary{flex:0 0 auto;}
.create-screen.is-direct-form .create-layout-v14{grid-template-columns:minmax(0,780px)!important;justify-content:center!important;align-items:start!important;}
.create-screen.is-direct-form .create-form-prototype{width:100%;max-width:780px;margin:0 auto;box-sizing:border-box;}
.create-screen.is-direct-form .create-hero{max-width:780px;margin-left:auto;margin-right:auto;}
.create-screen.is-direct-form .field-block textarea{max-width:100%;}
.create-screen.is-direct-form .fake-provider-card{overflow:hidden;}
.direct-form-note{display:flex;align-items:flex-start;gap:9px;background:#FBFAFF;border:1px solid #E7DCFF;color:var(--ink-soft);border-radius:16px;padding:10px 12px;font-size:13px;font-weight:760;line-height:1.4;}.direct-form-note i{color:var(--purple);font-size:18px;flex:0 0 auto;}

@media(max-width:760px){
  .page-creer .create-hero{gap:10px;margin-bottom:12px;}
  .page-creer .create-hero>div{max-width:none;}
  .create-screen.is-direct-form .create-layout-v14{display:block!important;}
  .create-screen.is-direct-form .create-form-prototype{max-width:none;}
  .create-screen.is-direct-form .field-block textarea{min-height:128px!important;}
  .loop-create-actions{grid-template-columns:1fr;}
}

/* ============================================================
   v49 — annuaire edition + AI side panels for direct create forms
   ============================================================ */
.screen-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.screen-head-actions .btn-primary,.screen-head-actions .btn-secondary{white-space:nowrap}.directory-editor-screen{min-height:calc(100dvh - 150px)}.profile-edit-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,430px);gap:18px;align-items:start}.profile-edit-card,.profile-ai-panel{background:var(--md-surface);border:1px solid var(--md-outline);border-radius:26px;box-shadow:var(--shadow-card)}.profile-edit-card{padding:22px;display:grid;gap:16px}.profile-ai-panel{position:sticky;top:82px;padding:16px;display:grid;gap:13px}.profile-edit-top{display:flex;gap:15px;align-items:center}.profile-edit-top img{width:76px;height:76px;border-radius:25px;object-fit:cover;border:1px solid var(--md-outline)}.profile-edit-top h2{margin:0;font-size:28px}.profile-edit-top p{margin:4px 0 0;color:var(--muted);line-height:1.45}.fascination-field small{color:var(--faint);font-weight:750;line-height:1.4}.profile-preview-card{border:1px solid #E7DCFF;background:linear-gradient(180deg,#fff,#FBFAFF);border-radius:22px;padding:16px}.profile-preview-card h3{font-size:24px;margin:10px 0 3px}.profile-preview-card p{color:var(--ink-soft);line-height:1.5}.profile-preview-card .fascination-note em{font-style:normal}.profile-ai-thread{max-height:420px}.profile-ai-actions{display:grid;grid-template-columns:1fr;gap:9px}.profile-ai-actions .btn-primary,.profile-ai-actions .btn-secondary{width:100%;justify-content:center}.profile-ai-composer{margin-top:0}.profile-save-feedback{display:flex;align-items:center;gap:8px;border-radius:16px;background:#E2F3E7;color:#1F7A41;padding:11px 13px;font-weight:850}.profile-save-feedback i{font-size:18px}.create-screen.is-direct-form .create-layout-v14.create-ai-split{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(340px,430px)!important;max-width:1240px!important;margin:0 auto!important;justify-content:stretch!important;align-items:start!important;gap:18px!important}.create-screen.is-direct-form .create-layout-v14.create-ai-split .create-form-prototype{max-width:none!important;margin:0!important}.create-screen.is-direct-form .create-layout-v14.create-ai-split .create-ai-side-panel{display:grid;gap:14px;position:sticky;top:82px}.create-ai-side-panel .fake-provider-card{overflow:hidden}.create-ai-side-actions{display:grid;gap:9px;margin-top:12px}.create-ai-side-actions .btn-primary,.create-ai-side-actions .btn-secondary{width:100%;justify-content:center}.create-ai-tips{box-shadow:var(--shadow-card)!important}.create-ai-tips p{margin:10px 0 0;color:var(--muted);line-height:1.45}.page-creer .create-screen.is-direct-form .create-hero{max-width:1240px!important}.page-creer .create-screen.is-direct-form .fake-provider-thread{max-height:420px}@media(max-width:980px){.profile-edit-layout,.create-screen.is-direct-form .create-layout-v14.create-ai-split{grid-template-columns:1fr!important}.profile-ai-panel,.create-screen.is-direct-form .create-layout-v14.create-ai-split .create-ai-side-panel{position:static}.profile-ai-thread,.page-creer .create-screen.is-direct-form .fake-provider-thread{max-height:300px}.screen-head-actions{width:100%;justify-content:stretch}.screen-head-actions .btn-primary,.screen-head-actions .btn-secondary{flex:1;justify-content:center}}@media(max-width:760px){.profile-edit-card,.profile-ai-panel{border-radius:22px;padding:16px}.profile-edit-top{align-items:flex-start}.profile-edit-top img{width:62px;height:62px;border-radius:20px}.profile-edit-top h2{font-size:23px}.profile-ai-actions{grid-template-columns:1fr}.create-screen.is-direct-form .create-layout-v14.create-ai-split{display:block!important}.create-screen.is-direct-form .create-layout-v14.create-ai-split .create-ai-side-panel{margin-top:14px}.page-creer .create-screen.is-direct-form .create-ai-side-panel .create-ai-tips{display:none}.page-creer .create-screen.is-direct-form .fake-provider-card{border-radius:22px!important}.page-creer .create-screen.is-direct-form .create-hero{max-width:none!important}.mobile-create-ai-composer{display:flex!important}}


/* ============================================================
   v51 — FAB menu above button + direct create 2/3 split
   ============================================================ */
.quick-actions{
  bottom:calc(116px + env(safe-area-inset-bottom))!important;
}
@media (min-width:761px){
  .quick-actions{bottom:118px!important;}
}
@media (max-width:760px){
  .quick-actions{
    bottom:calc(104px + env(safe-area-inset-bottom))!important;
    max-height:calc(100dvh - 134px)!important;
    overflow:auto!important;
  }
}
.create-screen.is-direct-form .create-layout-v14.create-ai-split{
  grid-template-columns:minmax(0,2fr) minmax(320px,1fr)!important;
  max-width:1380px!important;
}
.create-screen.is-direct-form .create-layout-v14.create-ai-split .create-ai-side-panel{
  min-width:0!important;
}
.create-screen.is-direct-form .create-layout-v14.create-ai-split .create-form-prototype{
  min-width:0!important;
}
@media(max-width:980px){
  .create-screen.is-direct-form .create-layout-v14.create-ai-split{grid-template-columns:1fr!important;}
}


/* ============================================================
   v52 — direct forms and profile editor use the same 2/3 + 1/3 rhythm as loop + tool
   ============================================================ */
@media (min-width:981px){
  body.page-creer .app-main,
  body.page-annuaire.directory-edit-page .app-main{
    width:min(calc(100vw - 28px),1840px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-bottom:116px!important;
  }
  body.page-creer .screen-shell.create-screen.is-direct-form,
  body.page-annuaire.directory-edit-page .screen-shell.directory-editor-screen{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
    min-height:calc(100dvh - 98px)!important;
    padding:18px!important;
  }
  body.page-creer .create-screen.is-direct-form .create-hero,
  body.page-annuaire.directory-edit-page .directory-editor-screen .create-hero{
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.page-creer .create-screen.is-direct-form .create-layout-v14.create-ai-split,
  body.page-annuaire.directory-edit-page .profile-edit-layout{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(410px,29vw)!important;
    gap:16px!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  body.page-creer .create-screen.is-direct-form .create-form-prototype,
  body.page-annuaire.directory-edit-page .profile-edit-card{
    max-width:none!important;
    width:100%!important;
    margin:0!important;
    min-width:0!important;
    align-self:stretch!important;
  }
  body.page-creer .create-screen.is-direct-form .create-ai-side-panel,
  body.page-annuaire.directory-edit-page .profile-ai-panel{
    min-width:0!important;
    width:100%!important;
    align-self:stretch!important;
    position:sticky!important;
    top:74px!important;
  }
  body.page-creer .create-screen.is-direct-form .fake-provider-thread,
  body.page-annuaire.directory-edit-page .profile-ai-thread{
    max-height:min(48dvh,520px)!important;
  }
}
@media (min-width:1400px){
  body.page-creer .create-screen.is-direct-form .create-layout-v14.create-ai-split,
  body.page-annuaire.directory-edit-page .profile-edit-layout{
    grid-template-columns:minmax(0,1fr) minmax(430px,28vw)!important;
  }
}
@media (max-width:980px){
  body.page-creer .create-screen.is-direct-form .create-layout-v14.create-ai-split,
  body.page-annuaire.directory-edit-page .profile-edit-layout{
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:none!important;
  }
}

/* ============================================================
   v59 — FAB forms aligned with the blog editor writing experience
   ============================================================ */
body.page-creer .create-form-prototype{
  gap:14px!important;
}
body.page-creer .create-form-prototype .form-topline{
  padding-bottom:4px;
  border-bottom:1px solid var(--md-outline-soft);
}
body.page-creer .create-form-prototype .form-topline .create-icon{
  width:50px;
  height:50px;
  border-radius:17px;
  font-size:24px;
}
body.page-creer .create-form-prototype .form-topline h2{
  font-size:24px;
  line-height:1.05;
}
.create-editor-field{
  display:grid;
  gap:9px;
  min-width:0;
}
.create-editor-field-label{
  font-size:13px;
  font-weight:900;
  color:var(--ink);
}
.create-format-shell{
  display:flex;
  flex-direction:column;
  border:1px solid var(--md-outline);
  border-radius:24px;
  background:#fff;
  overflow:hidden;
  min-width:0;
}
.create-format-toolbar{
  display:flex;
  align-items:center;
  gap:5px;
  padding:9px 11px;
  border-bottom:1px solid var(--md-outline-soft);
  background:linear-gradient(180deg,#fff,#FCFAF6);
  overflow-x:auto;
  scrollbar-width:none;
}
.create-format-toolbar::-webkit-scrollbar{display:none;}
.create-format-toolbar button{
  height:34px;
  min-width:34px;
  border:0;
  background:transparent;
  color:var(--ink-soft);
  border-radius:11px;
  font:inherit;
  font-weight:850;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 9px;
  white-space:nowrap;
  cursor:pointer;
}
.create-format-toolbar button:hover{
  background:var(--md-primary-container);
  color:var(--md-on-primary-container);
}
.create-fullscreen-btn{
  background:#F4EFE5!important;
  color:var(--ink)!important;
  padding-inline:11px!important;
}
.create-fullscreen-btn:hover,
.create-format-shell.is-fullscreen .create-fullscreen-btn{
  background:var(--purple)!important;
  color:#fff!important;
}
.create-textarea-wrap{
  position:relative;
  min-height:0;
  background:#fff;
}
.create-main-textarea{
  width:100%;
  min-height:260px!important;
  resize:vertical!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  padding:18px 20px 30px!important;
  font:650 16px/1.62 Inter,system-ui,sans-serif!important;
  color:var(--ink)!important;
  outline:none!important;
  box-shadow:none!important;
  box-sizing:border-box;
}
.create-main-textarea:focus{
  box-shadow:inset 0 0 0 2px rgba(107,44,255,.18)!important;
}
.create-textarea-resize-corner{
  position:absolute;
  right:10px;
  bottom:8px;
  width:28px;
  height:22px;
  border-radius:11px;
  color:#8D78C9;
  display:grid;
  place-items:center;
  pointer-events:none;
  opacity:.75;
}
.create-bottom-options{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.create-bottom-options .field-block select,
.create-bottom-options .field-block input{
  background:#fff;
}
body.is-create-editor-fullscreen{
  overflow:hidden;
}
body.is-create-editor-fullscreen .create-screen.is-direct-form .create-hero,
body.is-create-editor-fullscreen .create-screen.is-direct-form .create-ai-side-panel,
body.is-create-editor-fullscreen .dock-wrap,
body.is-create-editor-fullscreen #dock-wrap{
  display:none!important;
}
body.is-create-editor-fullscreen .create-screen.is-direct-form{
  position:fixed!important;
  inset:0!important;
  z-index:1600!important;
  background:#FAF7F0!important;
  padding:18px!important;
  overflow:auto!important;
}
body.is-create-editor-fullscreen .create-screen.is-direct-form .create-layout-v14.create-ai-split{
  display:block!important;
  max-width:none!important;
  width:100%!important;
  height:100%!important;
}
body.is-create-editor-fullscreen .create-screen.is-direct-form .create-form-prototype{
  height:calc(100dvh - 36px)!important;
  display:flex!important;
  flex-direction:column!important;
  border-radius:28px!important;
}
body.is-create-editor-fullscreen .create-screen.is-direct-form .form-actions,
body.is-create-editor-fullscreen .create-screen.is-direct-form .create-bottom-options,
body.is-create-editor-fullscreen .create-screen.is-direct-form .direct-form-note,
body.is-create-editor-fullscreen .create-screen.is-direct-form .ai-preview-card{
  display:none!important;
}
body.is-create-editor-fullscreen .create-format-shell.is-fullscreen{
  flex:1 1 auto;
  min-height:0;
}
body.is-create-editor-fullscreen .create-format-shell.is-fullscreen .create-textarea-wrap{
  flex:1 1 auto;
  min-height:0;
}
body.is-create-editor-fullscreen .create-format-shell.is-fullscreen .create-main-textarea{
  height:100%!important;
  min-height:0!important;
}
@media(max-width:980px){
  .create-main-textarea{min-height:210px!important;}
  body.page-creer .create-format-toolbar{padding:8px;gap:3px;}
  .create-format-toolbar button{height:32px;padding:0 8px;}
}
@media(max-width:760px){
  body.page-creer .create-form-prototype .form-topline{align-items:flex-start;}
  body.page-creer .create-form-prototype .form-topline h2{font-size:22px;}
  .create-fullscreen-btn span{display:none;}
  .create-main-textarea{min-height:190px!important;padding:15px 16px 28px!important;}
  .create-format-shell{border-radius:22px;}
  body.is-create-editor-fullscreen .create-screen.is-direct-form{padding:8px!important;}
  body.is-create-editor-fullscreen .create-screen.is-direct-form .create-form-prototype{height:calc(100dvh - 16px)!important;border-radius:22px!important;}
}
body.page-creer .format-separator{width:1px;height:24px;background:var(--md-outline);margin:0 5px;flex:0 0 auto;}
body.page-creer .format-spacer{flex:1 1 auto;min-width:8px;}

/* ============================================================
   v80 — mobile FAB menu becomes a distinct premium action sheet
   ============================================================ */
.quick-actions{
  width:min(430px,calc(100vw - 28px))!important;
  padding:12px!important;
  gap:8px!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(231,225,212,.96)!important;
  box-shadow:0 26px 72px -36px rgba(13,21,56,.55),0 8px 24px -18px rgba(20,24,60,.28)!important;
  backdrop-filter:saturate(1.35) blur(18px)!important;
  -webkit-backdrop-filter:saturate(1.35) blur(18px)!important;
}
.quick-actions-head{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:3px 4px 8px;
}
.quick-actions-head span{
  color:#8A92A6;
  font-size:11px;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:950;
}
.quick-actions-head strong{
  color:var(--ink);
  font-size:17px;
  line-height:1.1;
  letter-spacing:-.025em;
  font-weight:950;
}
.quick-actions button{
  width:100%!important;
  background:#fff!important;
  border:1px solid rgba(231,225,212,.92)!important;
  border-radius:18px!important;
  box-shadow:0 12px 34px -28px rgba(20,24,60,.40)!important;
}
.quick-actions button:hover{
  border-color:rgba(107,44,255,.30)!important;
  background:#FCFAFF!important;
}
.quick-actions.open + *,
.quick-actions.open{filter:none!important;}
.dock-create.is-active .dock-ind,
#dock-fab.is-active .dock-ind{
  transform:rotate(45deg)!important;
  background:linear-gradient(160deg,#7E45FF,#4E18D8)!important;
}
@media(max-width:640px){
  .quick-actions{
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    width:calc(100vw - 28px)!important;
    padding:12px!important;
    border-radius:27px!important;
  }
  .quick-actions button{
    min-height:60px!important;
    padding:11px 12px!important;
  }
  .quick-actions button b{font-size:14px!important;line-height:1.05!important;}
  .quick-actions button small{font-size:12px!important;line-height:1.15!important;}
}


/* ============================================================
   v81 — interaction color system + FAB/menu/create harmonization
   ============================================================ */
:root{
  --bp-help-bg:#EAF0FF;
  --bp-help-fg:#315CEB;
  --bp-help-border:#CAD7FF;
  --bp-help-shadow:rgba(49,92,235,.34);
  --bp-need-bg:#FFEAF3;
  --bp-need-fg:#DB3B7C;
  --bp-need-border:#FFD0E3;
  --bp-need-shadow:rgba(219,59,124,.34);
  --bp-meet-bg:#E8F7EE;
  --bp-meet-fg:#24965C;
  --bp-meet-border:#BCE8CD;
  --bp-meet-shadow:rgba(36,150,92,.34);
  --bp-explore-bg:#FFF1E5;
  --bp-explore-fg:#D96B1F;
  --bp-explore-border:#FFD6B8;
  --bp-explore-shadow:rgba(217,107,31,.34);
  --bp-learn-bg:#EFE6FF;
  --bp-learn-fg:#6B2CFF;
  --bp-learn-border:#D8C7FF;
  --bp-learn-shadow:rgba(107,44,255,.36);
}
.bp-action-help{--bp-action-bg:var(--bp-help-bg);--bp-action-fg:var(--bp-help-fg);--bp-action-border:var(--bp-help-border);--bp-action-shadow:var(--bp-help-shadow)}
.bp-action-need{--bp-action-bg:var(--bp-need-bg);--bp-action-fg:var(--bp-need-fg);--bp-action-border:var(--bp-need-border);--bp-action-shadow:var(--bp-need-shadow)}
.bp-action-meet{--bp-action-bg:var(--bp-meet-bg);--bp-action-fg:var(--bp-meet-fg);--bp-action-border:var(--bp-meet-border);--bp-action-shadow:var(--bp-meet-shadow)}
.bp-action-explore{--bp-action-bg:var(--bp-explore-bg);--bp-action-fg:var(--bp-explore-fg);--bp-action-border:var(--bp-explore-border);--bp-action-shadow:var(--bp-explore-shadow)}
.bp-action-learn{--bp-action-bg:var(--bp-learn-bg);--bp-action-fg:var(--bp-learn-fg);--bp-action-border:var(--bp-learn-border);--bp-action-shadow:var(--bp-learn-shadow)}

.quick-actions{
  left:var(--qa-left,50%)!important;
  right:auto!important;
  width:min(520px,calc(100vw - 40px))!important;
  max-width:520px!important;
  bottom:calc(116px + env(safe-area-inset-bottom))!important;
  transform:translateX(-50%) translateY(10px) scale(.98)!important;
  transform-origin:50% 100%!important;
  z-index:340!important;
}
.quick-actions.open{transform:var(--qa-transform,translateX(-50%) translateY(0) scale(1))!important;}
.quick-actions::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-9px;
  width:18px;
  height:18px;
  border-right:1px solid rgba(231,225,212,.96);
  border-bottom:1px solid rgba(231,225,212,.96);
  background:rgba(255,255,255,.96);
  transform:translateX(-50%) rotate(45deg);
  border-radius:0 0 5px 0;
  box-shadow:8px 8px 22px -22px rgba(13,21,56,.55);
}
.quick-actions .quick-action-item{
  position:relative;
  min-height:70px;
  border-color:color-mix(in oklab,var(--bp-action-fg) 16%,var(--md-outline))!important;
  background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--bp-action-bg) 24%,#fff))!important;
  transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease), background .18s var(--ease)!important;
}
.quick-actions .quick-action-item .bp-action-icon,
.qa-ico.bp-action-icon{
  background:var(--bp-action-bg)!important;
  color:var(--bp-action-fg)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 10px 24px -20px var(--bp-action-shadow)!important;
}
.quick-actions .quick-action-item b{color:var(--ink);font-weight:950;letter-spacing:-.02em}
.quick-actions .quick-action-item small{color:#858CA0!important;font-weight:800!important}
@media(hover:hover){
  .quick-actions .quick-action-item:hover{
    transform:translateY(-2px);
    border-color:color-mix(in oklab,var(--bp-action-fg) 42%,var(--md-outline))!important;
    background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--bp-action-bg) 48%,#fff))!important;
    box-shadow:0 24px 50px -36px var(--bp-action-shadow)!important;
  }
  .quick-actions .quick-action-item:hover .bp-action-icon{transform:scale(1.03)}
}
.quick-actions .quick-action-item:focus-visible{
  outline:0;
  border-color:var(--bp-action-fg)!important;
  box-shadow:0 0 0 4px color-mix(in oklab,var(--bp-action-fg) 16%,transparent),0 18px 42px -34px var(--bp-action-shadow)!important;
}
body.fab-menu-open::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:300;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(250,247,240,.08),rgba(250,247,240,.18));
  backdrop-filter:blur(1.5px);
  -webkit-backdrop-filter:blur(1.5px);
}
body.fab-menu-open .dock-wrap{z-index:330!important;}
body.fab-menu-open .dock-create.is-active .dock-ind,
body.fab-menu-open #dock-fab.is-active .dock-ind{
  transform:rotate(45deg)!important;
  background:linear-gradient(160deg,#6B2CFF,#4E18D8)!important;
  box-shadow:0 14px 34px -18px rgba(107,44,255,.85),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
@media(max-width:760px){
  .quick-actions{
    left:50%!important;
    width:calc(100vw - 28px)!important;
    max-width:430px!important;
    max-height:calc(100dvh - 118px - env(safe-area-inset-bottom))!important;
    overflow:auto!important;
    bottom:calc(88px + env(safe-area-inset-bottom))!important;
    padding:12px!important;
    border-radius:28px!important;
  }
  .quick-actions.open{transform:translateX(-50%) translateY(0) scale(1)!important;}
  .quick-actions::after{display:none!important;}
  body.fab-menu-open::before{background:rgba(250,247,240,.38);backdrop-filter:blur(2.5px);-webkit-backdrop-filter:blur(2.5px)}
  body.fab-menu-open .dock-create.is-active .dock-ind,
  body.fab-menu-open #dock-fab.is-active .dock-ind{width:48px!important;height:38px!important;border-radius:20px!important;}
}

/* Create pages inherit the action color from the current FAB action. */
body.page-creer.bp-action-help,
body.page-creer.bp-action-need,
body.page-creer.bp-action-meet,
body.page-creer.bp-action-explore,
body.page-creer.bp-action-learn{
  --create-action-bg:var(--bp-action-bg);
  --create-action-fg:var(--bp-action-fg);
  --create-action-border:var(--bp-action-border);
  --create-action-shadow:var(--bp-action-shadow);
}
body.page-creer .create-icon,
body.page-creer .create-action-link .qa-ico.bp-action-icon,
body.page-creer .fake-provider-logo,
body.page-creer .mobile-ai-avatar{
  background:var(--create-action-bg,var(--md-primary-container))!important;
  color:var(--create-action-fg,var(--md-on-primary-container))!important;
  box-shadow:0 14px 34px -24px var(--create-action-shadow,rgba(107,44,255,.42))!important;
}
body.page-creer .create-form-prototype,
body.page-creer .fake-provider-card,
body.page-creer .create-help-card{
  border-color:color-mix(in oklab,var(--create-action-fg,var(--purple)) 20%,var(--md-outline))!important;
}
body.page-creer .fake-msg.ai{
  border-color:color-mix(in oklab,var(--create-action-fg,var(--purple)) 18%,#E7DCFF)!important;
  background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--create-action-bg,var(--md-primary-container)) 54%,#fff))!important;
}
body.page-creer .fake-msg.ai b,
body.page-creer .create-help-card li i{color:var(--create-action-fg,var(--purple))!important;}
body.page-creer .create-ai-side-actions .btn-primary,
body.page-creer .form-actions .btn-primary,
body.page-creer .mobile-create-ai-composer button{
  background:var(--create-action-fg,var(--md-primary))!important;
  color:#fff!important;
  box-shadow:0 18px 42px -24px var(--create-action-shadow,rgba(107,44,255,.55))!important;
}
body.page-creer .create-format-toolbar button:hover,
body.page-creer .create-fullscreen-btn:hover{
  background:color-mix(in oklab,var(--create-action-bg,var(--md-primary-container)) 72%,#fff)!important;
  color:var(--create-action-fg,var(--purple))!important;
}
body.page-creer .create-action-link.is-current{
  border-color:color-mix(in oklab,var(--create-action-fg,var(--purple)) 28%,var(--md-outline))!important;
  background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--create-action-bg,var(--md-primary-container)) 45%,#fff))!important;
}

/* ============================================================
   v82 — FAB precision + neutral create forms + IA sequence polish
   ============================================================ */
.quick-actions{
  left:var(--qa-left,50%)!important;
  right:auto!important;
  transform:translateX(-50%) translateY(10px) scale(.985)!important;
  transform-origin:50% 100%!important;
}
.quick-actions.open{
  transform:translateX(-50%) translateY(0) scale(1)!important;
}
@media(min-width:761px){
  .quick-actions{
    width:min(520px,calc(100vw - 40px))!important;
    max-width:520px!important;
  }
}
@media(max-width:760px){
  .quick-actions{
    left:50%!important;
    width:calc(100vw - 28px)!important;
    bottom:calc(88px + env(safe-area-inset-bottom))!important;
  }
  body.fab-menu-open .dock-create.is-active .dock-ind,
  body.fab-menu-open #dock-fab.is-active .dock-ind{
    width:46px!important;
    height:36px!important;
    border-radius:18px!important;
    transform:rotate(45deg)!important;
    box-shadow:0 10px 20px -14px rgba(107,44,255,.65),inset 0 1px 0 rgba(255,255,255,.22)!important;
  }
  body.fab-menu-open .dock-create.is-active,
  body.fab-menu-open #dock-fab.is-active{
    background:transparent!important;
    box-shadow:none!important;
  }
}
@media(hover:hover){
  .quick-actions .quick-action-item:hover{
    transform:none!important;
    border-color:color-mix(in oklab,var(--bp-action-fg) 46%,var(--md-outline))!important;
    background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--bp-action-bg) 50%,#fff))!important;
    box-shadow:0 18px 42px -34px var(--bp-action-shadow), inset 0 0 0 1px color-mix(in oklab,var(--bp-action-fg) 16%,transparent)!important;
  }
  .quick-actions .quick-action-item:hover .bp-action-icon{
    transform:none!important;
  }
}

/* Dashboard cards keep the color identity, without physical movement. */
body.page-dashboard .today-action-card:hover{
  transform:none!important;
}
body.page-dashboard .today-action-card:hover .today-action-icon{
  transform:none!important;
}

/* Create pages: action color is now an identity marker, not a full-page theme. */
body.page-creer .create-form-prototype,
body.page-creer .fake-provider-card,
body.page-creer .create-help-card{
  border-color:var(--md-outline)!important;
}
body.page-creer .fake-msg.ai{
  border-color:#E7DCFF!important;
  background:linear-gradient(180deg,#fff,#F7F2FF)!important;
}
body.page-creer .fake-msg.ai b,
body.page-creer .create-help-card li i{
  color:var(--purple)!important;
}
body.page-creer .fake-provider-logo,
body.page-creer .mobile-ai-avatar{
  background:var(--md-primary-container)!important;
  color:var(--md-on-primary-container)!important;
  box-shadow:none!important;
}
body.page-creer .create-icon{
  background:var(--create-action-bg,var(--md-primary-container))!important;
  color:var(--create-action-fg,var(--md-on-primary-container))!important;
  box-shadow:0 14px 34px -24px var(--create-action-shadow,rgba(107,44,255,.42))!important;
}
body.page-creer .create-ai-side-actions .btn-primary,
body.page-creer .form-actions .btn-primary,
body.page-creer .mobile-create-ai-composer button{
  background:var(--md-primary)!important;
  color:#fff!important;
  box-shadow:0 18px 42px -24px rgba(107,44,255,.55)!important;
}
body.page-creer .create-format-toolbar button:hover,
body.page-creer .create-fullscreen-btn:hover{
  background:var(--md-primary-container)!important;
  color:var(--md-on-primary-container)!important;
}
body.page-creer .create-action-link.is-current{
  border-color:var(--md-outline)!important;
  background:linear-gradient(180deg,#fff,#FBF8F1)!important;
}
body.page-creer .create-action-link.is-current .qa-ico.bp-action-icon{
  background:var(--bp-action-bg)!important;
  color:var(--bp-action-fg)!important;
}

.fake-step-list{
  display:grid;
  gap:8px;
  margin-top:8px;
}
.fake-step-list span{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:8px 10px;
  border-radius:14px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(231,220,255,.78);
  color:var(--ink-soft);
  font-weight:750;
  line-height:1.25;
}
.fake-step-list span i{
  width:24px;
  height:24px;
  border-radius:999px;
  display:grid;
  place-items:center;
  font-style:normal;
  background:var(--md-primary-container);
  color:var(--md-on-primary-container);
  font-size:11px;
  font-weight:950;
}
.fake-msg small{
  display:block;
  margin-top:8px;
  color:#7B8296;
  font-weight:850;
}


/* ============================================================
   v83 — global premium polish + FAB final alignment
   ============================================================ */
:root{
  --bp-premium-focus:0 0 0 4px color-mix(in oklab,var(--purple) 14%,transparent);
  --bp-premium-hover-border:color-mix(in oklab,var(--purple) 34%,var(--md-outline));
  --bp-menu-shadow:0 26px 70px -42px rgba(13,21,56,.56),0 8px 22px -18px rgba(20,24,60,.22);
}

/* Header: a calmer premium glass bar with stronger tap targets. */
.app-header{
  z-index:260!important;
  background:linear-gradient(180deg,rgba(250,247,240,.94),rgba(250,247,240,.76))!important;
  border-bottom:1px solid rgba(231,225,212,.70)!important;
  box-shadow:0 10px 32px -30px rgba(13,21,56,.42)!important;
}
.context-picker>summary,
.icon-btn,
.global-search,
.avatar{
  transition:border-color .16s var(--ease),background .16s var(--ease),box-shadow .16s var(--ease),color .16s var(--ease)!important;
}
.context-picker>summary:hover,
.icon-btn:hover,
.global-search:focus-within,
.avatar:hover{
  border-color:var(--bp-premium-hover-border)!important;
  background:#fff!important;
  box-shadow:0 14px 34px -28px rgba(107,44,255,.38)!important;
}
.menu-card{
  border-radius:22px!important;
  border-color:rgba(231,225,212,.95)!important;
  box-shadow:var(--bp-menu-shadow)!important;
  backdrop-filter:saturate(1.25) blur(12px)!important;
  -webkit-backdrop-filter:saturate(1.25) blur(12px)!important;
}
.menu-card a,.menu-action{
  min-height:44px!important;
  border-radius:15px!important;
  transition:background .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease),box-shadow .16s var(--ease)!important;
}
.menu-card a:hover,.menu-action:hover{
  background:linear-gradient(180deg,#fff,#FBF8F1)!important;
  box-shadow:inset 0 0 0 1px rgba(231,225,212,.78)!important;
}

/* Dock: stable active state, no physical jump. */
.dock-wrap{
  z-index:320!important;
}
.dock{
  background:rgba(255,255,255,.82)!important;
  border-color:rgba(231,225,212,.94)!important;
  box-shadow:0 18px 48px -34px rgba(13,21,56,.55),0 2px 8px rgba(20,24,60,.05)!important;
}
.dock-tab,.dock-create{
  transition:background .16s var(--ease),color .16s var(--ease),box-shadow .16s var(--ease)!important;
}
.dock-tab:hover .dock-ind,
.dock-tab:focus-visible .dock-ind{
  background:rgba(238,229,255,.72)!important;
  color:var(--md-on-primary-container)!important;
}
.dock-tab.is-active .dock-ind{
  box-shadow:inset 0 0 0 1px rgba(216,199,255,.72)!important;
}
.dock-create .dock-ind,
#dock-fab .dock-ind{
  transform:none!important;
  transition:background .16s var(--ease),box-shadow .16s var(--ease),color .16s var(--ease)!important;
}
#dock-fab.is-active .dock-ind,
.dock-create.is-active .dock-ind,
body.fab-menu-open #dock-fab.is-active .dock-ind,
body.fab-menu-open .dock-create.is-active .dock-ind{
  transform:rotate(45deg)!important;
  width:46px!important;
  height:36px!important;
  border-radius:19px!important;
  background:linear-gradient(160deg,#6B2CFF,#4E18D8)!important;
  box-shadow:0 12px 28px -18px rgba(107,44,255,.74),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
body.fab-menu-open #dock-fab,
body.fab-menu-open .dock-create{
  background:transparent!important;
  box-shadow:none!important;
}

/* FAB menu: final action sheet. Always anchored to the FAB, without caret/double-button illusion. */
.quick-actions{
  position:fixed!important;
  left:var(--qa-left,50%)!important;
  right:auto!important;
  width:min(492px,calc(100vw - 40px))!important;
  max-width:492px!important;
  padding:12px!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.975)!important;
  border:1px solid rgba(231,225,212,.98)!important;
  box-shadow:0 30px 74px -42px rgba(13,21,56,.58),0 9px 24px -18px rgba(20,24,60,.22)!important;
  backdrop-filter:saturate(1.28) blur(16px)!important;
  -webkit-backdrop-filter:saturate(1.28) blur(16px)!important;
  transform:translateX(-50%) translateY(10px) scale(.985)!important;
  transform-origin:50% 100%!important;
  z-index:360!important;
}
.quick-actions.open{
  transform:translateX(-50%) translateY(0) scale(1)!important;
}
.quick-actions::after{
  display:none!important;
}
.quick-actions .quick-action-item{
  min-height:68px!important;
  border-radius:18px!important;
  border-color:color-mix(in oklab,var(--bp-action-fg) 18%,var(--md-outline))!important;
  background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--bp-action-bg) 22%,#fff))!important;
  box-shadow:0 10px 28px -26px rgba(20,24,60,.34)!important;
  transition:border-color .16s var(--ease),background .16s var(--ease),box-shadow .16s var(--ease),color .16s var(--ease)!important;
  transform:none!important;
}
@media(hover:hover){
  .quick-actions .quick-action-item:hover{
    transform:none!important;
    border-color:color-mix(in oklab,var(--bp-action-fg) 50%,var(--md-outline))!important;
    background:linear-gradient(180deg,#fff,color-mix(in oklab,var(--bp-action-bg) 46%,#fff))!important;
    box-shadow:0 20px 46px -36px var(--bp-action-shadow),inset 0 0 0 1px color-mix(in oklab,var(--bp-action-fg) 15%,transparent)!important;
  }
  .quick-actions .quick-action-item:hover .bp-action-icon{
    transform:none!important;
  }
}
.quick-actions .quick-action-item:active{
  transform:none!important;
  filter:brightness(.985);
}
.quick-actions .quick-action-item:focus-visible{
  box-shadow:var(--bp-premium-focus),0 18px 42px -34px var(--bp-action-shadow)!important;
}
body.fab-menu-open::before{
  z-index:300!important;
  background:rgba(250,247,240,.34)!important;
  backdrop-filter:blur(2.4px)!important;
  -webkit-backdrop-filter:blur(2.4px)!important;
}
@media(max-width:760px){
  .quick-actions{
    left:50%!important;
    width:calc(100vw - 28px)!important;
    max-width:430px!important;
    bottom:calc(86px + env(safe-area-inset-bottom))!important;
    max-height:calc(100dvh - 126px - env(safe-area-inset-bottom))!important;
    overflow:auto!important;
    transform:translateX(-50%) translateY(8px) scale(.985)!important;
  }
  .quick-actions.open{transform:translateX(-50%) translateY(0) scale(1)!important;}
  .quick-actions-head{padding:2px 5px 8px!important;}
  .quick-actions .quick-action-item{min-height:61px!important;padding:10px 11px!important;}
  #dock-fab.is-active .dock-ind,
  .dock-create.is-active .dock-ind,
  body.fab-menu-open #dock-fab.is-active .dock-ind,
  body.fab-menu-open .dock-create.is-active .dock-ind{
    width:44px!important;
    height:34px!important;
    border-radius:18px!important;
    transform:rotate(45deg)!important;
  }
}

/* Create forms: the action color is only a marker on the main action icon and the active icon, not a full page theme. */
body.page-creer .create-form-prototype,
body.page-creer .fake-provider-card,
body.page-creer .create-help-card,
body.page-creer .create-ai-side-panel,
body.page-creer .create-format-shell{
  border-color:var(--md-outline)!important;
}
body.page-creer .create-form-prototype,
body.page-creer .fake-provider-card,
body.page-creer .create-help-card{
  background:#fff!important;
}
body.page-creer .fake-msg.ai{
  background:linear-gradient(180deg,#fff,#F7F2FF)!important;
  border-color:#E7DCFF!important;
}
body.page-creer .fake-msg.ai b,
body.page-creer .create-help-card li i{
  color:var(--purple)!important;
}
body.page-creer .fake-provider-logo,
body.page-creer .mobile-ai-avatar{
  background:var(--md-primary-container)!important;
  color:var(--md-on-primary-container)!important;
  box-shadow:none!important;
}
body.page-creer .create-ai-side-actions .btn-primary,
body.page-creer .form-actions .btn-primary,
body.page-creer .mobile-create-ai-composer button{
  background:var(--md-primary)!important;
  color:#fff!important;
  box-shadow:0 18px 42px -24px rgba(107,44,255,.55)!important;
}
body.page-creer .create-icon,
body.page-creer .create-action-link.is-current .qa-ico.bp-action-icon{
  background:var(--create-action-bg,var(--md-primary-container))!important;
  color:var(--create-action-fg,var(--md-on-primary-container))!important;
  box-shadow:0 14px 34px -24px var(--create-action-shadow,rgba(107,44,255,.42))!important;
}
body.page-creer .create-action-link.is-current{
  border-color:var(--md-outline)!important;
  background:linear-gradient(180deg,#fff,#FBF8F1)!important;
  box-shadow:inset 0 0 0 1px rgba(231,225,212,.62)!important;
}
body.page-creer .create-action-link:hover{
  background:#fff!important;
  border-color:var(--bp-premium-hover-border)!important;
}
body.page-creer .create-format-toolbar button:hover,
body.page-creer .create-fullscreen-btn:hover,
.btn-secondary:hover,
.today-secondary-btn:hover{
  transform:none!important;
}

/* Universal polish: hover/focus feedback should not make layout jump. */
.tool:hover,
.btn-primary:hover,
.btn-secondary:hover,
.resume-item:hover,
.loop-mini-list a:hover,
.article-card:hover,
.meeting-card:hover,
.exchange-card:hover,
.person:hover{
  transform:none!important;
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
}
