.quote-card{padding:32px 0;border-top:1px solid var(--line)}.quote-card blockquote{margin:0 0 24px;padding:0 0 0 22px;border-left:2px solid var(--green);font:26px/1.65 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere}.quote-credit{font:13px/1.7 'Segoe UI',sans-serif;margin:0 0 18px}.quote-credit span{display:block;color:var(--muted);margin-top:4px}.quote-actions{display:flex;gap:8px 24px;flex-wrap:wrap;font:12px 'Segoe UI',sans-serif;color:var(--green)}.quote-actions button,.quote-actions a{padding:10px 0}.quote-empty{font:18px/1.8 Georgia,serif;padding:30px 0}.work-quotes{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0}.work-quotes>summary{font:25px/1.4 Georgia,serif;padding:23px 0;cursor:pointer}.work-quotes>summary>span{display:inline-block;vertical-align:top;max-width:90%}.work-quotes small{display:block;font:12px 'Segoe UI',sans-serif;color:var(--muted);margin-top:10px}.work-quotes .quote-card blockquote{font-size:23px}.quotes-all{display:inline-block;font:13px 'Segoe UI',sans-serif;color:var(--green);padding:15px 0 24px}.quoted-line{position:relative;background:var(--wash);box-shadow:-10px 0 var(--wash);scroll-margin-top:50px}.quoted-line::before{content:"";position:absolute;left:-12px;top:0;bottom:0;width:2px;background:var(--green);pointer-events:none}.quote-notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:20;max-width:90%;width:max-content;background:var(--ink);color:var(--paper);padding:14px 18px;border-radius:4px;font:13px/1.6 'Segoe UI',sans-serif}.quote-copy-dialog{inset:0;margin:auto;width:min(560px,92vw);height:auto;max-height:90dvh;padding:24px;border:1px solid var(--line);border-radius:6px}.quote-copy-dialog h2{font:25px Georgia,serif}.quote-copy-dialog p{font:14px/1.7 'Segoe UI',sans-serif}.quote-copy-dialog textarea{box-sizing:border-box;width:100%;height:200px;padding:12px;background:var(--paper);color:var(--ink);border:1px solid var(--line);font:17px/1.6 Georgia,serif}.quote-copy-dialog button{padding:14px 0;color:var(--green)}@media(max-width:600px){.quote-card{padding:26px 0}.quote-card blockquote,.work-quotes .quote-card blockquote{font-size:22px;padding-left:16px}.quote-actions{gap:4px 18px}.work-quotes>summary{font-size:23px}}

.quotes-list-actions{display:flex;gap:8px 22px;flex-wrap:wrap;justify-content:flex-end}.quotes-list-actions button{min-height:40px}@media(max-width:600px){.saved-status:has(.quotes-list-actions){align-items:flex-start;flex-direction:column;gap:0}.quotes-list-actions{justify-content:flex-start}}

/* Equal filter fields; copy actions use the quiet text-link treatment. */
.app-main .quotes-page .reader-filters>label{flex:1 1 0;min-width:0}
.app-main button[data-copy-list],.app-main button[data-copy-quote]{border:0;border-radius:0;background:transparent;box-shadow:none;padding:10px 0;color:var(--green);font:13px/1.6 'Segoe UI',sans-serif;text-align:left}
.app-main button[data-copy-quote]{font-size:12px}
.app-main button[data-copy-list]:hover,.app-main button[data-copy-quote]:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.app-main .quotes-page .reader-filters>label{flex-basis:100%}}

.quotes-page{max-width:760px;margin:auto}.quotes-page .toolbar{margin:30px 0;align-items:end}.quotes-page .toolbar label:first-child{flex:1}.quotes-status{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:25px 0}.quotes-page .pagination form{display:flex;gap:8px;align-items:end;margin-left:auto}.quotes-page .pagination input[type=number]{width:85px}#text mark[data-quote-highlight]{background:transparent;color:inherit;scroll-margin:60px}#text.has-quote-highlight{position:relative;isolation:isolate}#text.has-quote-highlight::before{content:"";position:absolute;z-index:-1;pointer-events:none;left:-12px;right:0;top:var(--quote-top);height:var(--quote-height);background:var(--wash);border-left:2px solid var(--green)}.quote-copy-dialog::backdrop{background:rgb(30 27 25 / 36%)}.quote-copy-dialog{background:var(--paper);color:var(--ink)}@media(max-width:600px){.quotes-status{align-items:start;flex-direction:column}.quotes-page .toolbar label{width:100%}}

.quotes-status .quotes-list-actions{align-items:center;font:13px/1.6 "Segoe UI",sans-serif}.quotes-list-actions .reader-filter-reset{padding:10px 0}@media(max-width:600px){.quotes-status .quotes-list-actions{justify-content:flex-start}}
/* Copy is a button and context is a link; keep their text metrics identical. */
.app-main .quote-actions{align-items:baseline;font:12px/1.6 'Segoe UI',sans-serif}
.app-main .quote-actions>button,.app-main .quote-actions>a{font:inherit;line-height:inherit;margin:0;padding:10px 0;border:0}
.app-main .quote-actions>button:hover,.app-main .quote-actions>a:hover{text-decoration:underline;text-underline-offset:3px}
