/* ASI Journal — lecture sur le site (effet papier journal) */
.asi-reader{--ink:#141414;--paper:#EFE8D6;--green:#16833B;--stamp:#1F3E8C;max-width:980px;margin:0 auto;color:var(--ink);font-family:Georgia,"Times New Roman",Times,serif;line-height:1.35;box-sizing:border-box}
.asi-reader *,.asi-reader *::before,.asi-reader *::after{box-sizing:border-box}
.asi-reader p{margin:0}
.asi-reader button,.asi-reader .asi-btn{font:600 13px/1 Arial,Helvetica,sans-serif;padding:9px 12px;border:1px solid #2b2b2b;background:#fbf8ef;color:#141414;border-radius:3px;cursor:pointer;text-decoration:none;display:inline-block}
.asi-reader button:hover,.asi-reader .asi-btn:hover{background:#141414;color:#fbf8ef}
.asi-reader .asi-btn{background:var(--green);border-color:var(--green);color:#fff}
.asi-reader .asi-btn:hover{background:#0f6a2e;border-color:#0f6a2e;color:#fff}

/* Barre d'outils */
.asi-bar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;padding:10px 12px;margin-bottom:14px;background:#1b1b1b;color:#f4efe0;border-radius:4px;font:13px Arial,Helvetica,sans-serif;position:sticky;top:0;z-index:20}
.asi-bar a{color:#f4efe0}
.asi-bar-nav{display:flex;align-items:center;gap:10px}
.asi-bar-nav button{padding:7px 14px;font-size:18px}
.asi-bar-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.asi-bar-act a:not(.asi-btn){font-size:13px}

/* Feuille de journal */
.asi-book{perspective:1800px}
.asi-sheet{container-type:inline-size;position:relative;width:100%;aspect-ratio:1/1.4142;margin:0 0 26px;padding:0;
 background-color:var(--paper);
 background-image:
  radial-gradient(ellipse at 50% 50%,rgba(255,255,255,.28),rgba(255,255,255,0) 60%),
  url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' seed='4'/><feColorMatrix values='0 0 0 0 .35  0 0 0 0 .28  0 0 0 0 .15  0 0 0 .16 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
 box-shadow:inset 0 0 70px rgba(120,90,30,.28),inset 0 0 6px rgba(80,60,20,.35),0 6px 22px rgba(0,0,0,.28),0 1px 3px rgba(0,0,0,.4);
 border-radius:2px;display:flex;flex-direction:column;overflow:hidden}
.asi-sheet::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.10),rgba(0,0,0,0) 4%,rgba(0,0,0,0) 96%,rgba(0,0,0,.08))}
.asi-topbar{height:1.1cqw;background:var(--green);margin:5.7cqw 5.7cqw 0}
.asi-content{flex:1 0 auto;padding:1.6cqw 5.7cqw 1.4cqw}
.asi-book[data-mode=flip] .asi-sheet{display:none;margin-bottom:0}
.asi-book[data-mode=flip] .asi-sheet.is-current{display:flex}
.asi-book[data-mode=flip] .asi-sheet.turn-next{animation:asiNext .55s ease-out}
.asi-book[data-mode=flip] .asi-sheet.turn-prev{animation:asiPrev .55s ease-out}
@keyframes asiNext{from{transform:rotateY(-62deg);transform-origin:left center;opacity:.2}to{transform:none;opacity:1}}
@keyframes asiPrev{from{transform:rotateY(62deg);transform-origin:right center;opacity:.2}to{transform:none;opacity:1}}
.asi-sheet{overflow:visible}
.asi-sheet::before{content:"";position:absolute;inset:0;border-radius:2px;pointer-events:none}

/* Titres et textes */
.asi-kicker{display:block;font:700 max(9px,1.25cqw)/1 Arial,Helvetica,sans-serif;letter-spacing:.16em;color:var(--green);text-transform:uppercase;margin:0 0 .8cqw}
.asi-title{margin:0 0 .5cqw;font:700 max(17px,2.9cqw)/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.01em}
.asi-title.big{font-size:max(26px,5cqw);border-bottom:1px solid var(--ink);padding-bottom:1.2cqw;margin-bottom:1.8cqw}
.asi-by{font:max(10px,1.3cqw)/1.2 Arial,Helvetica,sans-serif;color:#444;margin:0 0 1cqw;letter-spacing:.02em}
.asi-body{font-size:max(14px,1.72cqw);line-height:1.36;text-align:justify;hyphens:auto;-webkit-hyphens:auto;column-count:var(--cols,1);column-gap:2.2cqw;column-rule:1px solid rgba(0,0,0,.35)}
.asi-body p{margin:0;text-indent:1.2em}
.asi-body p:first-child{text-indent:0}
.asi-body p:first-child::first-letter{font-size:2.3em;float:left;line-height:.85;padding:.06em .08em 0 0;font-weight:700}
.asi-more{display:inline-block;margin-top:1cqw;font:700 max(10px,1.3cqw) Arial,Helvetica,sans-serif;color:var(--green);text-decoration:none}
.asi-more:hover{text-decoration:underline}
.asi-photo{margin:0 0 1.2cqw;border:1px solid var(--ink);background:#ccc;aspect-ratio:3/2;overflow:hidden}
.asi-photo.big{aspect-ratio:auto;margin:0;border-width:1px}
.asi-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(.3) sepia(.22) contrast(1.06);mix-blend-mode:multiply;transition:filter .3s}
.asi-photo:hover img{filter:none;mix-blend-mode:normal}
.asi-box{border:1px solid var(--ink);border-top:.9cqw solid var(--green);padding:1.6cqw 1.8cqw;margin-bottom:1.6cqw;font-size:max(13px,1.6cqw)}
.asi-box p{margin:0 0 .6em}
.asi-box blockquote{margin:0;font-style:italic;font-size:max(16px,2.2cqw);line-height:1.3}
.asi-box cite{display:block;text-align:right;font:700 max(10px,1.3cqw) Arial,sans-serif;color:var(--green);margin-top:1.2cqw;font-style:normal}
.asi-list{margin:0;padding:0;list-style:none}
.asi-list li{padding-left:1.2em;position:relative;margin:0 0 .5em}
.asi-list li::before{content:"•";position:absolute;left:0;color:var(--green);font-weight:700}

/* Bandeau */
.asi-mast{display:flex;justify-content:space-between;align-items:flex-end;margin:4.6cqw 5.7cqw 0;padding:1.3cqw 0 1cqw;border-top:1.1cqw solid var(--green);border-bottom:3px double var(--ink);gap:2cqw}
.asi-mast-l{display:flex;align-items:center;gap:1.6cqw}
.asi-logo{width:max(34px,6cqw);height:max(34px,6cqw);object-fit:contain;flex:none}
.asi-logo-fallback{display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--green);color:#fff;font:700 max(11px,1.8cqw) Arial,sans-serif}
.asi-mast-name{font:700 max(15px,3.2cqw)/1 Georgia,"Times New Roman",serif;letter-spacing:.005em;text-transform:uppercase}
.asi-mast-motto{font:700 max(7px,1.05cqw) Arial,sans-serif;letter-spacing:.16em;color:var(--green);margin-top:.4cqw}
.asi-mast-r{text-align:right;font:max(9px,1.3cqw)/1.5 Arial,sans-serif;color:#333}
.asi-mast-r b{display:block;color:var(--green);letter-spacing:.14em;font-size:max(9px,1.3cqw)}
.asi-topbar+.asi-content{padding-top:1cqw}

/* Une */
.asi-cover-head{display:flex;align-items:center;gap:2.4cqw;padding:2cqw 0 1.4cqw;border-bottom:3px double var(--ink)}
.asi-cover-logo .asi-logo{width:max(60px,13cqw);height:max(60px,13cqw)}
.asi-cover-name{flex:1;text-align:center}
.asi-cover-name h2{margin:0;font:700 max(20px,4.4cqw)/1 Georgia,"Times New Roman",serif;text-transform:uppercase}
.asi-ed{font:max(8px,1.25cqw) Arial,sans-serif;letter-spacing:.14em;margin-top:.8cqw}
.asi-ear{border:1px solid var(--ink);outline:1px solid var(--ink);outline-offset:3px;padding:1cqw 1.6cqw;text-align:center;font-family:Arial,sans-serif;min-width:max(88px,16cqw)}
.asi-ear span{display:block;font-size:max(7px,1.05cqw);letter-spacing:.2em;color:var(--green);font-weight:700}
.asi-ear b{display:block;font:700 max(20px,4.3cqw)/1.1 Georgia,serif}
.asi-ear i{display:block;font-size:max(9px,1.3cqw);font-weight:700;font-style:normal}
.asi-ear small{display:block;font-size:max(7px,1cqw);color:#555;margin-top:.3cqw}
.asi-dateline{display:flex;justify-content:space-between;gap:2cqw;font:max(9px,1.3cqw) Georgia,serif;padding:.9cqw 0;border-bottom:1px solid var(--ink);margin-bottom:1.6cqw}
.asi-dateline em{color:#444;text-align:center}
.asi-headline{margin:0 0 .8cqw;font:700 max(24px,5.2cqw)/1.05 Georgia,"Times New Roman",serif;letter-spacing:-.015em}
.asi-sub{font-style:italic;font-size:max(14px,2cqw);color:#333;margin:0 0 1.6cqw}
.asi-cover-mid{display:grid;grid-template-columns:1fr 26cqw;gap:2cqw;margin-bottom:1.2cqw;align-items:stretch}
.asi-cover-mid:not(:has(.asi-photo)){grid-template-columns:1fr}
.asi-cover-mid .asi-photo{min-height:24cqw}
.asi-toc{list-style:none;margin:0;padding:0}
.asi-toc li{display:flex;justify-content:space-between;border-bottom:1px dotted #777;padding:.9cqw 0;font-weight:700}
.asi-toc a{color:inherit;text-decoration:none}
.asi-toc b{color:var(--green);font-family:Arial,sans-serif}

/* Accréditation, signature, cachet */
.asi-accred{display:grid;grid-template-columns:1.1fr 1fr 12cqw;gap:2.4cqw;align-items:center;border-top:3px double var(--ink);margin-top:2cqw;padding-top:1.6cqw}
.asi-accred-txt em{display:block;color:#444}
.asi-signer{display:block;font:700 max(18px,3.4cqw)/1.1 Georgia,serif}
.asi-accred-txt small{display:block;font:700 max(8px,1.1cqw) Arial,sans-serif;letter-spacing:.1em;color:#555;margin-top:.8cqw}
.asi-accred-txt p{margin:1cqw 0 0;font-size:max(12px,1.5cqw)}
.asi-sig{text-align:center}
.asi-sig-text{font:italic max(20px,3.6cqw)/1.1 Georgia,serif;color:#1B2A6B;transform:rotate(-3deg)}
.asi-sig-img{max-width:100%;max-height:9cqw;display:block;margin:0 auto}
.asi-sig-line{border-top:1px solid var(--ink);margin:.6cqw 0 .6cqw}
.asi-sig strong{display:block;font-size:max(11px,1.5cqw)}
.asi-sig em{color:#333;font-size:max(10px,1.4cqw)}
.asi-seal-wrap{text-align:center}
.asi-seal-wrap small{display:block;font:max(8px,1.1cqw) Arial,sans-serif;color:#555;margin-top:.5cqw}
.asi-seal{width:100%;max-width:max(78px,14cqw);height:auto;display:block;margin:0 auto;mix-blend-mode:multiply;opacity:.92}
.asi-accred.big{grid-template-columns:1fr 1.1fr 16cqw;border:1px solid var(--ink);border-top:1.1cqw solid var(--green);padding:2.4cqw;margin-top:3cqw;outline:1px solid var(--ink);outline-offset:-5px}

/* Grille d'articles */
.asi-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-flow:row dense}
.asi-cell{grid-column:span var(--span,3);grid-row:var(--row,auto);padding:1.6cqw 1.6cqw 2.2cqw;border-bottom:1px solid var(--ink);min-width:0}
.asi-cell.c0{padding-left:0;border-left:0!important}
.asi-cell.cr{padding-right:0}
.asi-cell:last-child,.asi-cell:only-child{border-bottom:0}
.asi-cell+.asi-cell{border-left:1px solid var(--ink)}
.asi-cell[style*="--row:2"]{border-bottom:0}

/* Éditorial */
.asi-ed-grid{display:grid;grid-template-columns:1fr 26cqw;gap:2.4cqw;margin-bottom:1.6cqw}
.asi-signoff{text-align:right;margin-top:2cqw}
.asi-signoff em{display:inline-block;border-top:1px solid var(--ink);padding-top:.6cqw;font-size:max(15px,2.2cqw)}
.asi-signoff small{display:block;font:700 max(8px,1.1cqw) Arial,sans-serif;letter-spacing:.12em;color:#444;margin-top:.5cqw}
.asi-ed-boxes{display:grid;grid-template-columns:1.7fr 1fr;gap:2cqw}

/* Dos */
.asi-ours{display:grid;grid-template-columns:1fr 1.4fr;gap:3cqw;margin-bottom:2.4cqw}
.asi-member{margin:0 0 1.2cqw}
.asi-member strong{display:block;font-size:max(14px,1.9cqw)}
.asi-member em{color:#444;font-size:max(12px,1.5cqw)}

/* Jeux */
.asi-games{display:flex;flex-direction:column;gap:2.4cqw}
.asi-games-row{display:grid;grid-template-columns:1fr 1fr;gap:3cqw}
.asi-ghead{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ink);margin-bottom:1.4cqw;padding-bottom:.6cqw}
.asi-ghead h3{margin:0;font:700 max(11px,1.35cqw) Arial,sans-serif;letter-spacing:.16em;color:var(--green)}
.asi-ghead i{font-size:max(10px,1.3cqw);color:#444}
.asi-note{font-style:italic;font-size:max(11px,1.35cqw);color:#333;margin:1cqw 0}
.asi-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:1.2cqw}
.asi-score{font:700 max(12px,1.6cqw) Arial,sans-serif;color:var(--green);min-height:1.2em;margin-top:.8cqw}
.asi-cw-wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2.4cqw;align-items:start}
.asi-cw-grid{display:grid;grid-template-columns:repeat(var(--n),1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink);width:100%;max-width:100%}
.asi-cw-grid .c{position:relative;aspect-ratio:1;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:#fbf8ee}
.asi-cw-grid .c.b{background:transparent;border-color:transparent}
.asi-cw-grid .c i{position:absolute;top:1px;left:2px;font:700 max(7px,.95cqw)/1 Arial,sans-serif;color:#222;pointer-events:none}
.asi-cw-grid input{width:100%;height:100%;border:0;background:transparent;text-align:center;text-transform:uppercase;font:700 max(11px,2.2cqw)/1 Arial,sans-serif;padding:0;color:#1B2A6B;caret-color:transparent;outline:none;border-radius:0}
.asi-cw-grid .c.hl{background:#f3e7a8}
.asi-cw-grid .c.cur{background:#f1d668}
.asi-cw-grid .c.ok input{color:#0c6b2a}
.asi-cw-grid .c.ko{background:#f2c2b8}
.asi-clues h4{margin:0 0 .5cqw;font:700 max(10px,1.2cqw) Arial,sans-serif;letter-spacing:.14em;color:var(--green);text-transform:uppercase}
.asi-clues ol{list-style:none;margin:0 0 1.4cqw;padding:0;font-size:max(12px,1.5cqw)}
.asi-clues li{cursor:pointer;padding:.25cqw 0}
.asi-clues li:hover,.asi-clues li.on{background:rgba(22,131,59,.14)}
.asi-sd-grid{display:grid;grid-template-columns:repeat(9,1fr);border:2px solid var(--ink);max-width:100%;background:#fbf8ee}
.asi-sd-grid .c{aspect-ratio:1;border-right:1px solid #777;border-bottom:1px solid #777}
.asi-sd-grid .c.rr{border-right:2px solid var(--ink)}
.asi-sd-grid .c.rb{border-bottom:2px solid var(--ink)}
.asi-sd-grid .c:nth-child(9n){border-right:0}
.asi-sd-grid .c:nth-last-child(-n+9){border-bottom:0}
.asi-sd-grid input{width:100%;height:100%;border:0;background:transparent;text-align:center;font:max(12px,2.4cqw)/1 Georgia,serif;padding:0;color:#1B2A6B;outline:none;border-radius:0}
.asi-sd-grid input.giv{color:#111;font-weight:700}
.asi-sd-grid input:focus{background:#f3e7a8}
.asi-sd-grid input.ko{background:#f2c2b8}
.asi-ws-grid{display:grid;grid-template-columns:repeat(var(--n),1fr);border:1px solid var(--ink);background:#fbf8ee;touch-action:none;user-select:none;-webkit-user-select:none}
.asi-ws-grid .w{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font:700 max(11px,1.9cqw) Arial,sans-serif;cursor:pointer}
.asi-ws-grid .w.sel{background:#f1d668}
.asi-ws-grid .w.found{background:rgba(22,131,59,.32)}
.asi-find{margin-top:1.6cqw}
.asi-find ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4cqw 2cqw;font:700 max(11px,1.4cqw) Arial,sans-serif}
.asi-find li.done{text-decoration:line-through;color:var(--green)}
.asi-quiz ol{margin:0;padding:0;list-style:none;counter-reset:q}
.asi-quiz li{counter-increment:q;margin-bottom:1.6cqw;font-size:max(13px,1.7cqw)}
.asi-quiz li strong::before{content:counter(q) ". ";color:var(--green)}
.asi-quiz .opts{display:flex;flex-wrap:wrap;gap:8px;margin-top:.8cqw}
.asi-quiz .opts button{font:600 max(12px,1.5cqw)/1.2 Georgia,serif;text-align:left}
.asi-quiz .opts button.ok{background:#1c8a44;color:#fff;border-color:#1c8a44}
.asi-quiz .opts button.ko{background:#b3372c;color:#fff;border-color:#b3372c}
.asi-morse-code{font:700 max(16px,2.6cqw)/1.5 "Courier New",monospace;letter-spacing:.1em;word-break:break-word;padding:1cqw 0}
.asi-morse-in{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font:600 max(12px,1.5cqw) Arial,sans-serif}
.asi-morse-in input{font:600 max(13px,1.7cqw) Georgia,serif;padding:8px;border:0;border-bottom:1px dashed var(--ink);background:transparent;min-width:12em;text-transform:uppercase}
.asi-morse-table{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(64px,11cqw),1fr));gap:4px;margin-top:1.4cqw;font:max(10px,1.3cqw) "Courier New",monospace}
.asi-morse-table span{background:#fbf8ee;border:1px solid #999;padding:3px 5px;text-align:center}
.asi-morse-table b{font-family:Arial,sans-serif;color:var(--green)}
.asi-solutions{border-top:1px dashed var(--ink);padding-top:1cqw;font:max(11px,1.4cqw) Arial,sans-serif}
.asi-solutions summary{cursor:pointer;font-weight:700;color:var(--green)}
.asi-sol-in{transform:rotate(180deg);display:flex;flex-wrap:wrap;gap:2cqw;margin-top:1.4cqw;font-size:max(10px,1.2cqw)}
.asi-sol-in h5{margin:0 0 .4cqw;font-size:inherit;letter-spacing:.1em;text-transform:uppercase}
.asi-sol-in pre{margin:0;font:max(9px,1.05cqw)/1.25 "Courier New",monospace}

/* Petits écrans : lecture sur une colonne */
@container (max-width:640px){
 .asi-body{column-count:1!important}
 .asi-grid{display:block}
 .asi-cell{border-left:0!important;padding-left:0!important;padding-right:0!important}
 .asi-cover-mid,.asi-ed-grid,.asi-ed-boxes,.asi-ours,.asi-games-row,.asi-cw-wrap,.asi-accred,.asi-accred.big{grid-template-columns:1fr}
 .asi-cover-head{flex-wrap:wrap;justify-content:center}
 .asi-mast-r{display:none}
 .asi-seal{max-width:110px}
 .asi-sheet{aspect-ratio:auto}
}
@media (max-width:700px){.asi-sheet{aspect-ratio:auto}.asi-bar{position:static}.asi-content{padding-left:4vw;padding-right:4vw}.asi-mast,.asi-topbar{margin-left:4vw;margin-right:4vw}.asi-foot{margin-left:4vw;margin-right:4vw}}

/* Pied de page */
.asi-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6cqw 2cqw;margin:0 5.7cqw 3.4cqw;padding-top:1cqw;border-top:1px solid var(--ink);font:max(8px,1.1cqw) Arial,sans-serif;color:#333}
.asi-foot em{font-family:Georgia,serif}
.asi-foot small{flex-basis:100%;text-align:center;color:#777;letter-spacing:.12em}

/* Impression navigateur */
@media print{
 .asi-bar,.asi-actions,.asi-more{display:none!important}
 .asi-book[data-mode=flip] .asi-sheet{display:flex!important}
 .asi-sheet{box-shadow:none;break-after:page;page-break-after:always;margin:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;aspect-ratio:1/1.4142}
}

/* Archive publique */
.asi-archive{background:var(--paper);padding:28px;box-shadow:0 6px 22px rgba(0,0,0,.2);border-top:7px solid var(--green)}
.asi-arch-head{border-bottom:3px double var(--ink);margin-bottom:22px;padding-bottom:10px}
.asi-arch-head .asi-mast-name{font-size:32px}
.asi-arch-head h2{margin:14px 0 0;font:700 22px Georgia,serif}
.asi-arch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:22px}
.asi-arch-card{border:1px solid var(--ink);padding:12px;background:rgba(255,255,255,.35)}
.asi-arch-card img,.asi-arch-ph{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:grayscale(.3) sepia(.2);background:var(--green);color:#fff;text-align:center;line-height:150px;font:700 40px Georgia,serif}
.asi-arch-card h3{margin:8px 0 10px;font:700 18px/1.15 Georgia,serif}
.asi-arch-card h3 a{color:inherit;text-decoration:none}
.asi-arch-card .asi-kicker{margin-top:10px}
.asi-arch-card .asi-btn{margin-right:10px}
.asi-arch-card a:not(.asi-btn){color:var(--green);font:700 13px Arial,sans-serif}
