/* Le Café des Maths — Magazine du mois. Palette originale, dimensions Elementor harmonisées. */
.cdmm-slot, .cdmm-slot *, .cdmm, .cdmm * { box-sizing:border-box; }
.cdmm-slot {
    display:flex; align-items:center; justify-content:center;
    width:100%; height:100%; min-width:0; max-width:none;
    margin:0!important; padding:0!important;
    container-type:inline-size;
}
.cdmm {
    --cdm-ink:#392b22; --cdm-muted:#7e7164; --cdm-accent:#2c635f; --cdm-gold:#af7b31;
    --cdmm-header-h:104px; --cdmm-content-h:460px; --cdmm-footer-h:80px;
    color:var(--cdm-ink); font-family:inherit; line-height:1.65;
    display:grid;
    grid-template-rows:var(--cdmm-header-h) var(--cdmm-content-h) var(--cdmm-footer-h);
    height:calc(var(--cdmm-header-h) + var(--cdmm-content-h) + var(--cdmm-footer-h) + 2px);
    width:100%; min-width:0; max-width:none;
    margin:0!important; padding:0!important;
    flex:0 0 100%; align-self:center; justify-self:center;
    border:var(--cdmm-border-width,1px) var(--cdmm-border-style,solid) var(--cdmm-border-color,#e3d6c2); border-radius:var(--cdmm-radius,19px);
    background:var(--cdmm-bg-main,#fffbf4); overflow:hidden;
    box-shadow:var(--cdmm-shadow,0 13px 42px rgba(52,39,25,.065));
}
.cdmm .cdmm-top {
    display:flex; justify-content:space-between; align-items:center; gap:12px;
    min-width:0; min-height:0; height:100%;
    padding:var(--cdmm-pad-top-y,12px) var(--cdmm-pad-top-x,26px); overflow:auto;
    background:var(--cdmm-bg-top,#f0e8dc); color:var(--cdmm-color-brand,#5f574d);
}
.cdmm .cdmm-brand {
    display:inline-flex; align-items:center; gap:var(--cdmm-gap-brand,12px);
    min-width:0; color:var(--cdmm-color-brand,#5f574d);
    font-family:var(--cdmm-font-brand,Georgia,'Times New Roman',serif);
    font-size:var(--cdmm-size-brand,clamp(1.5rem,2.6vw,2.05rem));
    letter-spacing:0; font-weight:var(--cdmm-weight-brand,700); line-height:var(--cdmm-line-brand,1.25);
    text-align:var(--cdmm-align-brand,left); overflow-wrap:anywhere;
}
.cdmm .cdmm-mark {height:39px;width:39px;flex:0 0 39px;display:flex;align-items:center;justify-content:center;
    border:1.5px solid var(--cdmm-logo-border,#c8ab7b);background:var(--cdmm-logo-bg,#fffbf4);color:var(--cdmm-logo-color,#947039);border-radius:50%}
.cdmm .cdmm-mark svg{display:block}
.cdmm .cdmm-month{color:var(--cdmm-color-month,#5f574d);font-family:var(--cdmm-font-month,inherit);font-size:var(--cdmm-size-month,.81rem);letter-spacing:.025em;font-weight:var(--cdmm-weight-month,500);line-height:var(--cdmm-line-month,inherit);text-align:var(--cdmm-align-month,right);white-space:nowrap;flex-shrink:0}
.cdmm .cdmm-inner{
    display:flex; align-items:center; justify-content:flex-start;
    min-width:0; min-height:0; height:100%; overflow-y:auto; overflow-x:hidden;
    padding:var(--cdmm-pad-main-top,32px) var(--cdmm-pad-main-x,36px) var(--cdmm-pad-main-bottom,33px);
}
.cdmm .cdmm-layout{
    width:100%; min-width:0; margin-block:auto;
    display:grid; grid-template-columns:minmax(135px,182px) minmax(0,1fr);
    gap:var(--cdmm-gap-main,36px); align-items:center;
}
.cdmm .cdmm-cover{width:100%;min-width:0;max-width:182px;margin:0!important;padding:0!important;line-height:0}
.cdmm .cdmm-image-frame{
    display:flex; align-items:center; justify-content:center;
    border-radius:var(--cdmm-image-radius,5px);line-height:0;text-decoration:none!important;overflow:hidden;
    border:var(--cdmm-image-border-width,1px) solid var(--cdmm-image-border-color,#e0d2be);box-shadow:0 9px 23px rgba(66,47,27,.12);background:#fffbf4;
    min-height:215px;
}
.cdmm .cdmm-image{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;
    max-height:250px;object-fit:contain;background:#fffbf4;border:0!important;border-radius:0!important;
    margin:0!important;padding:0!important;box-shadow:none!important}
.cdmm .cdmm-details{min-width:0;text-align:left;overflow-wrap:anywhere}
.cdmm h2.cdmm-title{margin:0 0 14px!important;padding:0!important;color:var(--cdmm-color-title,#392b22)!important;
    font-family:var(--cdmm-font-title,Georgia,'Times New Roman',serif)!important;
    font-size:var(--cdmm-size-title,clamp(1.5rem,2.6vw,2.05rem))!important;
    font-weight:var(--cdmm-weight-title,700)!important;line-height:var(--cdmm-line-title,1.25)!important;text-align:var(--cdmm-align-title,left)!important}
.cdmm .cdmm-description{font-family:var(--cdmm-font-body,inherit);font-weight:var(--cdmm-weight-body,400);font-size:var(--cdmm-size-body,1.04rem);line-height:var(--cdmm-line-body,1.77);color:var(--cdmm-color-body,#493c33);margin:0!important;padding:0!important;text-align:var(--cdmm-align-body,justify)!important;text-align-last:left!important}
.cdmm .cdmm-bottom{
    display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
    min-width:0; min-height:0; height:100%; padding:var(--cdmm-pad-bottom-y,11px) var(--cdmm-pad-bottom-x,28px); overflow:auto;
    background:var(--cdmm-bg-bottom,#f6efe4);border-top:var(--cdmm-separator-width,1px) solid var(--cdmm-separator-color,#eadfce);
    font-size:.76rem;color:#796e60;
}
.cdmm .cdmm-footer-left{display:flex;align-items:center;gap:var(--cdmm-gap-footer,17px);flex-wrap:wrap;min-width:0}
.cdmm .cdmm-level{font-family:var(--cdmm-font-level,inherit);font-size:var(--cdmm-size-level,.78rem);font-weight:var(--cdmm-weight-level,650);line-height:var(--cdmm-line-level,inherit);text-align:var(--cdmm-align-level,left);color:var(--cdmm-color-level,#5e594f)}
.cdmm .cdmm-official-link,.cdmm .cdmm-official-link:visited{
    display:inline-flex;gap:4px;align-items:baseline;
    color:var(--cdmm-color-button,#664a31)!important;font-family:var(--cdmm-font-button,inherit);font-weight:var(--cdmm-weight-button,750);font-size:var(--cdmm-size-button,.78rem);line-height:var(--cdmm-line-button,inherit);text-align:var(--cdmm-align-button,left);text-decoration:underline!important;
    text-decoration-thickness:1.5px!important;text-underline-offset:3px;box-shadow:none!important;
}
.cdmm .cdmm-official-link:hover{color:#392b22!important;text-decoration-thickness:2.5px!important}
.cdmm .cdmm-copyright{margin-left:auto;font-family:var(--cdmm-font-copyright,inherit);font-weight:var(--cdmm-weight-copyright,400);font-size:var(--cdmm-size-copyright,.76rem);line-height:var(--cdmm-line-copyright,inherit);color:var(--cdmm-color-copyright,#796e60);text-align:var(--cdmm-align-copyright,right)}
.cdmm a:focus-visible{outline:3px solid #af7b31!important;outline-offset:4px}
.cdmm .cdmm-cover-unavailable{display:block;align-content:center;text-align:center;padding:22px;color:#796e60;font-size:.85rem;min-height:215px;line-height:1.5}
.cdmm .cdmm-cover-unavailable[hidden]{display:none!important}

/* Adaptation basée sur la largeur effective du widget Elementor, pas sur l'écran. */
@container (max-width:640px){
    .cdmm .cdmm-top{padding:var(--cdmm-pad-top-y,11px) var(--cdmm-pad-top-x,17px);gap:8px}
    .cdmm .cdmm-brand{font-size:var(--cdmm-size-brand,clamp(1.1rem,3.8cqw,1.5rem));letter-spacing:0;gap:8px}
    .cdmm .cdmm-mark{height:34px;width:34px;flex-basis:34px}
    .cdmm .cdmm-mark svg{width:21px;height:21px}
    .cdmm .cdmm-month{font-size:var(--cdmm-size-month,.77rem)}
    .cdmm .cdmm-inner{padding:var(--cdmm-pad-main-top,23px) var(--cdmm-pad-main-x,19px) var(--cdmm-pad-main-bottom,25px)}
    .cdmm .cdmm-layout{grid-template-columns:minmax(95px,135px) minmax(0,1fr);align-items:center;gap:var(--cdmm-gap-main,18px)}
    .cdmm h2.cdmm-title{font-size:var(--cdmm-size-title,clamp(1.2rem,4cqw,1.5rem))!important;margin-bottom:9px!important}
    .cdmm .cdmm-description{font-size:var(--cdmm-size-body,.93rem);line-height:var(--cdmm-line-body,1.62)}
    .cdmm .cdmm-bottom{padding:var(--cdmm-pad-bottom-y,11px) var(--cdmm-pad-bottom-x,16px);font-size:.71rem}
    .cdmm .cdmm-footer-left{gap:var(--cdmm-gap-footer,12px)}
    .cdmm .cdmm-copyright{font-size:var(--cdmm-size-copyright,.7rem)}.cdmm .cdmm-level{font-size:var(--cdmm-size-level,.7rem)}.cdmm .cdmm-official-link{font-size:var(--cdmm-size-button,.7rem)}
}
@container (max-width:390px){
    .cdmm .cdmm-inner{padding:var(--cdmm-pad-main-top,15px) var(--cdmm-pad-main-x,13px) var(--cdmm-pad-main-bottom,15px)}
    .cdmm .cdmm-layout{grid-template-columns:minmax(80px,108px) minmax(0,1fr);gap:var(--cdmm-gap-main,12px)}
    .cdmm .cdmm-image-frame{min-height:145px}
    .cdmm .cdmm-image{max-height:190px}
    .cdmm .cdmm-description{font-size:var(--cdmm-size-body,.85rem);line-height:var(--cdmm-line-body,1.52)}
    .cdmm .cdmm-brand{font-size:var(--cdmm-size-brand,1.04rem)}
}
@container (max-width:280px){
    .cdmm .cdmm-layout{grid-template-columns:1fr;gap:12px}
    .cdmm .cdmm-cover{max-width:105px;margin:0 auto!important}
    .cdmm .cdmm-brand{font-size:var(--cdmm-size-brand,.95rem)}
    .cdmm .cdmm-top{padding:var(--cdmm-pad-top-y,10px) var(--cdmm-pad-top-x,10px)}
    .cdmm .cdmm-bottom{padding:var(--cdmm-pad-bottom-y,9px) var(--cdmm-pad-bottom-x,9px)}
}
@media (max-width:640px){
    .cdmm .cdmm-top{gap:8px}
    .cdmm .cdmm-brand{letter-spacing:0}
}
