/* Scoped record-hub styles; existing course and account layouts are preserved. */
.records-page [hidden]{display:none!important}
.records-page{padding-top:42px;padding-bottom:46px}
.records-page .headline{font-size:clamp(38px,7vw,62px);line-height:1.08;max-width:790px;margin-bottom:18px}
.records-page .lead{font-size:23px;margin-bottom:12px}
.records-page .records-scope{max-width:730px;font-size:16px;color:var(--muted);line-height:1.7}
.records-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 28px}
.records-actions .btn{font-size:16px;min-height:48px;padding:11px 20px}
.records-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);background:var(--cream);border-radius:20px;margin:0 0 28px}
.records-summary>div{display:flex;flex-direction:column;gap:2px;padding:20px 18px}
.records-summary>div+div{border-left:1px solid var(--line)}
.records-summary strong{font-size:34px;line-height:1.2;color:var(--red-deep)}
.records-summary span{font-size:14px;color:var(--muted);line-height:1.45}
.records-controls{display:grid;grid-template-columns:minmax(0,1fr) 170px 140px auto;gap:0 12px;align-items:end;padding:22px;background:#fff;border:1px solid var(--line);border-radius:20px}
.records-controls label{margin:0 0 7px;font-size:14px}
.records-controls input,.records-controls select{font-size:16px;min-height:48px;padding:11px 12px;border-radius:12px}
.records-page .record-search-help{grid-column:1/-1;font-size:13px;color:var(--muted);margin:10px 0 0}
.records-controls .btn{border-radius:12px;box-shadow:none;font-size:15px;padding:10px 18px;min-height:48px;cursor:pointer}
.records-controls :disabled{opacity:.55;cursor:not-allowed}
.records-page :is(input,select,button,a):focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.records-page .records-result-count{font-size:14px;color:var(--muted);margin:20px 0 14px;min-height:24px}
.records-list{list-style:none;padding:0;margin:0;display:grid;gap:18px}
.record-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 6px 20px rgba(122,23,36,.035);overflow-wrap:anywhere}
.record-card-meta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.record-number{color:var(--red);font-size:13px;font-weight:900;letter-spacing:.06em}
.record-badge{font-size:12px;line-height:1.5;font-weight:700;padding:4px 10px;background:#f3efeb;color:#685956;border-radius:999px}
.record-badge.is-complete{background:#eaf4eb;color:#285b32}
.records-page .record-card h2{font-size:25px;line-height:1.3;margin:0 0 8px;color:var(--red-deep)}
.record-title-link:hover{text-decoration:underline;text-underline-offset:4px}
.records-page .record-module{font-size:13px;color:var(--muted);margin:0 0 18px}
.record-card h3.record-note-heading{font-size:13px;color:var(--muted);margin:18px 0 8px;font-weight:800}
.records-page .record-note{font-size:16px;line-height:1.75;background:#fffaf2;border-left:3px solid var(--gold);border-radius:0 10px 10px 0;padding:14px 16px;margin:0 0 16px;white-space:pre-wrap;overflow-wrap:anywhere}
.records-page .record-no-note{font-size:15px;color:var(--muted);margin:12px 0 16px}
.record-open{display:inline-block;color:var(--red);font-size:15px;font-weight:850;text-decoration:underline;text-underline-offset:4px;padding:6px 0}
.records-empty,.records-storage-error{border:1px solid var(--line);border-radius:20px;background:var(--cream);padding:28px;margin:18px 0}
.records-page :is(.records-empty,.records-storage-error) h2{font-size:27px;line-height:1.3;margin:0 0 12px}
.records-page :is(.records-empty,.records-storage-error) p{font-size:16px;line-height:1.75;max-width:700px}
.records-page :is(.records-empty,.records-storage-error) .btn{display:inline-flex;min-height:48px;font-size:16px;cursor:pointer}
.records-storage-error{background:#fff1ee;border-color:#cf8f87}
.records-privacy{border-top:1px solid var(--line);margin-top:38px;padding-top:24px}
.records-page .records-privacy h2{font-size:20px;line-height:1.3;margin:0 0 10px}
.records-page .records-privacy p{font-size:14px;line-height:1.75;color:var(--muted);margin:0 0 10px}
@media(max-width:760px){.records-controls{grid-template-columns:1fr 1fr;padding:18px;gap:15px 10px}.record-search{grid-column:1/-1}.records-controls .record-reset{grid-column:1/-1}.records-page .record-search-help{margin:0}.record-card{padding:20px}.records-page .record-card h2{font-size:23px}}
@media(max-width:480px){.records-page{padding:30px 16px 36px}.records-page .lead{font-size:20px}.records-actions{display:grid}.records-actions .btn{font-size:15px}.records-summary>div{padding:16px 10px}.records-summary strong{font-size:29px}.records-summary span{font-size:12px}.records-page .record-card h2{font-size:22px}.record-card{padding:18px}.records-empty,.records-storage-error{padding:22px}.records-page .records-empty h2{font-size:25px}}
