/* Journal-inspired library; keep the rest of Community and the practice runner unchanged. */
.ic-resource-journal {--ic-resource-card-accent:#5c6f5c;max-width:1180px;margin:auto}
html.dark-mode .ic-resource-journal {--ic-resource-card-accent:#7fa87f}
.ic-resource-masthead {padding:8px 0 32px}
.ic-resource-masthead>div {display:flex;justify-content:space-between;align-items:end;gap:32px;margin-top:14px}
.ic-resource-journal .ic-resource-masthead h1 {font-family:'Instrument Serif',Georgia,serif;font-size:clamp(42px,5vw,66px);font-weight:400;letter-spacing:-1.8px;line-height:1.02;margin:0}
.ic-resource-masthead h1 em {font-family:inherit;color:var(--ic-accent)}
.ic-resource-masthead>div>p {max-width:300px;font-size:15px;line-height:1.8;color:var(--ic-muted);margin:0 0 3px}
.ic-resource-masthead>button {margin-top:20px}
.ic-resource-edition {display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--ic-ink);border-bottom:1px solid var(--ic-line);padding:14px 0;font-size:11px;letter-spacing:1.2px;text-transform:uppercase}
.ic-resource-edition>span:last-child {color:var(--ic-muted)}
.ic-resource-feature {display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:32px;align-items:center;margin-top:20px;padding:28px 24px;border:1px solid var(--ic-line);border-radius:14px}
.ic-resource-feature-art {display:grid;place-items:center;min-height:340px;border-radius:4px;background:var(--ic-tint);overflow:hidden;padding:34px}
.ic-resource-paper {width:200px;max-width:88%;padding:22px;transform:rotate(-7deg);background:var(--ic-card);color:var(--ic-accent);border:1px solid currentColor;box-shadow:8px 9px 0 -1px var(--ic-tint),8px 9px 0 currentColor;display:flex;flex-direction:column;gap:10px}
.ic-resource-paper small {font:500 10px/1.5 Inter,Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}
.ic-resource-paper>span {font:italic 104px/.95 'Instrument Serif',Georgia,serif;letter-spacing:-5px;margin:7px 0 12px}
.ic-resource-paper i {height:1px;background:currentColor;opacity:.45}.ic-resource-paper i:nth-last-child(2) {width:65%}.ic-resource-paper small:last-child {font-size:9px;letter-spacing:.1px;margin-top:12px}
.ic-resource-journal .ic-resource-feature h2 {font:400 clamp(32px,3.5vw,46px)/1.12 'Instrument Serif',Georgia,serif;letter-spacing:-.7px;margin:14px 0 18px}
.ic-resource-feature h2 a {font:inherit;text-decoration:none;color:var(--ic-ink)}
.ic-resource-feature-copy>p:not(.ic-eyebrow) {font-size:15px;line-height:1.85;color:var(--ic-muted)}
.ic-resource-feature-meta {display:flex;flex-wrap:wrap;gap:6px 9px;margin:18px 0 8px;font-size:12px;color:var(--ic-muted)}
.ic-resource-journal .ic-resource-text-link {display:inline-flex;align-items:center;gap:13px;min-height:44px;color:var(--ic-accent);font-size:14px;font-weight:650;text-decoration:none}
.ic-resource-journal .ic-resource-text-link,.ic-resource-journal .ic-actions>a.ic-small-link {cursor:pointer;text-decoration:none;transition:transform 160ms ease}
.ic-resource-text-link>span[aria-hidden] {display:inline-block;transition:transform 160ms ease}
.ic-resource-journal .ic-resource-text-link:focus-visible,.ic-resource-journal .ic-actions>a.ic-small-link:focus-visible {outline:2px solid var(--ic-accent);outline-offset:4px;border-radius:2px}
/* Match .ielts-question-card in pages/ielts_hub.html. */
.ic-resource-journal [data-resource-tile] {position:relative;cursor:pointer;background:var(--ic-card);border-color:var(--ic-line);border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.04);transition:border-color .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1)}
.ic-resource-journal [data-resource-tile]::before {content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ic-line);border-radius:12px 0 0 12px;pointer-events:none;transition:background-color .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1)}
.ic-resource-journal [data-resource-tile]:focus-within {border-color:var(--ic-resource-card-accent);box-shadow:0 4px 12px rgba(92,111,92,.12)}
.ic-resource-journal [data-resource-tile]:focus-within::before {background:var(--ic-resource-card-accent);width:6px}
@media(hover:hover) and (pointer:fine) {
 .ic-resource-journal .ic-resource-text-link:hover,.ic-resource-journal .ic-actions>a.ic-small-link:hover {transform:translateY(-1px)}
 .ic-resource-text-link:hover>span[aria-hidden] {transform:translateX(2px)}
 .ic-resource-journal [data-resource-tile]:hover {border-color:var(--ic-resource-card-accent);box-shadow:0 4px 12px rgba(92,111,92,.12);transform:translateY(-2px)}
 .ic-resource-journal [data-resource-tile]:hover::before {background:var(--ic-resource-card-accent);width:6px}
}
@media(max-width:768px) {.ic-resource-journal [data-resource-tile]:hover {transform:none}}
.ic-resource-feature h2 a:hover {color:var(--ic-accent);text-decoration:none}
@media(prefers-reduced-motion:reduce) {
 .ic-resource-journal .ic-resource-text-link,.ic-resource-journal .ic-actions>a.ic-small-link,.ic-resource-text-link>span[aria-hidden],.ic-resource-journal [data-resource-tile],.ic-resource-journal [data-resource-tile]::before {transition:none!important;transform:none!important}
}
.ic-resource-feature-copy>button {margin-left:20px}
.ic-resource-browse-head {display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:30px}
.ic-resource-journal .ic-resource-browse-head h2 {font-size:13px;text-transform:uppercase;letter-spacing:1.2px;margin:0}
.ic-resource-journal .ic-resource-count {margin:0;font-size:12px}
.ic-resource-journal .ic-resource-filters {background:transparent;border:0;border-radius:0;padding:18px 0 12px;gap:12px!important}
.ic-resource-journal .ic-resource-grid {gap:16px 24px;align-items:stretch;margin-top:8px}
.ic-resource-story {min-width:0;display:flex;flex-direction:column;padding:24px;border:1px solid transparent;border-bottom-color:var(--ic-line);border-radius:12px}
.ic-resource-category {color:var(--ic-accent);font-weight:600}
.ic-resource-story .ic-meta {font-size:12px}
.ic-resource-journal .ic-resource-story h3 {font:400 30px/1.15 'Instrument Serif',Georgia,serif;letter-spacing:-.3px;margin:15px 0;overflow-wrap:anywhere}
.ic-resource-story h3 a {font:inherit;text-decoration:none}
.ic-resource-story h3 a:hover {color:var(--ic-accent);text-decoration:none}
.ic-resource-excerpt {font-size:14px;line-height:1.85;color:var(--ic-muted);margin:0 0 14px}
.ic-resource-story .ic-resource-file {font-size:12px;margin:0 0 8px}
.ic-resource-journal .ic-resource-story .ic-actions {margin-top:auto;gap:12px 20px}
.ic-resource-journal .ic-resource-empty {padding:30px 0}
@media(max-width:1000px) {.ic-resource-feature {gap:26px}.ic-resource-feature-art {min-height:310px;padding:25px}.ic-resource-masthead>div {gap:20px}.ic-resource-masthead>div>p {max-width:240px}}
@media(max-width:650px) {
 .ic-resource-masthead {padding:0 0 24px}.ic-resource-masthead>div {display:block}.ic-resource-masthead>div>p {margin-top:18px;max-width:none}
 .ic-resource-journal .ic-resource-masthead h1 {font-size:46px;letter-spacing:-1px}.ic-resource-edition {font-size:10px;letter-spacing:.7px;gap:10px}
 .ic-resource-feature {grid-template-columns:1fr;gap:24px;padding:18px}.ic-resource-feature-art {min-height:250px;height:250px;padding:20px}.ic-resource-paper {width:160px;padding:15px;gap:6px}.ic-resource-paper>span {font-size:72px;margin:3px 0 8px}.ic-resource-paper small {font-size:8px}.ic-resource-paper small:last-child {margin-top:6px;font-size:8px}
 .ic-resource-journal .ic-resource-feature h2 {font-size:36px}.ic-resource-browse-head {margin-top:26px}.ic-resource-story {padding:22px 18px}.ic-resource-journal .ic-resource-story h3 {font-size:29px}
 .ic-resource-journal .ic-resource-filters {gap:8px!important}.ic-resource-journal .ic-resource-grid {grid-template-columns:1fr}
}

