:root{
  --bg:#050816;
  --bg2:#0b1120;
  --panel:#101827;
  --panel2:#0f172a;
  --panel3:#111c2f;
  --text:#e5e7eb;
  --muted:#9aa8bd;
  --muted2:#64748b;
  --line:#2b3a50;
  --line2:#1e293b;
  --blue:#2563eb;
  --blue2:#60a5fa;
  --gold:#d6a94a;
  --green:#16a34a;
  --orange:#f59e0b;
  --red:#dc2626;
  --shadow:0 24px 80px rgba(0,0,0,.38);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 20% 0%,rgba(37,99,235,.24),transparent 34%),radial-gradient(circle at 80% 10%,rgba(214,169,74,.14),transparent 28%),linear-gradient(135deg,#020617,#0b1120 48%,#111827);color:var(--text);font-family:Arial,Helvetica,sans-serif;min-height:100vh;line-height:1.5}
a{color:#93c5fd;text-decoration:none}a:hover{text-decoration:underline}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 24px;border-bottom:1px solid rgba(148,163,184,.18);background:rgba(2,6,23,.88);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-weight:800;text-decoration:none}.brand:hover{text-decoration:none}.brand img{width:42px;height:54px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(0,0,0,.45))}.brand span{display:flex;flex-direction:column;line-height:1.1}.brand small{font-size:12px;color:var(--muted);font-weight:600;margin-top:4px}.topbar nav{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.topbar nav a{color:#cbd5e1;font-size:14px;border:1px solid transparent;border-radius:999px;padding:8px 10px}.topbar nav a:hover{background:rgba(148,163,184,.1);border-color:rgba(148,163,184,.18);text-decoration:none}.topbar nav a.nav-logout{color:#fecaca}
.container{max-width:1180px;margin:0 auto;padding:30px 18px}.public-page .container{max-width:1220px}.footer{padding:24px;text-align:center;color:#64748b;font-size:13px;border-top:1px solid rgba(148,163,184,.14);background:rgba(2,6,23,.45)}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch;margin:20px 0 24px}.hero-panel,.login-wrap,.card{background:linear-gradient(180deg,rgba(15,23,42,.92),rgba(15,23,42,.78));border:1px solid rgba(148,163,184,.22);border-radius:22px;padding:24px;box-shadow:var(--shadow)}.hero-panel{padding:34px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#bfdbfe;background:rgba(37,99,235,.16);border:1px solid rgba(96,165,250,.25);padding:7px 11px;border-radius:999px;font-size:13px;font-weight:800}.hero h1{font-size:42px;line-height:1.05;margin:18px 0 14px;letter-spacing:-.035em}.hero p.lead{font-size:18px;color:#cbd5e1;margin:0 0 22px}.hero-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 0;padding:0;list-style:none}.hero-list li{border:1px solid rgba(148,163,184,.18);background:rgba(2,6,23,.35);border-radius:14px;padding:11px 12px;color:#dbeafe;font-weight:700}.hero-side{display:flex;flex-direction:column;gap:14px}.workflow{counter-reset:step;display:grid;gap:10px}.workflow div{position:relative;padding:12px 12px 12px 44px;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(2,6,23,.28)}.workflow div:before{counter-increment:step;content:counter(step);position:absolute;left:12px;top:12px;width:22px;height:22px;border-radius:999px;background:rgba(214,169,74,.18);border:1px solid rgba(214,169,74,.38);color:#fde68a;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center}
.login-wrap{max-width:460px;margin:5vh auto;text-align:center}.login-wrap img{width:98px;height:118px;object-fit:contain;margin-bottom:14px;filter:drop-shadow(0 0 10px rgba(0,0,0,.45))}.login-wrap h1{margin:4px 0 8px;font-size:30px}.login-wrap .small-note{border-top:1px solid rgba(148,163,184,.18);margin-top:18px;padding-top:14px}.security-strip{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:16px 0}.security-strip span{font-size:12px;border:1px solid rgba(148,163,184,.2);border-radius:999px;color:#cbd5e1;padding:6px 9px;background:rgba(2,6,23,.3)}
.card{margin:0 0 18px}.card h2{margin-top:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.service-card{min-height:164px}.service-card .icon{font-size:22px;width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(37,99,235,.14);border:1px solid rgba(96,165,250,.22);margin-bottom:10px}.service-card h3{margin:0 0 8px}.stat{font-size:34px;font-weight:900;letter-spacing:-.03em}.muted{color:var(--muted)}.muted2{color:var(--muted2)}.btn,button{display:inline-block;border:1px solid rgba(96,165,250,.25);background:linear-gradient(180deg,#2563eb,#1d4ed8);color:white;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer;text-decoration:none}.btn:hover,button:hover{text-decoration:none;filter:brightness(1.08)}.btn.secondary{background:#1f2937;border-color:rgba(148,163,184,.25)}.btn.danger{background:var(--red)}.btn.gold{background:linear-gradient(180deg,#d6a94a,#a87920);border-color:rgba(253,230,138,.28);color:#111827}.actions{display:flex;gap:10px;flex-wrap:wrap}
input,select,textarea{width:100%;background:#020617;border:1px solid var(--line);border-radius:12px;color:var(--text);padding:11px 12px;margin:6px 0 12px}input:focus,select:focus,textarea:focus{outline:2px solid rgba(96,165,250,.35);border-color:#60a5fa}label{display:block;color:#cbd5e1;font-size:14px;font-weight:800}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid var(--line2);padding:11px 10px;text-align:left;vertical-align:top}.table th{color:#cbd5e1;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.badge{display:inline-block;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:900}.badge.info{background:#1e3a8a;color:#dbeafe}.badge.ok{background:#14532d;color:#dcfce7}.badge.medium{background:#78350f;color:#fef3c7}.badge.warn{background:#92400e;color:#ffedd5}.badge.danger{background:#7f1d1d;color:#fee2e2}.flash{border-radius:14px;padding:12px 14px;margin-bottom:18px;border:1px solid var(--line)}.flash.ok{background:#052e16;color:#dcfce7}.flash.error{background:#450a0a;color:#fee2e2}.flash.info{background:#172554;color:#dbeafe}.small{font-size:12px}.notice{border-left:4px solid #60a5fa;padding:12px 14px;background:rgba(15,23,42,.72);border-radius:12px}.notice.gold{border-left-color:var(--gold)}.section-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:28px 0 14px}.section-title h2{margin:0}.divider{height:1px;background:linear-gradient(90deg,transparent,rgba(148,163,184,.3),transparent);margin:24px 0}.empty{padding:20px;border:1px dashed rgba(148,163,184,.3);border-radius:14px;color:var(--muted);background:rgba(2,6,23,.18)}
@media(max-width:980px){.hero{grid-template-columns:1fr}.grid,.grid2,.grid4,.hero-list{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.topbar nav{gap:8px}.container{padding:18px 12px}.hero h1{font-size:34px}.hero-panel{padding:24px}} 


/* OSIRIS PORTAL MOBILE FRIENDLY - Étape 34.5C */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
img, svg, video, canvas {
  max-width: 100%;
}
.container, .topbar, .card, .hero-panel, .login-wrap {
  min-width: 0;
}
.table {
  max-width: 100%;
}
.table td, .table th {
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (max-width: 760px) {
  body {
    background:
      radial-gradient(circle at 10% 0%, rgba(37,99,235,.18), transparent 28%),
      linear-gradient(135deg, #020617, #0b1120 58%, #111827);
  }

  .topbar {
    position: sticky;
    top: 0;
    width: 100%;
    padding: 10px 12px;
    gap: 10px;
    align-items: stretch;
  }

  .brand {
    gap: 10px;
    align-items: center;
  }

  .brand img {
    width: 38px;
    height: 48px;
  }

  .brand strong {
    font-size: 18px;
  }

  .brand small {
    font-size: 11px;
  }

  .topbar nav {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    gap: 8px;
    padding-bottom: 2px;
    scrollbar-width: thin;
  }

  .topbar nav a {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 13px;
    padding: 8px 10px;
    border-color: rgba(148,163,184,.14);
    background: rgba(15,23,42,.42);
  }

  .container {
    width: 100%;
    max-width: 100%;
    padding: 16px 10px 28px;
  }

  .hero {
    display: block;
    margin: 10px 0 14px;
  }

  .hero-panel,
  .login-wrap,
  .card {
    border-radius: 18px;
    padding: 16px;
    margin-bottom: 14px;
  }

  .hero h1,
  .hero-panel h1 {
    font-size: 28px;
    line-height: 1.12;
    margin: 12px 0 10px;
  }

  .hero p.lead {
    font-size: 15px;
  }

  .section-title {
    display: block;
    margin: 22px 0 10px;
  }

  .section-title h2,
  .card h2 {
    font-size: 22px;
  }

  .grid,
  .grid2,
  .grid4,
  .hero-list {
    grid-template-columns: 1fr !important;
    gap: 12px;
  }

  .service-card {
    min-height: auto;
  }

  .stat {
    font-size: 28px;
  }

  .actions,
  form .actions {
    flex-direction: column;
    align-items: stretch;
  }

  .btn,
  button {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  input,
  select,
  textarea {
    font-size: 16px;
    max-width: 100%;
  }

  .table {
    display: block;
    width: 100%;
    border-collapse: separate;
  }

  .table thead {
    display: none;
  }

  .table tbody,
  .table tr,
  .table td {
    display: block;
    width: 100%;
  }

  .table tr {
    border: 1px solid rgba(148,163,184,.20);
    border-radius: 16px;
    background: rgba(2,6,23,.26);
    margin: 0 0 12px;
    padding: 10px 12px;
  }

  .table td {
    border-bottom: 1px solid rgba(30,41,59,.75);
    padding: 9px 0;
  }

  .table td:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }

  .table td::before {
    content: attr(data-label);
    display: block;
    color: #93a4ba;
    font-size: 11px;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-weight: 900;
    margin-bottom: 4px;
  }

  .table td:not([data-label])::before {
    display: none;
  }

  .table td .btn {
    margin-top: 4px;
  }

  .badge {
    white-space: normal;
  }

  .footer {
    padding: 18px 12px;
  }
}

@media (max-width: 420px) {
  .brand img {
    width: 34px;
    height: 44px;
  }
  .hero h1,
  .hero-panel h1 {
    font-size: 25px;
  }
  .card h2,
  .section-title h2 {
    font-size: 20px;
  }
  .eyebrow {
    max-width: 100%;
    white-space: normal;
  }
}

/* OSIRIS PORTAL 34.7 - Production client */
.checklist { display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.check-item { display:flex; gap:10px; align-items:flex-start; padding:12px; border:1px solid rgba(148,163,184,.18); border-radius:14px; background:rgba(15,23,42,.38); }
.check-item strong { display:block; color:#e5edf7; }
.check-item .status-dot { width:12px; height:12px; border-radius:999px; margin-top:4px; flex:0 0 12px; background:#64748b; box-shadow:0 0 0 4px rgba(100,116,139,.12); }
.check-item.ok .status-dot { background:#22c55e; box-shadow:0 0 0 4px rgba(34,197,94,.14); }
.check-item.warn .status-dot { background:#f59e0b; box-shadow:0 0 0 4px rgba(245,158,11,.14); }
.check-item.danger .status-dot { background:#ef4444; box-shadow:0 0 0 4px rgba(239,68,68,.14); }
.workflow { counter-reset:step; display:grid; gap:12px; }
.workflow-step { position:relative; padding:14px 14px 14px 52px; border:1px solid rgba(148,163,184,.20); border-radius:16px; background:linear-gradient(135deg,rgba(15,23,42,.72),rgba(30,41,59,.42)); }
.workflow-step:before { counter-increment:step; content:counter(step); position:absolute; left:14px; top:14px; width:26px; height:26px; border-radius:999px; display:grid; place-items:center; background:#1d4ed8; color:white; font-weight:900; font-size:13px; }
.workflow-step h3 { margin:0 0 4px; }
.production-banner { border:1px solid rgba(59,130,246,.35); background:linear-gradient(135deg,rgba(30,64,175,.22),rgba(15,23,42,.66)); }
.kv { display:grid; grid-template-columns:180px 1fr; gap:6px 12px; font-size:14px; }
.kv div:nth-child(odd) { color:#93a4ba; font-weight:800; }
.approval-box { padding:12px; border:1px solid rgba(34,197,94,.28); border-radius:14px; background:rgba(22,101,52,.12); }
.approval-box label { display:flex; gap:10px; align-items:flex-start; margin:0; font-weight:800; color:#e5edf7; }
.approval-box input { width:auto; margin-top:3px; }
.form-inline-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }

@media (max-width: 720px) {
  .kv { grid-template-columns:1fr; gap:2px; }
  .form-inline-grid { grid-template-columns:1fr; }
}


/* OSIRIS PORTAL 34.8 - Publication procedure */

.procedure-hero .notice{margin:18px 0 0}.workflow-chain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 28px}.chain-step{background:rgba(15,23,42,.78);border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:16px;min-height:138px;position:relative;overflow:hidden}.chain-step span{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:999px;background:rgba(212,175,55,.18);color:#f8e7a1;font-weight:800;margin-bottom:12px}.chain-step strong{display:block;color:#f8fafc;font-size:1rem;margin-bottom:6px}.chain-step small{display:block;color:#a9b4c7;line-height:1.45}.chain-step.final{border-color:rgba(212,175,55,.55);box-shadow:0 0 0 1px rgba(212,175,55,.16) inset}.chain-step.deliver{border-color:rgba(34,197,94,.42)}.publication-status{margin:0}.procedure-grid{align-items:start}.publication-checklist{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:10px}.publication-checklist li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:rgba(2,6,23,.22)}.publication-checklist input{margin-top:3px;min-width:18px;min-height:18px}.do-dont{display:grid;grid-template-columns:1fr 1fr;gap:14px}.do-box,.dont-box{border-radius:16px;padding:15px;border:1px solid rgba(148,163,184,.18);background:rgba(2,6,23,.2)}.do-box{border-color:rgba(34,197,94,.35)}.dont-box{border-color:rgba(248,113,113,.35)}.do-box h3,.dont-box h3{margin-top:0}.do-box ul,.dont-box ul{margin:8px 0 0;padding-left:18px;color:#cbd5e1}.procedure-timeline{display:grid;gap:14px}.procedure-step{display:grid;grid-template-columns:74px 1fr;gap:16px;align-items:start;background:rgba(15,23,42,.78);border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:18px}.procedure-step .step-no{width:54px;height:54px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.14);color:#f8e7a1;font-weight:900}.procedure-step h3{margin:0 0 6px}.procedure-step p{margin:0;color:#b8c3d7;line-height:1.55}.procedure-step.official{border-color:rgba(212,175,55,.55);background:linear-gradient(135deg,rgba(212,175,55,.12),rgba(15,23,42,.82))}.print-note{margin-top:22px}@media(max-width:980px){.workflow-chain{grid-template-columns:repeat(2,minmax(0,1fr))}.do-dont{grid-template-columns:1fr}}@media(max-width:640px){.workflow-chain{grid-template-columns:1fr}.procedure-step{grid-template-columns:1fr}.procedure-step .step-no{width:46px;height:46px;border-radius:14px}.publication-checklist li{font-size:.95rem}}@media print{.topbar,.footer,.actions,.nav-logout{display:none!important}body{background:#fff!important;color:#111!important}.card,.hero-panel,.procedure-step,.chain-step{box-shadow:none!important;background:#fff!important;color:#111!important;border:1px solid #ddd!important}.muted,.small,.lead,.procedure-step p,.chain-step small{color:#333!important}.container{max-width:none!important;margin:0!important;padding:0!important}}

/* OSIRIS CLIENT PORTAL - 34.8B
   Correctif centrage checklist publication
   Objectif : centrer les cases à cocher et stabiliser l'affichage desktop/mobile.
*/

.publication-checklist,
.checklist-publication,
.publication-checklist-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.publication-checklist-item,
.checklist-item,
.publication-check-item,
.publication-checklist label,
.checklist-publication label {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  min-height: 82px !important;
  padding: 16px 20px !important;
  border: 1px solid rgba(148, 163, 184, 0.22) !important;
  border-radius: 16px !important;
  background: rgba(15, 23, 42, 0.42) !important;
  box-sizing: border-box !important;
}

.publication-checklist-item input[type="checkbox"],
.checklist-item input[type="checkbox"],
.publication-check-item input[type="checkbox"],
.publication-checklist label input[type="checkbox"],
.checklist-publication label input[type="checkbox"] {
  width: 20px !important;
  height: 20px !important;
  margin: 0 auto !important;
  display: block !important;
  justify-self: center !important;
  align-self: center !important;
  accent-color: #3b82f6 !important;
  cursor: pointer !important;
}

.publication-checklist-item span,
.publication-checklist-item div,
.checklist-item span,
.checklist-item div,
.publication-check-item span,
.publication-check-item div,
.publication-checklist label span,
.publication-checklist label div,
.checklist-publication label span,
.checklist-publication label div {
  min-width: 0 !important;
}

.publication-checklist-text {
  display: flex !important;
  align-items: center !important;
  min-height: 100% !important;
  line-height: 1.45 !important;
}

@media (max-width: 640px) {
  .publication-checklist-item,
  .checklist-item,
  .publication-check-item,
  .publication-checklist label,
  .checklist-publication label {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 12px !important;
    min-height: 68px !important;
    padding: 14px 14px !important;
  }

  .publication-checklist-item input[type="checkbox"],
  .checklist-item input[type="checkbox"],
  .publication-check-item input[type="checkbox"],
  .publication-checklist label input[type="checkbox"],
  .checklist-publication label input[type="checkbox"] {
    width: 19px !important;
    height: 19px !important;
  }
}

/* OSIRIS CLIENT PORTAL - 34.8C
   Correctif robuste: checklist publication + impression.
*/

.osiris-348c-checklist-normalized .ovpub-check-row,
.ovpub-check-row {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 16px !important;
  width: 100% !important;
  min-height: 72px !important;
  padding: 14px 16px !important;
  margin: 0 0 10px 0 !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(148, 163, 184, 0.22) !important;
  border-radius: 14px !important;
  background: rgba(15, 23, 42, 0.50) !important;
}

.osiris-348c-checklist-normalized .ovpub-check-box,
.ovpub-check-box {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.osiris-348c-checklist-normalized .ovpub-check-box input[type="checkbox"],
.ovpub-check-box input[type="checkbox"],
.osiris-348c-checklist-normalized .ovpub-check-row input[type="checkbox"],
.ovpub-check-row input[type="checkbox"] {
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-self: center !important;
  align-self: center !important;
  accent-color: #3b82f6 !important;
  cursor: pointer !important;
  flex: 0 0 auto !important;
}

.osiris-348c-checklist-normalized .ovpub-check-text,
.ovpub-check-text {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.45 !important;
  color: #ffffff !important;
  text-align: left !important;
  overflow-wrap: anywhere !important;
}

.osiris-348c-checklist-normalized .ovpub-check-row > * {
  min-width: 0 !important;
}

@media (max-width: 640px) {
  .osiris-348c-checklist-normalized .ovpub-check-row,
  .ovpub-check-row {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    min-height: 64px !important;
    padding: 12px 12px !important;
    border-radius: 12px !important;
  }

  .osiris-348c-checklist-normalized .ovpub-check-box,
  .ovpub-check-box {
    width: 38px !important;
    min-width: 38px !important;
  }

  .osiris-348c-checklist-normalized .ovpub-check-box input[type="checkbox"],
  .ovpub-check-box input[type="checkbox"],
  .osiris-348c-checklist-normalized .ovpub-check-row input[type="checkbox"],
  .ovpub-check-row input[type="checkbox"] {
    width: 17px !important;
    height: 17px !important;
  }
}

@media print {
  body {
    background: #ffffff !important;
    color: #111827 !important;
  }

  header,
  nav,
  aside,
  .sidebar,
  .topbar,
  .no-print,
  .btn,
  button,
  .admin-nav,
  .portal-nav {
    display: none !important;
  }

  main,
  .container,
  .content,
  .page,
  .card {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }

  .card,
  section {
    border: 1px solid #d1d5db !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    padding: 16px !important;
    margin-bottom: 14px !important;
  }

  .ovpub-check-row {
    border: 1px solid #d1d5db !important;
    background: #ffffff !important;
    color: #111827 !important;
  }

  .ovpub-check-text {
    color: #111827 !important;
  }

  a {
    color: #111827 !important;
    text-decoration: none !important;
  }
}

/* OSIRIS CLIENT PORTAL - 34.8D
   Correctif CSP-safe: checklist publication.
   Aucun JS inline requis.
*/

.osiris-348d-checklist-normalized .ovpub-check-row,
.ovpub-check-row {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 16px !important;
  width: 100% !important;
  min-height: 72px !important;
  padding: 14px 16px !important;
  margin: 0 0 10px 0 !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(148, 163, 184, 0.22) !important;
  border-radius: 14px !important;
  background: rgba(15, 23, 42, 0.50) !important;
}

.osiris-348d-checklist-normalized .ovpub-check-box,
.ovpub-check-box {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.osiris-348d-checklist-normalized .ovpub-check-box input[type="checkbox"],
.ovpub-check-box input[type="checkbox"],
.osiris-348d-checklist-normalized .ovpub-check-row input[type="checkbox"],
.ovpub-check-row input[type="checkbox"] {
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-self: center !important;
  align-self: center !important;
  accent-color: #3b82f6 !important;
  cursor: pointer !important;
  flex: 0 0 auto !important;
}

.osiris-348d-checklist-normalized .ovpub-check-text,
.ovpub-check-text {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.45 !important;
  color: #ffffff !important;
  text-align: left !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 640px) {
  .osiris-348d-checklist-normalized .ovpub-check-row,
  .ovpub-check-row {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    min-height: 64px !important;
    padding: 12px 12px !important;
    border-radius: 12px !important;
  }

  .osiris-348d-checklist-normalized .ovpub-check-box,
  .ovpub-check-box {
    width: 38px !important;
    min-width: 38px !important;
  }

  .osiris-348d-checklist-normalized .ovpub-check-box input[type="checkbox"],
  .ovpub-check-box input[type="checkbox"],
  .osiris-348d-checklist-normalized .ovpub-check-row input[type="checkbox"],
  .ovpub-check-row input[type="checkbox"] {
    width: 17px !important;
    height: 17px !important;
  }
}

@media print {
  body {
    background: #ffffff !important;
    color: #111827 !important;
  }

  header,
  nav,
  aside,
  .sidebar,
  .topbar,
  .no-print,
  .btn,
  button,
  .admin-nav,
  .portal-nav {
    display: none !important;
  }

  main,
  .container,
  .content,
  .page,
  .card {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }

  .card,
  section {
    border: 1px solid #d1d5db !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    padding: 16px !important;
    margin-bottom: 14px !important;
  }

  .ovpub-check-row {
    border: 1px solid #d1d5db !important;
    background: #ffffff !important;
    color: #111827 !important;
  }

  .ovpub-check-text {
    color: #111827 !important;
  }

  a {
    color: #111827 !important;
    text-decoration: none !important;
  }
}

