/* Évaluation des prérequis — 6ème année — shared sheet styling.
   Used by index.html and every component page in this folder. */

:root{
  --paper:#fbf9f3;
  --deck:#eef1e9;
  --ink:#232722;
  --ink-soft:#565b52;
  --line:#b7ad95;
  --header-bg:#d3ecf4;
  --header-border:#5f9bb3;
  --accent:#0d6d8c;
  --accent-deep:#0a5570;
  --crit-bg:#eaf5f8;
  --crit-border:#8fc3d4;
  --intro-bg:#e4f2f6;
  --intro-border:#9bc9d8;
  --danger:#a44a3f;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--deck);
  color:var(--ink);
  font-family:'Literata',Georgia,'Times New Roman',serif;
  padding-block:22px;
  padding-left:16px;
  padding-right:16px;
}

/* ---------- lightweight topbar (screen only, matches other outils-enseignant tools) ---------- */
.topbar{
  max-width:210mm;margin:0 auto 16px;background:var(--paper);border:1px solid var(--line);border-radius:10px;
  padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  font-family:'Work Sans',sans-serif;
}
.topbar .tb-left{display:flex;align-items:center;gap:10px;min-width:0;}
.topbar .tb-back{
  font-weight:600;font-size:13px;text-decoration:none;color:var(--accent-deep);
  background:var(--crit-bg);border:1px solid var(--crit-border);border-radius:7px;padding:7px 11px;white-space:nowrap;
}
.topbar .tb-back:hover{background:var(--intro-bg);}
.topbar .tb-title{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.topbar .tb-actions{display:flex;gap:8px;flex-wrap:wrap;}
.tb-btn{
  font-family:'Work Sans',sans-serif;font-weight:600;font-size:13px;border:1px solid var(--accent);
  background:var(--accent);color:#fff;padding:8px 14px;border-radius:7px;cursor:pointer;
  text-decoration:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
}
.tb-btn:hover{background:var(--accent-deep);}
.tb-btn.ghost{background:#fff;color:var(--accent-deep);}
.tb-btn.ghost:hover{background:var(--crit-bg);}
.tb-status{font-family:'Work Sans',sans-serif;font-size:11.5px;color:var(--ink-soft);max-width:210mm;margin:-6px auto 14px;text-align:right;padding-right:4px;min-height:14px;}

/* ---------- sheet (A4 page) ---------- */
.sheet{
  width:210mm;min-height:297mm;margin:0 auto 26px;background:var(--paper);padding:13mm 11mm 12mm;position:relative;
  box-shadow:0 1px 3px rgba(20,15,5,.14),0 10px 26px rgba(20,15,5,.10);font-size:13.5px;line-height:1.55;
}

/* ---------- header block reused from the master evaluation ---------- */
.hdr{display:flex;border:1.4px solid var(--ink);margin-bottom:6mm;min-height:56px;}
.hdr .subj,.hdr .idbox{
  flex:0 0 25%;background:var(--header-bg);border-right:1.4px solid var(--ink);display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;font-family:'Work Sans',sans-serif;font-weight:700;
  font-size:12.5px;line-height:1.4;padding:6px 8px;
}
.hdr .idbox{align-items:flex-start;text-align:left;font-weight:500;font-size:11.5px;gap:4px;}
.hdr .title{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6px 10px;font-family:'Literata',serif;}
.hdr .title .t1{font-size:16.5px;font-weight:700;}
.hdr .title .t2{font-size:16.5px;font-weight:700;}
.hdr .meta{flex:0 0 30%;background:var(--header-bg);border-left:1.4px solid var(--ink);display:flex;flex-direction:column;justify-content:center;gap:3px;padding:6px 10px;font-family:'Work Sans',sans-serif;font-size:11px;}

.intro{background:var(--intro-bg);border:1.2px solid var(--intro-border);border-radius:4px;padding:12px 14px;margin-bottom:8mm;font-size:13.5px;line-height:1.6;}
.intro p{margin:0 0 6px;}
.intro p:last-child{margin-bottom:0;}

h2.section{font-family:'Literata',serif;font-style:italic;font-weight:600;font-size:16px;margin:0 0 10px;}
h2.section.plain{font-style:normal;text-decoration:underline;text-underline-offset:3px;}

.q{display:flex;gap:10px;align-items:flex-start;margin:11px 0;}
.q .qmain{flex:1;min-width:0;}
.q .qnum{font-family:'Work Sans',sans-serif;font-weight:700;color:var(--accent-deep);font-size:13.5px;}
.q .qtext{font-weight:600;}
.q .qtext.reg{font-weight:400;}
.q .qcrit{flex:0 0 34px;display:flex;flex-direction:column;gap:4px;align-items:center;padding-top:2px;}
.crit{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:17px;padding:0 4px;border:1px solid var(--crit-border);border-radius:3px;background:var(--crit-bg);font-family:'Work Sans',sans-serif;font-size:10px;font-weight:700;color:var(--accent-deep);}
.aline{border-bottom:1px dotted var(--line);display:block;height:19px;}
.branch{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;margin:6px 0 2px;}
.branch .stem{font-size:13px;padding-top:3px;}
.branch .opts{display:flex;flex-direction:column;gap:5px;}
.branch .opts .opt-line{display:flex;align-items:center;gap:6px;font-family:'Work Sans',sans-serif;font-size:12.5px;}
.vf-box{display:inline-block;width:34px;height:18px;border:1.3px solid var(--ink);margin-left:6px;vertical-align:middle;}
.box-choice{display:inline-block;padding:3px 10px;border:1.4px solid var(--ink);border-radius:3px;font-family:'Work Sans',sans-serif;font-size:13px;margin-right:8px;}

.fill-block{display:flex;gap:14px;margin:8px 0;}
.fill-block .bank{flex:0 0 30%;font-family:'Work Sans',sans-serif;font-size:12.5px;border-left:3px solid var(--accent);padding-left:10px;color:var(--ink-soft);line-height:1.9;}
.fill-block .passage{flex:1;font-size:13.5px;line-height:2.05;}
.blank{border-bottom:1.4px dotted var(--ink-soft);padding:0 3px;}
.bankline{font-family:'Work Sans',sans-serif;font-size:13px;text-align:center;border:1.3px solid var(--ink);border-radius:4px;padding:8px 10px;margin-bottom:8px;}

.footer-score{margin-top:8mm;padding-top:6px;border-top:1.3px solid var(--ink);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.footer-score .tot{font-family:'Work Sans',sans-serif;font-size:12.5px;display:flex;align-items:center;gap:8px;}
.footer-score .tot .box{border:1.3px solid var(--ink);border-radius:3px;padding:2px 8px;font-weight:700;min-width:44px;text-align:center;}
.lisi-note{font-family:'Work Sans',sans-serif;font-size:11.5px;color:var(--ink-soft);margin-top:4px;}

table.maitrise{width:100%;border-collapse:collapse;margin-top:8mm;font-family:'Work Sans',sans-serif;font-size:11.5px;}
table.maitrise th,table.maitrise td{border:1.2px solid var(--ink);padding:6px 7px;text-align:center;}
table.maitrise th{background:var(--header-bg);font-weight:700;}
table.maitrise td.lbl{text-align:left;font-weight:500;}
table.maitrise th.rowlabel{text-align:left;}

.remarque{font-family:'Work Sans',sans-serif;font-size:12px;color:var(--ink-soft);margin-top:8mm;line-height:1.6;border-top:1px solid var(--line);padding-top:8px;}
.remarque b{color:var(--ink);}

/* ---------- oral image pages ---------- */
.oral-img{width:100%;border:1.3px solid var(--ink);border-radius:4px;display:block;}
.consigne-box{background:var(--intro-bg);border:1.2px solid var(--intro-border);border-radius:4px;padding:10px 14px;margin:10px 0;font-size:13.5px;line-height:1.55;}
.consigne-box .lbl,.answer-box .lbl{font-family:'Work Sans',sans-serif;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-deep);margin-bottom:5px;display:block;}
.answer-box{background:#fff;border:1.3px solid var(--ink);border-radius:4px;padding:12px 14px;margin-top:9px;font-size:13.3px;line-height:1.7;}
.answer-box .dial{margin-top:6px;font-family:'Work Sans',sans-serif;font-size:13px;line-height:1.85;}
.instr-list{margin:6px 0 0;padding-left:19px;}
.instr-list li{margin:7px 0;}
.instr-list b{color:var(--accent-deep);}
.lex-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px;}
.lex-card{border:1.2px solid var(--crit-border);background:var(--crit-bg);border-radius:4px;padding:9px 11px;font-family:'Work Sans',sans-serif;font-size:11.8px;line-height:1.65;color:var(--ink);}
.lex-card .lbl{font-family:'Work Sans',sans-serif;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-deep);margin-bottom:4px;display:block;}
.img-eyebrow{font-family:'Work Sans',sans-serif;font-weight:700;font-size:12px;letter-spacing:.04em;color:var(--accent-deep);text-transform:uppercase;margin:0 0 6px;}

/* ---------- lecture vocale / lecture texte ---------- */
.vocale-title{text-align:center;font-weight:700;font-size:17px;margin:2mm 0 10mm;}
.vocale-text p{font-size:15.5px;line-height:2.05;margin:0 0 13px;text-indent:26px;}
.vocale-attrib{text-align:right;font-weight:700;font-family:'Work Sans',sans-serif;font-size:12px;margin-top:6px;}
.vocale-crit{position:absolute;right:14mm;bottom:16mm;display:flex;gap:8px;}
.lect-title{text-align:center;font-weight:700;font-size:17px;margin:2mm 0 8mm;}
.lect-text p{margin:0 0 10px;text-indent:26px;font-size:13.8px;}
.lect-attrib{text-align:right;font-weight:700;font-family:'Work Sans',sans-serif;font-size:12px;margin-top:10px;}

/* ---------- dictée ---------- */
.dictee-box{border:1.3px solid var(--ink);border-radius:4px;padding:16px 18px;min-height:220px;font-size:14.5px;line-height:2.3;}
.word-sheet-tag{display:inline-block;font-family:'Work Sans',sans-serif;font-size:10.5px;font-weight:700;color:var(--accent-deep);background:var(--crit-bg);border:1px solid var(--crit-border);border-radius:3px;padding:2px 8px;letter-spacing:.03em;text-transform:uppercase;margin-bottom:10px;}
.word-bank{font-size:16px;line-height:2.2;text-align:center;border:1.3px solid var(--ink);border-radius:6px;padding:20px;margin-top:14px;}

/* ---------- production écrite ---------- */
.pe-item{display:flex;flex-direction:column;gap:8px;margin:10px 0 16px;}
.pe-sketch{border:1.3px solid var(--ink);border-radius:4px;overflow:hidden;background:#fff;line-height:0;}
.pe-sketch img{display:block;width:100%;height:auto;}
.pe-lines{display:flex;flex-direction:column;gap:12px;padding-top:2px;}
.pe-instr{font-weight:600;margin:14px 0 4px;font-size:13.8px;}

/* ---------- hub index cards ---------- */
.hub-wrap{max-width:1040px;margin:0 auto;}
.hub-intro{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin-bottom:20px;font-family:'Work Sans',sans-serif;}
.hub-intro h1{font-family:'Literata',serif;font-size:24px;margin:0 0 6px;}
.hub-intro p{margin:0;color:var(--ink-soft);font-size:13.5px;line-height:1.6;}
.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;}
.hub-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;}
.hub-card .thumb{aspect-ratio:16/10;background:var(--crit-bg);overflow:hidden;display:flex;align-items:center;justify-content:center;}
.hub-card .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.hub-card .thumb .ic{font-size:34px;opacity:.55;}
.hub-card .body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px;flex:1;font-family:'Work Sans',sans-serif;}
.hub-card .num{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-deep);}
.hub-card h3{margin:0;font-size:14.5px;font-family:'Literata',serif;font-weight:700;color:var(--ink);}
.hub-card p{margin:0;font-size:12px;color:var(--ink-soft);line-height:1.5;flex:1;}
.hub-card .actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px;}
.hub-btn{font-family:'Work Sans',sans-serif;font-weight:600;font-size:11.5px;padding:6px 10px;border-radius:6px;border:1px solid var(--accent);background:var(--accent);color:#fff;text-decoration:none;cursor:pointer;}
.hub-btn.ghost{background:#fff;color:var(--accent-deep);}
.hub-btn.ghost:hover{background:var(--crit-bg);}
.hub-btn:hover{background:var(--accent-deep);}
.hub-section-label{font-family:'Work Sans',sans-serif;font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-deep);margin:22px 0 10px;}

/* ---------- corrigé (answer key) markup ---------- */
.corr{color:#b3261e;font-weight:700;font-style:italic;}
.corrige-flag{
  position:absolute;top:8mm;right:8mm;background:#b3261e;color:#fff;font-family:'Work Sans',sans-serif;
  font-weight:700;font-size:11px;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;border-radius:4px;
  transform:rotate(4deg);box-shadow:0 2px 6px rgba(0,0,0,.18);
}
.gns{border:1.6px solid #b3261e;border-radius:3px;padding:0 3px;}
.gv{text-decoration:underline;text-decoration-color:#b3261e;text-decoration-thickness:2px;}
.nom-c{color:#1b7a3d;font-weight:700;}
.nom-p{color:#b3261e;font-weight:700;}
.modele-badge{
  display:inline-block;font-family:'Work Sans',sans-serif;font-weight:700;font-size:11px;letter-spacing:.05em;
  text-transform:uppercase;color:#fff;background:var(--accent);padding:3px 10px;border-radius:4px;margin-bottom:8px;
}
.eleve-txt{font-style:normal;color:var(--ink);}
.strike{text-decoration:line-through;text-decoration-color:#b3261e;color:#8b8378;}
.fix{color:#b3261e;font-weight:700;font-style:italic;}
table.maitrise td.hit{background:#fde8e6;font-weight:800;color:#b3261e;text-align:center;}
.appr-box{background:var(--crit-bg);border:1.2px solid var(--crit-border);border-radius:6px;padding:10px 14px;margin-top:10px;font-size:13px;line-height:1.55;}
.appr-box .lbl{font-family:'Work Sans',sans-serif;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-deep);margin-bottom:4px;display:block;}

@media print{
  body{background:#fff;padding:0;}
  .topbar,.tb-status,.hub-intro,.hub-section-label{display:none;}
  .sheet{box-shadow:none;margin:0;width:auto;min-height:auto;}
}
