:root{
    --bg:#07090d; --panel:#0d1117; --line:#1c232e; --line-soft:#151b24;
    --txt:#dbe3ee; --dim:#7b8798; --mono:'IBM Plex Mono',ui-monospace,monospace;
    --sans:'Inter',system-ui,sans-serif; --amber:#e0a63a; --amber-dim:#5a4520;
    --green:#3fb96b; --red:#d2544a;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  body{background:var(--bg);color:var(--txt);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased}
  .wrap{max-width:1080px;margin:0 auto;padding:0 20px}

  .topbar{border-bottom:1px solid var(--line);background:var(--panel)}
  .topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 20px;max-width:1080px;margin:0 auto}
  .logo{font-family:var(--mono);font-size:15px;font-weight:600;letter-spacing:.02em}
  .logo em{color:var(--amber);font-style:normal}
  .badge{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;
    color:var(--amber);border:1px solid var(--amber-dim);background:rgba(224,166,58,.07);
    padding:5px 10px;border-radius:3px;white-space:nowrap}
  .badge .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--amber);margin-right:7px;vertical-align:1px}

  .notice{border-bottom:1px solid var(--line);background:rgba(224,166,58,.04)}
  .notice p{font-family:var(--mono);font-size:12px;color:var(--amber);padding:10px 20px;max-width:1080px;margin:0 auto}

  main{padding:36px 0 56px}
  h1{font-size:26px;font-weight:700;letter-spacing:-.01em;margin-bottom:8px}
  .sub{color:var(--dim);font-size:14px;margin-bottom:28px;max-width:70ch}
  h2{font-size:13px;font-family:var(--mono);font-weight:600;letter-spacing:.1em;
    text-transform:uppercase;color:var(--dim);margin:40px 0 14px;
    padding-bottom:8px;border-bottom:1px solid var(--line-soft)}

  .prints{display:grid;gap:10px}
  .print{border:1px solid var(--line);background:var(--panel);border-radius:4px;padding:16px 18px}
  .print-top{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}
  .print-label{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.09em;color:var(--dim)}
  .print-val{font-family:var(--mono);font-size:24px;font-weight:600;letter-spacing:-.01em}
  .print-qual{font-size:12px;color:var(--dim);margin-top:6px}
  .fields{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line-soft)}
  .f{font-family:var(--mono);font-size:10.5px;color:var(--dim);
    border:1px solid var(--line);border-radius:3px;padding:3px 7px;white-space:nowrap}
  .f b{color:var(--txt);font-weight:500}
  .f a{color:var(--txt);text-decoration:none;border-bottom:1px dotted var(--dim)}
  .c-high{color:var(--green)} .c-medium{color:var(--amber)} .c-low{color:var(--red)}

  .excl{border:1px solid var(--line);border-radius:4px;background:var(--panel);padding:16px 18px}
  .excl ul{list-style:none} .excl li{font-family:var(--mono);font-size:12px;color:var(--dim);padding:5px 0 5px 18px;position:relative}
  .excl li::before{content:'×';position:absolute;left:0;color:var(--red);font-weight:600}

  .schema{font-family:var(--mono);font-size:11.5px;color:var(--dim);
    border:1px solid var(--line);border-radius:4px;background:var(--panel);
    padding:14px 18px;overflow-x:auto;white-space:nowrap}
  .schema b{color:var(--amber);font-weight:500}

  .state{font-family:var(--mono);font-size:12px;color:var(--dim);padding:18px;border:1px dashed var(--line);border-radius:4px}
  .state.err{color:var(--red);border-color:var(--red)}

  footer{border-top:1px solid var(--line);background:var(--panel);margin-top:48px}
  .foot-inner{max-width:1080px;margin:0 auto;padding:22px 20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
  footer p{font-size:12px;color:var(--dim);max-width:62ch}
  footer nav a{font-size:12px;color:var(--dim);text-decoration:none;margin-left:16px;border-bottom:1px solid transparent}
  footer nav a:hover{color:var(--txt);border-bottom-color:var(--line)}
  @media(max-width:560px){footer nav a{margin:0 16px 0 0}.print-val{font-size:20px}}

  /* ---------- sélecteur de langue ---------- */
  .lang{display:flex;align-items:center;gap:0;border:1px solid var(--line);border-radius:3px;overflow:hidden;flex:none}
  .lang a{font-family:var(--mono);font-size:11px;color:var(--dim);text-decoration:none;
    padding:4px 8px;border-right:1px solid var(--line);line-height:1.4;transition:color .15s,background .15s}
  .lang a:last-child{border-right:0}
  .lang a:hover{color:var(--txt);background:var(--line-soft)}
  .lang a.active{color:var(--amber);background:rgba(224,166,58,.08)}
  .topbar-inner nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
  .topbar-inner nav a{font-size:12px;color:var(--dim);text-decoration:none;border-bottom:1px solid transparent}
  .topbar-inner nav a:hover{color:var(--txt);border-bottom-color:var(--line)}

  /* ---------- RTL ---------- */
  [dir="rtl"] .badge .dot{margin-right:0;margin-left:7px}
  [dir="rtl"] .excl li{padding:5px 18px 5px 0}
  [dir="rtl"] .excl li::before{left:auto;right:0}
  [dir="rtl"] .lang a{border-right:0;border-left:1px solid var(--line)}
  [dir="rtl"] .lang a:last-child{border-left:0}
  [dir="rtl"] footer nav a{margin-left:0;margin-right:16px}
  [dir="rtl"] .print-val,[dir="rtl"] .schema,[dir="rtl"] .f{direction:ltr;text-align:left}

  @media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
