.workspace-reader {
    --bg-shell: #f3f0e8;
    --bg-surface: #fffdf8;
    --bg-elevated: #f7f3ea;
    --border-default: #ded8ca;
    --border-muted: #ebe6da;
    --text-primary: #25231f;
    --text-secondary: #5f5a50;
    --text-tertiary: #817a6d;
    --accent: #9a5d35;
    --accent-hover: #7f4827;
    --accent-subtle: rgba(154, 93, 53, 0.1);
    --nav-bg: #25231f;
}

.reader-top-nav .nav-brand-icon { background: #9a5d35; }

.reader-welcome {
    max-width: 58rem;
    padding: clamp(2rem, 6vw, 4.5rem) 0 clamp(1.75rem, 4vw, 3rem);
}

.reader-welcome .page-title {
    max-width: 16ch;
    font-size: clamp(2.25rem, 6vw, 4.6rem);
    line-height: 1.02;
}

.reader-intro {
    max-width: 42rem;
    margin-top: 1rem;
    font-family: var(--font-headline);
    font-size: clamp(1rem, 2vw, 1.2rem);
    line-height: 1.65;
}

.reader-home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

.reader-boundary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.reader-boundary-card {
    min-height: 13rem;
    padding: 1.5rem;
    border: 1px solid var(--border-default);
    border-radius: 0.75rem;
    background: var(--bg-surface);
}

.reader-boundary-card .section-title { margin-top: 0.75rem; }

.reader-boundary-card p:not(.kicker) {
    margin-top: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

.reader-boundary-card .link { display: inline-block; margin-top: 1rem; }

.reader-footer {
    padding: 2rem 1rem;
    color: var(--text-tertiary);
    text-align: center;
    font-family: var(--font-headline);
    font-size: 0.82rem;
}

.reader-home-hero { display: flex; align-items: end; justify-content: space-between; gap: 2rem; padding: clamp(2.5rem, 6vw, 5rem) 0 2.5rem; border-bottom: 1px solid var(--border-default); }
.reader-home-hero h1 { max-width: 16ch; margin-top: .7rem; font: 700 clamp(2.4rem, 6vw, 4.6rem)/1.02 var(--font-headline); }
.reader-home-hero p:not(.kicker) { max-width: 38rem; margin-top: 1rem; color: var(--text-secondary); font: 600 1.05rem/1.6 var(--font-headline); }
.reader-operations-alert { display: flex; justify-content: space-between; gap: 1rem; margin-top: 1.25rem; padding: .8rem 1rem; border: 1px solid #d89a48; border-radius: .6rem; background: #fff5df; color: #71450d; font-size: .84rem; }
.reader-operations-alert a { font-weight: 700; text-decoration: underline; }
.reader-shelf { padding: 2.5rem 0 .5rem; }
.reader-shelf-head { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.reader-shelf-head h2 { margin-top: .4rem; font: 700 clamp(1.6rem, 3vw, 2.2rem)/1.1 var(--font-headline); }
.reader-shelf-head > a { color: var(--accent); font-size: .82rem; font-weight: 700; }
.reader-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.reader-library-card { min-width: 0; border: 1px solid var(--border-default); border-radius: .75rem; background: var(--bg-surface); overflow: hidden; }
.reader-card-main { display: grid; grid-template-columns: 9rem minmax(0, 1fr); min-height: 11rem; color: inherit; }
.reader-card-cover { display: grid; place-items: center; min-height: 100%; background: #ded3bd; color: #74533b; font: 700 3rem/1 var(--font-headline); overflow: hidden; }
.reader-card-cover img { width: 100%; height: 100%; object-fit: cover; }
.reader-card-copy { min-width: 0; padding: 1rem; }
.reader-card-channel { color: var(--accent); font: 700 .68rem/1.3 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.reader-card-copy h3 { margin-top: .45rem; font: 700 1.15rem/1.25 var(--font-headline); }
.reader-card-summary { display: -webkit-box; margin-top: .55rem; overflow: hidden; color: var(--text-secondary); font-size: .8rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.reader-card-meta { display: flex; flex-wrap: wrap; gap: .4rem .8rem; margin-top: .75rem; color: var(--text-tertiary); font-size: .72rem; }
.reader-card-progress { height: .3rem; margin-top: .7rem; border-radius: 1rem; background: var(--border-muted); overflow: hidden; }
.reader-card-progress span { display: block; height: 100%; background: var(--accent); }
.reader-empty { padding: 2rem; border: 1px dashed var(--border-default); border-radius: .75rem; text-align: center; }
.reader-empty h3 { font: 700 1.25rem/1.2 var(--font-headline); }
.reader-empty p { margin: .5rem 0; color: var(--text-secondary); }
.reader-library-filters { display: grid; grid-template-columns: minmax(10rem, 1.4fr) repeat(4, minmax(8rem, 1fr)) auto; gap: .65rem; align-items: end; margin-bottom: 1rem; padding: 1rem; border: 1px solid var(--border-default); border-radius: .7rem; background: var(--bg-surface); }
.reader-library-filters label span { display: block; margin-bottom: .3rem; color: var(--text-tertiary); font-size: .68rem; font-weight: 700; text-transform: uppercase; }
.reader-library-filters input, .reader-library-filters select { width: 100%; min-height: 2.75rem; padding: .55rem .65rem; border: 1px solid var(--border-default); border-radius: .45rem; background: var(--bg-shell); color: var(--text-primary); }
.reader-library-filters .btn { min-height: 2.75rem; }
.reader-highlights-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.reader-highlight-card { padding: 1.25rem; border: 1px solid var(--border-default); border-radius: .7rem; background: var(--bg-surface); }
.reader-highlight-card blockquote { margin: .75rem 0; padding-left: 1rem; border-left: 3px solid var(--accent); font: 600 1.05rem/1.55 var(--font-headline); }
.reader-highlight-card > p:not(.kicker) { margin-bottom: .75rem; color: var(--text-secondary); }
.reader-highlight-card a { color: var(--accent); font-weight: 700; }
.reader-highlight-card > span { display: block; margin-top: .25rem; color: var(--text-tertiary); font-size: .72rem; }
.research-mode-tabs { display: flex; gap: .25rem; margin: 1rem 0; padding: .25rem; border: 1px solid var(--border-default); border-radius: .65rem; background: var(--bg-elevated); width: fit-content; }
.research-mode-tabs a { min-height: 2.75rem; padding: .7rem 1rem; border-radius: .45rem; color: var(--text-secondary); font-size: .82rem; font-weight: 700; }
.research-mode-tabs a.is-active { background: var(--bg-surface); color: var(--accent); box-shadow: 0 1px 4px rgba(37, 35, 31, .12); }
.research-query-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .65rem; }
.research-query-row .input-field { width: 100%; min-height: 2.75rem; }
.research-scope-controls { display: grid; grid-template-columns: repeat(3, minmax(10rem, 1fr)); gap: .65rem; margin-top: 1rem; }
.research-scope-controls legend { margin-bottom: .5rem; color: var(--text-tertiary); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.research-scope-controls label { color: var(--text-secondary); font-size: .72rem; font-weight: 700; }
.research-scope-controls select { display: block; width: 100%; min-height: 2.75rem; margin-top: .3rem; }

@media (min-width: 768px) and (max-width: 900px) {
    .workspace-reader .page-btn { min-width: 2.75rem; height: 2.75rem; }
    .reader-library-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .reader-library-filters label:first-of-type { grid-column: span 2; }
    .reader-library-filters .btn { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
    .workspace-reader .btn,
    .workspace-reader button { min-height: 2.75rem; }
    .workspace-reader .page-btn { min-width: 2.75rem; height: 2.75rem; }
    .reader-boundary-grid { grid-template-columns: 1fr; }
    .reader-boundary-card { min-height: auto; }
    .reader-home-actions .btn { min-height: 2.75rem; }
    .reader-home-hero { display: block; }
    .reader-home-actions { margin-top: 1.5rem; }
    .reader-operations-alert { display: grid; }
    .reader-operations-alert a, .reader-shelf-head > a { display: inline-flex; align-items: center; min-height: 2.75rem; }
    .reader-card-grid { grid-template-columns: 1fr; }
    .reader-card-main { grid-template-columns: 6.5rem minmax(0, 1fr); min-height: 9.5rem; }
    .reader-card-summary { -webkit-line-clamp: 3; }
    .reader-library-filters { grid-template-columns: 1fr 1fr; }
    .reader-library-filters label:first-of-type { grid-column: 1 / -1; }
    .reader-highlights-list { grid-template-columns: 1fr; }
    .research-scope-controls { grid-template-columns: 1fr; }
    .research-query-row { grid-template-columns: 1fr; }
    .chat-sidebar-header .btn, .chat-session-item { min-height: 2.75rem; }
}
@media (max-width: 380px) { .reader-library-filters { grid-template-columns: 1fr; } .reader-library-filters label:first-of-type { grid-column: auto; } }
