/* Figma u6OqaZteknbzOo6p4bguYu / 22:61. Temporary, demo-only presentation catalogue.
   Toolbar, entity tokens and arrow asset are shared with the rubric atelier. */
:is(.prg-proposal-showcase,.prg-reader) { --prop-pad:24px; --prop-title:24px; --prop-copy:14px; --prop-photo:174px; }
:is(.prg-proposal-showcase,.prg-reader) > .prg-actions { margin-bottom:24px; }
.prg-prop-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.prg-prop-grid[data-columns="1"] { grid-template-columns:minmax(0,1fr); }
.prg-prop-grid[data-columns="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.prg-prop-grid[data-columns="4"] { grid-template-columns:repeat(4,minmax(0,1fr)); }
[data-proposal-variant][data-size="xs"] { --prop-pad:16px; --prop-title:18px; --prop-copy:13px; --prop-photo:116px; }
[data-proposal-variant][data-size="s"] { --prop-pad:20px; --prop-title:20px; --prop-copy:13px; --prop-photo:146px; }
[data-proposal-variant][data-size="l"] { --prop-pad:28px; --prop-title:26px; --prop-photo:200px; }
[data-proposal-variant][data-size="xl"] { --prop-pad:32px; --prop-title:30px; --prop-copy:16px; --prop-photo:250px; }
.prg-prop-card { container:proposal-card / inline-size; position:relative; display:flex; flex-direction:column; min-width:0; border:1px solid var(--fl-election-border); border-radius:24px; background:var(--fl-election-surface); color:var(--fl-election-text); box-shadow:0 6px 24px var(--demo-shadow); transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease; }
:is(.prg-proposal-showcase,.prg-reader) a.prg-prop-link { display:flex; flex:1; flex-direction:column; min-width:0; color:inherit; text-decoration:none; border-radius:inherit; overflow:hidden; }
.prg-prop-body { display:flex; flex:1; flex-direction:column; min-width:0; gap:16px; padding:var(--prop-pad); }
:is(.prg-proposal-showcase,.prg-reader) .prg-prop-body :is(p,h3,h4,ul) { margin:0; }
:is(.prg-proposal-showcase,.prg-reader) .prg-prop-body :is(h3,h4) { font-size:var(--prop-title); font-weight:600; line-height:1.4; color:inherit; overflow-wrap:anywhere; }
.prg-prop-rubric { color:var(--prg-accent); font-size:11px; font-weight:500; line-height:1.6; }
.prg-prop-excerpt { font-size:var(--prop-copy); line-height:1.65; color:var(--fl-election-muted); overflow-wrap:anywhere; }
.prg-prop-tags { display:flex; flex-wrap:wrap; gap:6px 10px; padding:0; list-style:none; color:var(--prg-accent); font-size:11px; line-height:1.6; }
.prg-prop-tags li { overflow-wrap:anywhere; }
.prg-prop-tags li + li::before { content:'·'; margin-right:10px; }
.prg-prop-number { padding:var(--prop-pad) var(--prop-pad) 0; color:var(--prg-accent); font-size:40px; line-height:1.3; font-weight:600; }
.prg-prop-visual { position:relative; flex-shrink:0; height:var(--prop-photo); background:var(--prg-tint); overflow:hidden; display:grid; place-items:center; }
.prg-prop-visual > span { font-size:48px; color:var(--prg-accent); font-weight:600; }
.prg-prop-visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .38s ease; }
.prg-prop-cta { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:auto; min-height:44px; padding:12px 16px; border-radius:99px; background:var(--prg-tint); color:var(--prg-accent); font-size:12px; font-weight:600; line-height:1.6; }
:is(.prg-proposal-showcase,.prg-reader) .prg-prop-source { margin:0; padding:0 var(--prop-pad) 16px; font-size:12px; }
:is(.prg-proposal-showcase,.prg-reader) .prg-prop-source a { display:inline-block; padding:8px 0; color:var(--prg-accent); text-decoration:underline; text-underline-offset:3px; }
.prg-prop-facts { display:grid; gap:12px; }
.prg-prop-facts > div { padding:16px; border-radius:12px; background:var(--prg-tint); font-size:12px; line-height:1.6; }
.prg-prop-facts strong { display:block; margin-bottom:8px; color:var(--prg-accent); }
.prg-prop-facts p { color:var(--fl-election-muted); }
[data-proposal-variant="editorial-manifeste"] .prg-prop-number { font-size:48px; }
[data-proposal-variant="editorial-manifeste"] :is(h3,h4) { font-size:calc(var(--prop-title) * 1.16); }
[data-proposal-variant="editorial-accent"] .prg-prop-card,
[data-proposal-variant="compacte-carnet"] .prg-prop-card { background:var(--prg-tint); }
[data-proposal-variant="editorial-accent"] .prg-prop-cta,
[data-proposal-variant="compacte-carnet"] .prg-prop-cta { background:var(--fl-election-surface); }
[data-proposal-variant="illustree-immersion"] .prg-prop-card { background:var(--demo-ink); color:#fff; }
[data-proposal-variant="illustree-immersion"] :is(.prg-prop-rubric,.prg-prop-excerpt,.prg-prop-tags,.prg-prop-source a) { color:#fff; }
[data-proposal-variant="illustree-immersion"] .prg-prop-cta { background:#fff; color:var(--demo-ink); }
[data-proposal-variant="parcours-reperes"] .prg-prop-number { font-size:32px; }
[data-proposal-variant="compacte-lignes"] .prg-prop-card { border-radius:12px; }
:is(.prg-proposal-showcase,.prg-reader) .prg-prop-link:focus-visible,
:is(.prg-proposal-showcase,.prg-reader) .prg-prop-source a:focus-visible { outline:3px solid var(--fl-election-accent); outline-offset:5px; }
.prg-prop-card:focus-within { z-index:1; border-color:var(--fl-election-accent); }
@container proposal-card (min-width:520px) {
  :is(.prg-proposal-showcase,.prg-reader) [data-proposal-variant="illustree-fenetre"] .prg-prop-link { display:grid; grid-template-columns:32% minmax(0,1fr); }
  [data-proposal-variant="illustree-fenetre"] .prg-prop-visual { height:100%; min-height:320px; }
  :is(.prg-proposal-showcase,.prg-reader) [data-proposal-variant="parcours-frise"] .prg-prop-link { display:grid; grid-template-columns:90px minmax(0,1fr); }
  [data-proposal-variant="parcours-frise"] .prg-prop-number { text-align:center; padding:var(--prop-pad) 8px; }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  [data-proposal-variant]:not([data-motion="none"]) .prg-prop-card:hover { border-color:var(--fl-election-accent); box-shadow:0 16px 40px var(--demo-shadow); }
  [data-proposal-variant]:not([data-motion="none"]) .prg-prop-card:hover .prg-demo-card__arrow { transform:translateX(5px); }
  [data-proposal-variant][data-motion="lift"] .prg-prop-card:hover { transform:translateY(-6px); }
  [data-proposal-variant][data-motion="zoom"] .prg-prop-card:hover img { transform:scale(1.06); }
  [data-proposal-variant][data-motion="zoom"] .prg-prop-card:hover .prg-prop-cta { transform:scale(1.015); }
  [data-proposal-variant][data-motion="glide"] .prg-prop-card:hover { transform:translateX(4px); }
  [data-proposal-variant][data-motion="tilt"] .prg-prop-card:hover { transform:perspective(1000px) rotateX(1.5deg) rotateY(-1.5deg) translateY(-3px); }
  [data-proposal-variant][data-motion="halo"] .prg-prop-card:hover { box-shadow:0 0 0 3px color-mix(in srgb,var(--fl-election-accent) 25%,transparent),0 16px 40px var(--demo-shadow); }
}
@container rubric-showcase (max-width:1159px) { .prg-prop-grid[data-columns="4"] { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@container rubric-showcase (max-width:859px) { .prg-prop-grid:is([data-columns="3"],[data-columns="4"]) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@container rubric-showcase (max-width:579px) {
  .prg-prop-grid:is([data-columns="2"],[data-columns="3"],[data-columns="4"]) { grid-template-columns:minmax(0,1fr); }
  :is(.prg-proposal-showcase,.prg-reader) .prg-demo-variant { padding:12px; }
  :is(.prg-proposal-showcase,.prg-reader) .prg-demo-controls { grid-template-columns:minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) {
  :is(.prg-proposal-showcase,.prg-reader) *, :is(.prg-proposal-showcase,.prg-reader) *::before, :is(.prg-proposal-showcase,.prg-reader) *::after { animation:none!important; transition:none!important; transform:none!important; }
}
