:root { color-scheme: light; --ink:#172633; --muted:#536673; --paper:#f7fafb; --panel:#fff; --rule:#c8d6dc; --accent:#0b6174; --accent-soft:#e0f1f4; --danger:#9f1d2c; --focus:#e49b22; }
.static-page-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:.35rem; width:min(100% - 2rem,52rem); margin:0 auto; padding:1rem 0 0; color:var(--muted); font-size:.78rem; font-weight:800; letter-spacing:.03em; }
.static-page-breadcrumb a { color:var(--accent); text-decoration:none; }.static-page-breadcrumb a:hover { text-decoration:underline; }.static-page-breadcrumb a:focus-visible { outline:3px solid var(--focus); outline-offset:3px; border-radius:.2rem; }.static-page-breadcrumb-chevron { color:var(--muted); font-size:1rem; line-height:1; }
* { box-sizing:border-box; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,sans-serif; line-height:1.55; } .shell { width:min(100% - 2rem,52rem); margin:0 auto; padding:2rem 0 3rem; } .eyebrow { margin:0 0 .45rem; color:var(--accent); font-size:.78rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; } h1 { max-width:23ch; margin:0; font-family:Georgia,serif; font-size:clamp(2rem,6vw,3.3rem); line-height:1.06; } h2 { margin-top:0; font-size:1.3rem; } p { margin:.55rem 0; } a { color:var(--accent); font-weight:700; } .boundary,.card,fieldset { border:1px solid var(--rule); border-radius:.75rem; background:var(--panel); } .boundary { margin:1.5rem 0; padding:1rem 1.1rem; background:var(--accent-soft); } .card,fieldset { margin:1rem 0; padding:1.1rem; } fieldset { min-inline-size:auto; } legend { padding:0 .35rem; font-weight:800; } .hint,.artifact-details { color:var(--muted); font-size:.94rem; } label { display:grid; gap:.35rem; font-weight:700; } input,select,textarea,button { font:inherit; } input,select,textarea { width:100%; border:1px solid #8197a2; border-radius:.4rem; padding:.6rem .7rem; color:var(--ink); background:#fff; } textarea { min-height:7rem; resize:vertical; } input:focus,select:focus,textarea:focus,button:focus { outline:3px solid var(--focus); outline-offset:2px; } .decision-grid,.checklist-grid { display:grid; gap:.75rem; } .decision-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .decision-option { display:flex; gap:.45rem; align-items:center; padding:.65rem; border:1px solid var(--rule); border-radius:.45rem; cursor:pointer; } .decision-option input { width:auto; } .checklist-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .checklist-grid label { font-size:.92rem; } .feedback-item { margin-top:1rem; padding:1rem; border:1px dashed #8aa5af; border-radius:.55rem; background:#fbfdfe; } .feedback-header { display:flex; justify-content:space-between; gap:1rem; align-items:baseline; } .feedback-header h3 { margin:0; font-size:1rem; } .feedback-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; margin:.7rem 0; } .link-button,.secondary { border:1px solid var(--accent); border-radius:.4rem; padding:.55rem .8rem; color:var(--accent); background:#fff; cursor:pointer; font-weight:800; } .link-button:hover,.secondary:hover { background:var(--accent-soft); } .actions { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.25rem; } .primary { border:1px solid var(--accent); border-radius:.4rem; padding:.65rem .9rem; color:#fff; background:var(--accent); cursor:pointer; font-weight:800; } .status { min-height:1.5rem; color:var(--danger); font-weight:700; } .status[data-tone="success"] { color:var(--accent); } @media (max-width:38rem) { .shell { width:min(100% - 1.25rem,52rem); padding-top:1.25rem; } .decision-grid,.checklist-grid,.feedback-grid { grid-template-columns:1fr; } .decision-option { align-items:flex-start; } }

.inherited-boundary { margin:1rem 0; border-left:.35rem solid var(--accent); border-radius:.65rem; padding:.9rem 1rem; background:#eef7f8; }
.inherited-boundary h2 { margin:0 0 .35rem; }
.inventory-card { margin:1.5rem 0; border:1px solid var(--rule); border-radius:.75rem; padding:1.1rem; background:var(--panel); }
.inventory-card-missing { border-color:var(--danger); }
.inventory-heading { display:flex; gap:1rem; align-items:flex-start; justify-content:space-between; }
.inventory-heading h2 { margin:0; }
.completeness,.availability { display:inline-flex; border:1px solid var(--accent); border-radius:999px; padding:.15rem .55rem; color:var(--accent); background:#fff; font-size:.72rem; font-weight:900; letter-spacing:.03em; text-transform:uppercase; white-space:nowrap; }
.completeness-incomplete,.availability-missing { border-color:var(--danger); color:var(--danger); }
.inventory-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; margin-top:1rem; }
.inventory-group { min-width:0; border:1px solid var(--rule); border-radius:.6rem; padding:.85rem; background:#fbfdfe; }
.inventory-group h3 { margin:0 0 .65rem; font-size:1rem; }
.inventory-group ul { display:grid; gap:.7rem; margin:0; padding:0; list-style:none; }
.inventory-group li > span { display:flex; gap:.5rem; align-items:center; justify-content:space-between; }
.inventory-group small { display:block; margin-top:.2rem; color:var(--muted); overflow-wrap:anywhere; }
.learner-map-note { margin:.75rem 0 0; color:var(--muted); }
.learner-map-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.learner-map-group { min-width:0; border:1px solid var(--rule); border-top:.35rem solid var(--accent); border-radius:.65rem; padding:1rem; background:#fbfdfe; }
.learner-map-heading { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-bottom:.8rem; }
.learner-map-heading h3 { margin:0; font-size:1.05rem; }
.learner-map-count { display:grid; min-width:1.8rem; height:1.8rem; place-items:center; border-radius:999px; color:#fff; background:var(--accent); font-size:.82rem; font-weight:900; }
.learner-map-group ul { display:grid; gap:.55rem; margin:0; padding:0; list-style:none; }
.learner-map-group li { min-width:0; border-top:1px solid var(--rule); padding-top:.55rem; }
.learner-map-group li > span { display:flex; align-items:flex-start; justify-content:space-between; gap:.65rem; }
.learner-map-group li strong { min-width:0; overflow-wrap:anywhere; }
.inventory-requirement { margin:.75rem 0 0; border-top:1px solid var(--rule); padding-top:.55rem; color:var(--accent); font-size:.82rem; }
.inventory-requirement-missing { color:var(--danger); }
.review-target { margin-top:1.4rem; border-top:1px solid var(--rule); padding-top:1.1rem; }
.review-target > h2 { margin-bottom:.2rem; }
.review-status-card { margin-top:2rem; border:1px solid var(--rule); border-top:.45rem solid var(--accent); border-radius:.8rem; padding:1.1rem; background:var(--accent-soft); }
.review-status-card > h2 { margin:0; }
.review-status-card fieldset { background:var(--panel); }
.package-checklist { margin:1rem 0; border-top:1px solid var(--rule); padding-top:1rem; }
.package-checklist h3 { margin:0 0 .5rem; font-size:1rem; }
.package-checklist ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.35rem 1rem; margin:.5rem 0 0; padding-left:1.25rem; }
.package-check-missing { color:var(--danger); }
@media (max-width:38rem) { .inventory-heading { align-items:flex-start; flex-direction:column; } .inventory-groups,.learner-map-grid,.package-checklist ul { grid-template-columns:1fr; } }

.notebook-activity-checks > .hint { margin-top:0; }
.notebook-note-list { display:grid; gap:.85rem; margin:.8rem 0 0; padding:0; list-style:none; counter-reset:notebook-note; }
.notebook-note-list > li { position:relative; counter-increment:notebook-note; border:1px solid var(--rule); border-left:.35rem solid var(--accent); border-radius:.65rem; padding:.85rem .85rem .85rem 3.5rem; background:#fbfdfe; }
.notebook-note-list > li::before { content:counter(notebook-note); position:absolute; top:.8rem; left:.8rem; display:grid; width:1.9rem; height:1.9rem; place-items:center; border-radius:999px; color:#fff; background:var(--accent); font-weight:900; line-height:1; }
.notebook-note-list textarea { margin-top:.35rem; background:#fff; }
.notebook-checklist { display:grid; gap:.55rem; margin:.8rem 0 0; padding:0; list-style:none; }
.notebook-checklist li { margin:0; }
.notebook-checklist label { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.65rem; align-items:start; border:1px solid var(--rule); border-radius:.55rem; padding:.65rem .75rem; background:#fbfdfe; cursor:pointer; }
.notebook-checklist input { width:1.1rem; height:1.1rem; margin:.25rem 0 0; accent-color:var(--accent); }
.notebook-checklist label:has(input:checked) span { color:var(--muted); text-decoration:line-through; text-decoration-thickness:1px; }
.notebook-review-footer { margin-top:1.5rem; border-top:1px solid var(--rule); padding-top:1.25rem; }
.notebook-review-footer .link-button { display:inline-flex; text-decoration:none; }
.notebook-progress { margin:1.25rem 0 .8rem; }
.notebook-progress-label { margin:0 0 .4rem; color:var(--muted); font-size:.9rem; font-weight:800; }
.notebook-progress-track { height:.45rem; overflow:hidden; border-radius:999px; background:var(--rule); }
.notebook-progress-track > span { display:block; height:100%; border-radius:inherit; background:var(--accent); }
.notebook-step { margin:0 0 1rem; border:1px solid var(--rule); border-left:.4rem solid var(--accent); border-radius:.75rem; padding:1.1rem; background:var(--panel); }
.notebook-step-heading { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.7rem; align-items:center; margin-bottom:1rem; }
.notebook-step-heading h2 { margin:0; }
.notebook-step-prefix { display:block; color:var(--muted); font-size:.78rem; letter-spacing:.04em; text-transform:uppercase; }
.notebook-step-number { display:grid; width:2rem; height:2rem; place-items:center; border-radius:999px; color:#fff; background:var(--accent); font-weight:900; line-height:1; }
.notebook-step-instructions { margin-bottom:1.15rem; border:1px solid var(--rule); border-radius:.6rem; padding:.9rem; background:var(--accent-soft); }
.notebook-step-instructions h3,.notebook-recording-fields h3 { margin:0 0 .55rem; font-size:1.05rem; }
.notebook-step-instructions p { margin-bottom:0; }
.notebook-step-resources { display:grid; gap:.35rem; margin:.45rem 0 0; padding-left:1.25rem; }
.notebook-recording-fields { display:grid; gap:.85rem; }
.notebook-step-notes { margin-top:1.1rem; border-top:1px solid var(--rule); padding-top:1rem; }
.notebook-step-controls { display:flex; justify-content:space-between; gap:.75rem; margin:0 0 1.25rem; }
.notebook-step-controls button:disabled { cursor:not-allowed; opacity:.5; }
.notebook-observations { margin-top:1.25rem; border-top:1px solid var(--rule); padding-top:1rem; }
.notebook-observations > h3 { margin:0; font-size:1.05rem; }
.notebook-observation-list { display:grid; gap:.85rem; margin:1rem 0; }
.notebook-observation { border:1px dashed #8aa5af; border-radius:.6rem; padding:.9rem; background:#fbfdfe; }
.notebook-observation h4 { margin:0 0 .75rem; color:var(--accent); }
.notebook-observation-grid { display:grid; gap:.8rem; }
.notebook-add-observation { margin-top:.1rem; }
.notebook-observation-status { min-height:1.5rem; margin:.25rem 0; color:var(--accent); font-weight:700; }
@media (max-width:38rem) { .notebook-step { padding:.9rem; } .notebook-step-controls button { flex:1; } }

.review-contract,.evidence-card { margin:1.5rem 0; border:1px solid var(--rule); border-radius:.75rem; padding:1.1rem; background:var(--panel); }
.review-contract h2 { margin-bottom:.35rem; }
.evidence-card summary { cursor:pointer; font-weight:800; }
.evidence-card ul { columns:2; }
.reviewer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.receipt-tally { margin:1rem 0; border-radius:.5rem; padding:.75rem; background:var(--accent-soft); }
.receipt-list { display:grid; gap:.65rem; margin:0; padding:0; list-style:none; }
.receipt-list > li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.5rem 1rem; border:1px solid var(--rule); border-radius:.55rem; padding:.75rem; background:#fbfdfe; }
.receipt-list small { display:block; color:var(--muted); }
.receipt-list > li > ul { grid-column:1 / -1; margin:.2rem 0 0; color:var(--danger); font-size:.88rem; }
.receipt-valid { border-left:.35rem solid var(--accent) !important; }
.receipt-invalid { border-left:.35rem solid var(--danger) !important; }
.validation-blocker { border-left:.35rem solid var(--danger); padding:.75rem; color:var(--danger); background:#fff5f5; }
@media (max-width:38rem) { .reviewer-grid { grid-template-columns:1fr; } .evidence-card ul { columns:1; } .receipt-list > li { grid-template-columns:1fr; } }

.track-map-review-grid,.review-route-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.track-map-review-group { min-width:0; border:1px solid var(--rule); border-top:.35rem solid var(--accent); border-radius:.65rem; padding:1rem; background:#fbfdfe; }
.track-map-review-group ul { display:grid; gap:.9rem; margin:0; padding:0; list-style:none; }
.track-map-review-group li { display:grid; grid-template-columns:minmax(0,1fr) minmax(10rem,.75fr); gap:.8rem; align-items:end; border-top:1px solid var(--rule); padding-top:.75rem; }
.track-map-review-group small { display:block; margin-top:.2rem; color:var(--muted); text-transform:capitalize; }
.track-map-review-group label { font-size:.82rem; }
.review-route-card { display:block; min-width:0; border:1px solid var(--rule); border-top:.4rem solid var(--accent); border-radius:.75rem; padding:1.1rem; color:var(--ink); background:var(--panel); text-decoration:none; }
.review-route-card:hover { border-color:var(--accent); background:var(--accent-soft); }
.review-route-card:focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
.review-route-card h2 { margin:.2rem 0 .45rem; }
.review-route-card p { color:var(--muted); }
.review-route-card strong { color:var(--accent); }
.review-route-card-final { grid-column:1 / -1; }
@media (max-width:38rem) { .track-map-review-grid,.review-route-grid { grid-template-columns:1fr; } .track-map-review-group li { grid-template-columns:1fr; } .review-route-card-final { grid-column:auto; } }