/* One search field, with its submit action inside the same outline. */
.ic-resource-journal .ic-resource-search {position:relative;display:flex;align-items:center;border:1px solid var(--ic-line);border-radius:8px;background:var(--ic-card)}
.ic-resource-journal .ic-resource-search-label {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.ic-resource-journal .ic-resource-search input {flex:1;min-width:0;border:0;background:transparent;outline:0;box-shadow:none;padding:11px 12px}
.ic-resource-journal .ic-resource-search:focus-within {outline:2px solid var(--ic-accent);outline-offset:2px}
.ic-resource-search-button {display:grid;place-items:center;width:44px;height:44px;min-width:44px;flex:none;margin:2px;border:0;border-radius:6px;padding:10px;background:transparent;color:var(--ic-accent);cursor:pointer}
.ic-resource-search-button svg {width:21px;height:21px}
.ic-resource-search-button:hover {background:var(--ic-tint)}
.ic-resource-search-button:focus-visible {outline:2px solid var(--ic-accent);outline-offset:-3px}
@media(max-width:600px) {.ic-resource-journal .ic-resource-filters {grid-template-columns:minmax(0,1fr)}.ic-resource-journal .ic-resource-search {grid-column:1/-1}}

/* Resource detail pages keep the library's editorial hierarchy and readable copy. */
.ic-resource-detail {max-width:1000px}
.ic-resource-breadcrumb {display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 28px;font-size:13px;color:var(--ic-muted)}
.ic-resource-breadcrumb a {display:inline-flex;align-items:center;gap:8px;min-height:32px;text-decoration:none;color:var(--ic-accent)}
.ic-resource-breadcrumb a:focus-visible {outline:2px solid var(--ic-accent);outline-offset:3px;border-radius:2px}
.ic-resource-detail-header {padding:24px 0 30px;border-top:1px solid var(--ic-ink);border-bottom:1px solid var(--ic-line)}
.ic-resource-detail .ic-resource-detail-header h1 {max-width:900px;margin:18px 0 20px;font:400 clamp(36px,4vw,54px)/1.12 'Instrument Serif',Georgia,serif;letter-spacing:-.8px;overflow-wrap:anywhere}
.ic-resource-detail-meta {display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--ic-muted)}
.ic-resource-detail-date {margin:0;color:var(--ic-muted);font-size:13px}
.ic-resource-detail-layout {display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:start;padding:32px 0}
.ic-resource-detail-layout[data-format=pdf] {grid-template-columns:minmax(0,1fr) 270px}
.ic-resource-detail .ic-resource-detail-copy h2 {margin:0 0 16px;font:400 28px/1.2 'Instrument Serif',Georgia,serif;letter-spacing:-.2px}
.ic-resource-detail-copy .ic-body {max-width:65ch;margin:0;font-size:16px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ic-muted)}
.ic-resource-download {display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:24px;background:var(--ic-card);border:1px solid var(--ic-line);border-radius:12px}
.ic-resource-document-icon {display:grid;place-items:center;width:52px;height:60px;border-radius:8px;background:var(--ic-tint);color:var(--ic-accent)}
.ic-resource-document-icon svg {width:30px;height:36px}
.ic-resource-detail .ic-resource-download h2 {margin:0;font-size:18px;line-height:1.4;letter-spacing:0}
.ic-resource-download p {margin:0;color:var(--ic-muted);font-size:14px}
.ic-resource-download .ic-button {width:100%;justify-content:space-between;min-height:46px;margin-top:4px}
.ic-resource-download small {color:var(--ic-muted);font-size:12px}
.ic-resource-detail-footer {border-top:1px solid var(--ic-line);padding-top:20px}
@media(max-width:700px) {
 .ic-resource-breadcrumb {margin-bottom:20px}
 .ic-resource-detail-header {padding:20px 0 24px}
 .ic-resource-detail .ic-resource-detail-header h1 {font-size:38px;letter-spacing:-.5px}
 .ic-resource-detail-layout,.ic-resource-detail-layout[data-format=pdf] {grid-template-columns:1fr;gap:24px;padding:26px 0}
 .ic-resource-download {padding:20px}
}
