/* RC211: confined to existing role dashboard, theme-contract-only surfaces. */
.sk207-dashboard .sk211-journal{
  --j-card:var(--sk196-card,var(--sk207-surface,#fff));
  --j-panel:var(--sk196-panel,var(--sk207-panel,#f2f6fb));
  --j-ink:var(--sk196-text,var(--sk207-ink,#172b47));
  --j-muted:var(--sk196-muted,var(--sk207-muted,#526781));
  --j-line:var(--sk196-line,var(--sk207-border,#cad7e7));
  --j-primary:var(--sk196-primary,var(--sk207-accent,#315fba));
  --j-on-primary:var(--sk196-on-primary,var(--sk207-onaccent,#fff));
  --j-control:var(--sk196-control,var(--j-card));
  --j-control-text:var(--sk196-control-text,var(--j-ink));
  background:var(--j-panel);border:1px solid var(--j-line);color:var(--j-ink);
  padding:clamp(14px,2vw,22px);border-radius:18px;margin-top:16px;min-width:0;
}
.sk211-journal,.sk211-journal *,.sk211-journal *::before,.sk211-journal *::after{box-sizing:border-box}
.sk211-journal :is(h2,h3){color:var(--j-ink);margin:0;line-height:1.35}
.sk211-journal p{color:var(--j-muted);margin:6px 0 11px}
.sk211-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.sk211-heading h2{font-size:clamp(19px,2vw,25px);margin-top:5px}
.sk211-heading p{max-width:680px;font-size:14px}
.sk211-eyebrow{color:var(--j-primary);font-size:11px;font-weight:800;letter-spacing:.08em}
.sk211-readonly{border-radius:999px;border:1px solid var(--j-line);background:var(--j-card);padding:7px 11px;
  color:var(--j-muted);font-size:12px;font-weight:800;white-space:nowrap}
.sk211-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:11px 0 18px}
.sk211-stats article{background:var(--j-card);border:1px solid var(--j-line);border-radius:14px;padding:14px;min-width:0}
.sk211-stats span,.sk211-stats small{font-size:12px;line-height:1.45;color:var(--j-muted);display:block}
.sk211-stats strong{display:block;font-size:clamp(20px,2vw,27px);color:var(--j-ink);font-weight:800;
  font-variant-numeric:tabular-nums;margin:5px 0;overflow-wrap:anywhere}
.sk211-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px;align-items:start}
.sk211-form-card{background:var(--j-card);border:1px solid var(--j-line);border-radius:14px;min-width:0;overflow:hidden}
.sk211-form-card summary{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px;
  padding:15px 13px;font-size:14px;font-weight:800;cursor:pointer;list-style:none;color:var(--j-ink)}
.sk211-form-card summary::-webkit-details-marker{display:none}
.sk211-form-card summary::after{content:'+';font-size:20px;color:var(--j-primary);margin-left:3px}
.sk211-form-card[open] summary::after{content:'-'}
.sk211-form-card summary small{font-size:11px;color:var(--j-muted);font-weight:600;line-height:1.3}
.sk211-form-card form{padding:2px 14px 15px;border-top:1px solid var(--j-line)}
.sk211-form-card p{margin:9px 14px}
.sk211-form-card label{font-size:12px;color:var(--j-ink);font-weight:750;display:block;margin-top:10px;margin-bottom:4px}
.sk211-form-card :is(input,select){width:100%;background:var(--j-control);color:var(--j-control-text);
  border:1px solid var(--j-line);border-radius:9px;min-height:42px;padding:8px 10px;font:inherit;font-size:14px;max-width:100%}
.sk211-form-card input::placeholder{color:var(--j-muted);opacity:1}
.sk211-form-card :is(input,select):focus-visible,.sk211-journal button:focus-visible,
.sk211-form-card summary:focus-visible{outline:3px solid var(--sk196-focus,var(--j-primary));outline-offset:2px}
.sk211-form-card button{display:block;background:var(--j-primary);color:var(--j-on-primary);border:1px solid var(--j-primary);
  border-radius:10px;font:inherit;font-size:14px;font-weight:800;min-height:42px;padding:9px 12px;margin-top:15px;width:100%;cursor:pointer}
.sk211-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sk211-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.sk211-form-card .sk211-hint{color:var(--j-muted);font-size:12px;margin:7px 0}
.sk211-panels{display:grid;grid-template-columns:1fr 1.15fr;gap:12px;margin-top:12px;align-items:stretch}
.sk211-panel{background:var(--j-card);border:1px solid var(--j-line);border-radius:15px;padding:clamp(12px,1.8vw,18px);min-width:0}
.sk211-panel h3{font-size:16px;margin-bottom:9px}.sk211-panel p{font-size:13px}
.sk211-bars{display:flex;flex-direction:column;gap:8px}
.sk211-day{display:grid;grid-template-columns:46px minmax(0,1fr) 98px;gap:8px;align-items:center;font-size:12px;color:var(--j-muted)}
.sk211-day>span{color:var(--j-ink);font-weight:700;font-variant-numeric:tabular-nums}
.sk211-day small{color:var(--j-muted);text-align:right;font-size:11px;font-variant-numeric:tabular-nums}
.sk211-bar-pair{display:flex;flex-direction:column;gap:3px;min-width:0}
.sk211-bar-pages{background:var(--j-primary);border-radius:5px;height:8px}
.sk211-bar-questions{background:var(--sk196-ok,#17876c);border-radius:5px;height:8px}
.sk211-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.sk211-key-pages,.sk211-key-questions{display:inline-block;width:11px;height:11px;border-radius:3px;margin-left:8px;background:var(--j-primary)}
.sk211-key-questions{background:var(--sk196-ok,#17876c)}
.sk211-table-wrap{overflow-x:auto;max-width:100%}
.sk211-panel table{width:100%;border-collapse:collapse;font-size:13px;color:var(--j-ink)}
.sk211-panel th,.sk211-panel td{color:var(--j-ink);text-align:left;border-bottom:1px solid var(--j-line);
  padding:10px 7px;vertical-align:top;overflow-wrap:anywhere}
.sk211-panel thead th{background:var(--j-panel);font-size:12px;font-weight:800}
.sk211-panel tbody th{font-weight:750}
.sk211-panel :is(th,td) small{display:block;color:var(--j-muted);font-size:11px;font-weight:500;margin-top:3px}
.sk211-small-action{display:inline-block;background:var(--j-panel);border:1px solid var(--j-line);color:var(--j-ink);
  min-height:34px;border-radius:8px;padding:5px 9px;font-size:12px;font-weight:700;cursor:pointer;margin:0 3px 3px 0}
.sk211-panel td form{display:inline}
.sk211-disclaimer{font-size:12px;padding:12px 13px;background:var(--j-card);border-left:3px solid var(--j-primary);
  border-radius:9px;margin-top:13px!important}
.sk211-message{border-radius:10px;border:1px solid var(--j-line);padding:10px 12px;font-weight:700;font-size:13px}
.sk211-message.is-success{border-left:4px solid var(--sk196-ok,#17876c)}
.sk211-message.is-error{border-left:4px solid var(--sk196-wrong,#ad3434)}
@media(max-width:980px){.sk211-entry-grid{grid-template-columns:1fr 1fr}.sk211-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.sk207-dashboard .sk211-journal{padding:12px;border-radius:13px}
  .sk211-heading{flex-direction:column;align-items:flex-start}
  .sk211-entry-grid,.sk211-panels,.sk211-stats{grid-template-columns:minmax(0,1fr)}
  .sk211-day{grid-template-columns:43px minmax(0,1fr) 88px;gap:5px}}
@media(prefers-reduced-motion:reduce){.sk211-journal *{scroll-behavior:auto;transition:none}}
/* Book completion and genre summaries stay compact on mobile. */
.sk211-panel .sk211-rating-label{display:inline-flex;flex-direction:column;gap:3px;font-size:11px;color:var(--j-muted);
  max-width:115px;margin:0 5px 4px 0}
.sk211-rating-label select{background:var(--j-control);color:var(--j-control-text);border:1px solid var(--j-line);
  border-radius:8px;min-height:34px;padding:4px;max-width:100%}
.sk211-panel .sk211-rating-label select:focus-visible{outline:3px solid var(--sk196-focus,var(--j-primary));outline-offset:2px}
