/* FormeLyo F.7 — Template Library / Model Builder */
.flrac-model-library{--mdl-border:#dce3ef;--mdl-soft:#f6f8fc;--mdl-text:#132650;--mdl-muted:#738099;--mdl-blue:#2f63f5;position:relative}.flrac-model-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.flrac-model-head h2{margin:2px 0 4px;font-size:28px;line-height:1.05;color:var(--mdl-text)}.flrac-model-head p{margin:0;color:var(--mdl-muted);font-size:12px}.flrac-model-head-actions{display:flex;align-items:center;gap:10px}.flrac-model-toolbar{display:grid;grid-template-columns:minmax(260px,1.45fr) repeat(5,minmax(120px,.62fr)) minmax(135px,.7fr) auto;gap:8px;padding:12px;border:1px solid var(--mdl-border);border-radius:14px;background:#fff}.flrac-model-toolbar input,.flrac-model-toolbar select{height:40px;border:1px solid #d5deea;border-radius:9px;background:#fff;padding:0 10px;color:#43506a;font-size:10.5px}.flrac-model-search{display:flex;align-items:center;border:1px solid #d5deea;border-radius:9px;padding:0 10px;gap:8px}.flrac-model-search input{border:0!important;padding:0!important;min-width:0;width:100%;outline:0}.flrac-model-viewbar{display:flex;justify-content:space-between;align-items:center;margin:12px 0}.flrac-model-tabs{display:inline-flex;border:1px solid var(--mdl-border);padding:3px;border-radius:10px;background:#fff}.flrac-model-tabs button{height:32px;border:0;background:transparent;border-radius:7px;padding:0 13px;color:#6d7890;font-size:10px;font-weight:700;cursor:pointer}.flrac-model-tabs button.is-active{background:#edf3ff;color:#2458e5}.flrac-model-result-count{font-size:10px;color:#728099}.flrac-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.flrac-model-card{position:relative;display:flex;flex-direction:column;min-height:228px;background:#fff;border:1px solid var(--mdl-border);border-radius:14px;padding:16px;box-shadow:0 1px 1px rgba(15,35,70,.02);transition:.16s ease}.flrac-model-card:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(31,54,100,.07)}.flrac-model-card.is-archived{opacity:.62}.flrac-model-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.flrac-model-card-top>div:first-child{display:flex;flex-wrap:wrap;gap:6px}.flrac-model-source,.flrac-model-role,.flrac-model-version,.flrac-model-tags span,.flrac-model-metrics span{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;padding:3px 7px;font-size:8.5px;font-weight:700}.flrac-model-source{background:#fff1e9;color:#f36b32}.flrac-model-role{background:#eef3fb;color:#53647f}.flrac-model-version{background:#eef4ff;color:#2d61ec}.flrac-model-card h3{font-size:15px;margin:12px 0 6px;color:var(--mdl-text)}.flrac-model-card>p{font-size:11px;line-height:1.5;color:var(--mdl-muted);margin:0 0 12px;min-height:34px}.flrac-model-metrics{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.flrac-model-metrics span{background:#f7f9fc;color:#748198;border:1px solid #eef1f6}.flrac-model-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.flrac-model-tags span{background:#f4f7fb;color:#6b7890}.flrac-model-card footer{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid #eef1f5;padding-top:12px;margin-top:12px;font-size:9.5px;color:#8390a4}.flrac-model-actions{position:relative;display:flex;gap:6px;align-items:center}.flrac-model-more{width:32px;height:32px;border:1px solid #dbe3ee;background:#fff;border-radius:8px;cursor:pointer;color:#68778f}.flrac-model-menu{position:absolute;right:0;top:36px;z-index:20;width:190px;background:#fff;border:1px solid #dbe3ee;border-radius:10px;box-shadow:0 14px 30px rgba(16,33,68,.14);padding:5px}.flrac-model-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:9px 10px;border-radius:7px;font-size:10px;color:#33435e;cursor:pointer}.flrac-model-menu button:hover{background:#f4f7fb}.flrac-model-menu button.is-danger{color:#cf3d3d}.flrac-model-grid[data-view="list"]{grid-template-columns:1fr}.flrac-model-grid[data-view="list"] .flrac-model-card{min-height:0;display:grid;grid-template-columns:150px minmax(220px,1.2fr) minmax(180px,.8fr) minmax(180px,.8fr) auto;align-items:center;gap:14px}.flrac-model-grid[data-view="list"] .flrac-model-card h3,.flrac-model-grid[data-view="list"] .flrac-model-card>p,.flrac-model-grid[data-view="list"] .flrac-model-metrics,.flrac-model-grid[data-view="list"] .flrac-model-tags,.flrac-model-grid[data-view="list"] .flrac-model-card footer{margin:0;min-height:0}.flrac-model-grid[data-view="list"] .flrac-model-card footer{border:0;padding:0}.flrac-model-empty{padding:50px 20px;text-align:center;color:#8793a6;border:1px dashed #d8e0ec;border-radius:14px;background:#fff}
.flrac-model-use-overlay[hidden],.flrac-model-builder-overlay[hidden]{display:none!important}.flrac-model-use-overlay,.flrac-model-builder-overlay{position:fixed;inset:0;z-index:100050}.flrac-model-backdrop{position:absolute;inset:0;background:rgba(17,30,52,.48);backdrop-filter:blur(3px)}.flrac-model-drawer{position:absolute;right:0;top:0;bottom:0;width:min(560px,94vw);background:#fff;display:flex;flex-direction:column;box-shadow:-20px 0 50px rgba(16,32,63,.18)}.flrac-model-drawer.is-wide{width:min(760px,96vw)}.flrac-model-drawer>header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 22px 16px;border-bottom:1px solid #e8edf4}.flrac-model-drawer>header h2{margin:3px 0 0;font-size:22px;color:var(--mdl-text)}.flrac-model-drawer>header>button{width:36px;height:36px;border:0;border-radius:50%;background:#f2f5f9;color:#6c7890;font-size:22px;cursor:pointer}.flrac-model-use-meta,.flrac-model-builder-version{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px;color:#7b8799;font-size:9px}.flrac-model-use-form,.flrac-model-builder-form{min-height:0;display:flex;flex:1;flex-direction:column}.flrac-model-scroll{overflow:auto;flex:1;padding:18px 22px 28px}.flrac-model-scroll section{padding:4px 0 18px}.flrac-model-scroll section+section{border-top:1px solid #edf0f5;padding-top:18px}.flrac-model-scroll h3{font-size:14px;color:var(--mdl-text);margin:0 0 10px}.flrac-model-scroll label{display:grid;gap:6px;margin-bottom:10px;font-size:10px;font-weight:700;color:#46546d}.flrac-model-scroll input,.flrac-model-scroll textarea,.flrac-model-scroll select{width:100%;box-sizing:border-box;border:1px solid #d7dfeb;border-radius:9px;background:#fff;padding:10px;font-size:11px;color:#273754}.flrac-model-scroll input,.flrac-model-scroll select{height:40px}.flrac-model-drawer form>footer{display:flex;justify-content:flex-end;gap:9px;padding:13px 22px;border-top:1px solid #e8edf4;background:#fff}.flrac-model-builder-tabs{position:sticky;top:-18px;z-index:3;display:flex;gap:3px;overflow:auto;background:#fff;border-bottom:1px solid #e8edf4;margin:-18px -22px 18px;padding:12px 22px 9px}.flrac-model-builder-tabs button{white-space:nowrap;border:0;background:transparent;border-radius:8px;padding:8px 10px;color:#748097;font-size:10px;font-weight:700;cursor:pointer}.flrac-model-builder-tabs button.is-active{background:#eef4ff;color:#2d61ec}.flrac-model-pane-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.flrac-model-pane-head p,.flrac-model-prompt-section>p{margin:3px 0 0;font-size:10px;color:#7c879a}.flrac-check-row,.flrac-prompt-row{display:grid;align-items:center;gap:7px;border:1px solid #e0e6ef;border-radius:10px;padding:8px;margin-bottom:7px;background:#fbfcfe}.flrac-check-row{grid-template-columns:1fr auto auto}.flrac-prompt-row{grid-template-columns:1fr 1fr 100px 1fr auto auto}.flrac-check-row input,.flrac-prompt-row input,.flrac-prompt-row select{margin:0}.flrac-row-remove{border:0;background:#fff0f0;color:#c43d3d;width:32px;height:32px;border-radius:8px;cursor:pointer}.flrac-model-checklist-preview>div{display:grid;gap:6px}.flrac-model-checklist-preview .flrac-check-preview-item{display:flex;gap:8px;align-items:center;border:1px solid #e3e8f0;border-radius:9px;padding:8px 10px;font-size:10px;color:#536078}.flrac-model-checklist-preview .flrac-check-preview-item:before{content:"";width:13px;height:13px;border:1.5px solid #aab7c8;border-radius:4px}.flrac-model-history{display:grid;gap:7px;margin-bottom:12px}.flrac-model-history-row{display:grid;grid-template-columns:52px 1fr auto;gap:9px;align-items:center;padding:9px;border:1px solid #e2e7ef;border-radius:9px}.flrac-model-history-row strong{font-size:10px;color:#31415e}.flrac-model-history-row span{font-size:9px;color:#7f8a9b}.flrac-model-feedback{font-size:10px;color:#52617a;margin-top:8px}.flrac-model-switch{display:flex!important;grid-template-columns:18px 1fr!important;align-items:center!important;gap:8px!important}.flrac-model-switch input{width:16px!important;height:16px!important}
@media(max-width:1280px){.flrac-model-toolbar{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(130px,.6fr));}.flrac-model-toolbar select:nth-of-type(n+4){grid-row:2}.flrac-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.flrac-model-grid[data-view="list"] .flrac-model-card{grid-template-columns:130px 1fr 160px auto}.flrac-model-grid[data-view="list"] .flrac-model-tags{display:none}}
@media(max-width:780px){.flrac-model-head{display:block}.flrac-model-head-actions{margin-top:12px}.flrac-model-toolbar{grid-template-columns:1fr}.flrac-model-toolbar select:nth-of-type(n+4){grid-row:auto}.flrac-model-grid{grid-template-columns:1fr}.flrac-model-grid[data-view="list"] .flrac-model-card{display:flex}.flrac-model-drawer,.flrac-model-drawer.is-wide{width:100vw;max-width:100vw}.flrac-prompt-row{grid-template-columns:1fr 1fr}.flrac-prompt-row .flrac-row-remove{grid-column:2;justify-self:end}.flrac-model-drawer form>footer{display:grid;grid-template-columns:1fr}.flrac-model-drawer form>footer button{width:100%}}
.flrac-template-provenance-line{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 0;color:#6f7c92;font-size:10px}.flrac-template-provenance-line strong{color:#243657}.flrac-activity-checklist{display:grid;gap:7px;margin-top:8px}.flrac-activity-check-item{display:flex!important;grid-template-columns:16px 1fr!important;align-items:center!important;gap:9px!important;margin:0!important;padding:9px 10px;border:1px solid #e0e6ef;border-radius:9px;background:#fbfcfe;color:#3f4f68!important;font-size:10px!important;font-weight:650!important}.flrac-activity-check-item input{width:15px!important;height:15px!important;margin:0!important}.flrac-activity-check-item.is-done span{text-decoration:line-through;color:#8b96a8}
.flrac-new-task-google-sync.is-compact{padding-bottom:4px}.flrac-google-sync-card{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;border:1px solid #dbe4f0;border-radius:12px;background:#f8faff;padding:12px 14px!important;margin:0!important}.flrac-google-sync-copy{display:grid;gap:2px}.flrac-google-sync-copy strong{font-size:11px;color:#22385e}.flrac-google-sync-copy small{font-size:9px;color:#75839a;font-weight:500}.flrac-google-sync-card em{font-size:8.5px;color:#2a9b67;font-style:normal;font-weight:750;white-space:nowrap}.flrac-google-switch{position:relative;width:38px;height:22px}.flrac-google-switch input{position:absolute;opacity:0;pointer-events:none}.flrac-google-switch>span{position:absolute;inset:0;border-radius:999px;background:#cbd5e3;transition:.18s}.flrac-google-switch>span:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(20,40,80,.25);transition:.18s}.flrac-google-switch input:checked+span{background:#2f63f5}.flrac-google-switch input:checked+span:after{transform:translateX(16px)}.flrac-google-sync-options{margin-top:9px;padding:10px 12px;border:1px solid #e1e7f0;border-radius:10px;background:#fff}.flrac-google-sync-options label{margin:0!important}


/* F.7.1 — Model Builder scroll containment & checklist examples */
:root{--flrac-model-adminbar-offset:32px}
@media(max-width:782px){:root{--flrac-model-adminbar-offset:46px}}
body:not(.admin-bar){--flrac-model-adminbar-offset:0px}
html.flrac-modal-open,body.flrac-modal-open{overflow:hidden!important;overscroll-behavior:none!important}
.flrac-model-use-overlay,.flrac-model-builder-overlay{top:var(--flrac-model-adminbar-offset)!important;height:calc(100dvh - var(--flrac-model-adminbar-offset))!important;bottom:auto!important;overflow:hidden!important;overscroll-behavior:none!important}
.flrac-model-drawer{top:0!important;bottom:auto!important;height:100%!important;max-height:100%!important;min-height:0!important;overflow:hidden!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important}
.flrac-model-use-form,.flrac-model-builder-form{min-height:0!important;height:100%!important;overflow:hidden!important;display:grid!important;grid-template-rows:minmax(0,1fr) auto!important}
.flrac-model-scroll{min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;scrollbar-gutter:stable;padding-bottom:30px!important}
.flrac-model-scroll::-webkit-scrollbar{width:8px}.flrac-model-scroll::-webkit-scrollbar-track{background:transparent}.flrac-model-scroll::-webkit-scrollbar-thumb{background:#c8d2e1;border-radius:999px}.flrac-model-scroll{scrollbar-width:thin;scrollbar-color:#c8d2e1 transparent}
.flrac-model-drawer form>footer{position:relative!important;z-index:8!important;min-height:66px!important;flex:0 0 auto!important;box-shadow:0 -8px 22px rgba(15,35,70,.05)!important}
.flrac-model-builder-tabs{top:0!important;margin:-18px -22px 18px!important;box-shadow:0 5px 12px rgba(15,35,70,.025)}
.flrac-checklist-presets{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.75fr);gap:14px;align-items:end;margin:0 0 14px;padding:13px;border:1px solid #dce5f2;border-radius:12px;background:linear-gradient(135deg,#f8fbff 0%,#fff 100%)}
.flrac-checklist-presets strong{display:block;margin:3px 0 4px;color:var(--mdl-text);font-size:12px}.flrac-checklist-presets p{margin:0;color:#758298;font-size:9.5px;line-height:1.45}.flrac-checklist-preset-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.flrac-checklist-preset-actions select{margin:0!important;min-width:0}.flrac-checklist-preset-actions button{height:40px;white-space:nowrap}.flrac-checklist-preset-feedback{grid-column:1/-1;min-height:14px!important;margin:0!important;color:#315bea!important;font-size:9px!important}
.flrac-check-builder:empty:after{content:"Aucune étape pour le moment. Ajoutez une étape ou utilisez un exemple métier ci-dessus.";display:block;padding:24px 14px;border:1px dashed #d9e2ef;border-radius:10px;color:#8a97aa;text-align:center;font-size:10px;background:#fbfcfe}
@media(max-width:780px){.flrac-checklist-presets{grid-template-columns:1fr}.flrac-checklist-preset-actions{grid-template-columns:1fr}.flrac-checklist-preset-actions button{width:100%}.flrac-model-scroll{padding-left:16px!important;padding-right:16px!important}.flrac-model-builder-tabs{margin-left:-16px!important;margin-right:-16px!important;padding-left:16px!important;padding-right:16px!important}}


/* F.7.4.3 — Template card action menu portal / stacking-context fix */
.flrac-model-menu{display:none!important}
.flrac-model-action-popover[hidden]{display:none!important}
.flrac-model-action-popover{position:fixed;z-index:2147482500;width:190px;box-sizing:border-box;background:#fff;border:1px solid #dbe3ee;border-radius:10px;box-shadow:0 18px 44px rgba(16,33,68,.2);padding:5px;isolation:isolate}
.flrac-model-action-popover button{display:block;width:100%;min-height:36px;text-align:left;border:0;background:transparent;padding:9px 10px;border-radius:7px;font-size:10px;font-weight:600;color:#33435e;cursor:pointer}
.flrac-model-action-popover button:hover,.flrac-model-action-popover button:focus-visible{background:#f1f5fb;outline:none}
.flrac-model-action-popover button.is-danger{color:#cf3d3d}.flrac-model-action-popover button.is-danger:hover,.flrac-model-action-popover button.is-danger:focus-visible{background:#fff0f0}
.flrac-model-more[aria-expanded="true"]{border-color:#8eabf9;background:#eef4ff;color:#2458e8;box-shadow:0 0 0 2px rgba(47,99,245,.12)}


/* RC1.4.0-F.7.4.4 — Unified Action Menu tokens */
.flrac-model-action-popover{
  width:var(--flrac-action-menu-width,172px)!important;
  padding:var(--flrac-action-menu-padding,6px)!important;
  border-radius:var(--flrac-action-menu-radius,10px)!important;
  box-shadow:var(--flrac-action-menu-shadow,0 16px 38px rgba(15,23,42,.16))!important;
}
.flrac-model-action-popover button{
  min-height:var(--flrac-action-menu-item-height,38px)!important;
  height:var(--flrac-action-menu-item-height,38px)!important;
  padding:0 10px!important;
  border-radius:7px!important;
  font-size:var(--flrac-action-menu-font-size,10px)!important;
  font-weight:650!important;
}
.flrac-model-action-popover button:hover{background:#f3f6fc!important;color:#2458e8!important}
.flrac-model-action-popover button:focus-visible{background:#eef4ff!important;color:#2458e8!important;outline:2px solid rgba(47,99,245,.34)!important;outline-offset:-2px!important}
.flrac-model-action-popover button.is-danger:hover,.flrac-model-action-popover button.is-danger:focus-visible{background:#fff1f0!important;color:#a91d14!important}

/* V1.0.2.5 — Context-aware checklist suggestions */
.flrac-checklist-context{margin-top:5px!important;color:#52627a!important;font-weight:650}
.flrac-checklist-preset-actions{grid-template-columns:minmax(0,1fr) auto!important}
.flrac-checklist-preset-actions .flrac-checklist-show-all{grid-column:1/-1;justify-self:end;border:0;background:transparent;color:#315bea;font:inherit;font-size:9.5px;font-weight:750;line-height:1.2;padding:2px 0;cursor:pointer}
.flrac-checklist-preset-actions .flrac-checklist-show-all:hover{text-decoration:underline}
.flrac-checklist-preset-actions .flrac-checklist-show-all:focus-visible{outline:2px solid #315bea;outline-offset:3px;border-radius:4px}
.flrac-checklist-preset-select optgroup{font-weight:750;color:#172b52}
.flrac-checklist-preset-select option{font-weight:500;color:#1f2d46}
.flrac-model-builder-form [name="service_key"]+small{display:block;margin-top:5px;color:#758298;font-size:9px;line-height:1.4}
@media(max-width:780px){.flrac-checklist-preset-actions .flrac-checklist-show-all{justify-self:start}.flrac-checklist-preset-actions{grid-template-columns:1fr!important}}


/* V1.0.2.6 — Smart Checklist Builder */
.flrac-smart-check-help{display:flex;align-items:flex-start;gap:10px;margin:0 0 10px;padding:10px 12px;border:1px solid #dce5f2;border-radius:10px;background:#f8faff}.flrac-smart-check-help strong{color:#20365d;font-size:10px;white-space:nowrap}.flrac-smart-check-help span{color:#728099;font-size:9.5px;line-height:1.45}
.flrac-smart-check-row{display:block!important;padding:10px!important}.flrac-smart-check-main{display:grid;grid-template-columns:minmax(220px,1fr) 170px auto 32px;gap:8px;align-items:center}.flrac-smart-check-options{display:grid;grid-template-columns:minmax(150px,.55fr) minmax(210px,.8fr) minmax(220px,1fr);gap:8px;align-items:end;margin-top:8px;padding-top:8px;border-top:1px dashed #dce4ef}.flrac-smart-check-options label{margin:0!important}.flrac-smart-check-options select{margin:0!important}.flrac-check-corrective-wrap{min-height:40px;padding:0 8px;border:1px solid #e1e7f0;border-radius:8px;background:#fff}
@media(max-width:780px){.flrac-smart-check-main,.flrac-smart-check-options{grid-template-columns:1fr}.flrac-smart-check-main .flrac-row-remove{justify-self:end}.flrac-check-corrective-wrap{padding:8px}}

.flrac-checklist-blocks{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:14px;align-items:end;margin:0 0 12px;padding:12px;border:1px solid #e1e7f0;border-radius:11px;background:#fff}.flrac-checklist-blocks strong{display:block;margin:3px 0;color:#20365d;font-size:11px}.flrac-checklist-blocks p{margin:0;color:#7a879a;font-size:9px}.flrac-checklist-block-actions{display:grid;grid-template-columns:1fr auto;gap:7px}.flrac-checklist-block-actions select{margin:0!important}.flrac-checklist-block-actions button{height:40px;white-space:nowrap}@media(max-width:780px){.flrac-checklist-blocks,.flrac-checklist-block-actions{grid-template-columns:1fr}.flrac-checklist-block-actions button{width:100%}}
