/* Reading and interaction refinements for the existing Relay design. */
:root{--muted:#62635c;--secondary:#62655a;--focus:#8a4732;--control-line:#899080}
.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:10px 16px;background:#fff;border:2px solid var(--focus);border-radius:10px;transform:translateY(-180%);font-size:15px}
.skip-link:focus{transform:none}
:where(button,a,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:4px}
[tabindex='-1']:focus{outline:none}
button,.view-switch button,.mail-back,.linked-delivery,.month-heading button,.demo-tools button,.demo-tools summary,.delivery-history summary{min-height:44px}
.month-heading button{min-width:44px}
button.primary{font-size:14px}
input,textarea,select,#reply-form textarea,#feedback-form textarea,#booking-form input,.version-picker select{font-size:16px;border-color:var(--control-line)}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{color:#686a61;opacity:1}
h1,h2,h3,.document-description,.meeting-card>div,.reader-heading,.delivery-preview,.delivery-response,.intro-copy{min-width:0;overflow-wrap:anywhere}
.label,.meta,.sidebar-project small,.sidebar-note,header>span,header>.breadcrumb,.document-description p,.thread-top,.thread-top small,.thread-preview,.mail-meta time,.reply-footer small,.meeting-card small,.meeting-date span,.calendar-legend,.weekdays,.document-note,.preview-caption,.current-preview span,.delivery-preview>.demo-note,.demo-note,footer,.demo-tools,.document-filters span,.steps span,.next,.action-strip strong{color:var(--secondary)}
.intro-copy>.label,.document-description .label{font-size:12px}
.thread-top,.thread-top small,.mail-meta time,.reply-footer small,.meeting-card small,.calendar-legend,.weekdays,.document-note,.preview-caption,.current-preview span,.delivery-preview>.demo-note,footer{font-size:12px}
.document-description p{font-size:13px}
.document-item .pill,.delivery-status-heading .pill{font-size:12px}
.document-item .document-approved,.document-approved{color:#4d633b!important}
.document-viewer{min-width:0;max-width:100%;scroll-padding:12px}
.document-text{margin:12px 0 18px}
.document-text summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--secondary);list-style:inside}
.document-text summary::before{content:'+';font-size:19px}
.document-text[open] summary::before{content:'−'}
.document-text p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8;color:var(--ink);border-top:1px solid var(--line);padding-top:14px}
.preparation-link{min-height:44px;max-width:100%;padding:4px 0;border:0;background:transparent;font-size:13px;color:#7c4632;text-align:left;text-decoration:underline;text-underline-offset:4px;white-space:normal}
.preparation-link:hover{background:transparent;color:#5e3525}
.client-preparation{margin:26px 0 10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.client-preparation>summary{cursor:pointer;min-height:54px;padding:14px 0;font-size:15px;line-height:1.6;list-style:inside}
.client-preparation>summary span{display:inline-block;margin-left:10px;font-size:12px;color:var(--secondary)}
.preparation-body{padding:0 0 18px}
.preparation-body>p{font-size:14px;margin:6px 0 16px;color:var(--secondary)}
.content-check{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:12px;align-items:start;padding:15px 0;border-top:1px solid var(--line);min-height:64px;cursor:pointer}
input.preparation-checkbox{display:inline-block;width:20px;height:20px;min-height:20px;padding:0;margin:3px 0 0;accent-color:#4f5d41;border-radius:4px}
.content-check strong{display:block;font-size:15px;font-weight:500}
.content-check small{display:block;font-size:13px;line-height:1.65;color:var(--secondary);margin-top:3px}
.preparation-state{font-size:12px;color:var(--secondary);padding-top:3px}
#preparation-guidance{font-size:13px;line-height:1.8;margin:17px 0 5px}
.brief-dialog{max-width:730px;background:var(--paper)}
.brief-top{display:flex;justify-content:space-between;align-items:start;gap:16px}
.brief-top h2{font-family:'Times New Roman',Times,serif;font-size:31px;font-weight:400;line-height:1.2}
.brief-dialog h3{font-family:'Times New Roman',Times,serif;font-size:23px;font-weight:400;line-height:1.3;margin:25px 0 8px}
.brief-dialog p,.brief-dialog li{font-size:15px;line-height:1.8;color:var(--muted)}
.brief-dialog>.meta{font-size:13px;margin:15px 0 22px}
.brief-dialog ul{padding-left:22px;margin:9px 0}
.brief-dialog li{margin:6px 0}
.brief-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border-top:1px solid var(--line);margin-top:22px}
.brief-roles p{margin-bottom:0}
#feedback-version-hint{font-size:13px}
.dialog-title{line-height:1.3}
dialog{scroll-padding-block:24px;overscroll-behavior:contain}
@media(max-width:900px){.content-check{grid-template-columns:20px minmax(0,1fr);gap:8px 12px}.preparation-state{grid-column:2;padding-top:0}.panel-heading{flex-wrap:wrap}.panel h2{max-width:none}}
@media(max-width:700px){
 .project-sidebar nav button{min-width:0;line-height:1.4}
 .project-sidebar nav button span{min-width:0}
 .page-heading{flex-wrap:wrap;gap:8px}
 .page-heading .primary{font-size:14px;margin-top:0;max-width:100%}
 .panel-heading{align-items:center}
 .view-switch button{min-height:44px;font-size:13px}
 .current-preview span{font-size:12px}
 .meeting-card>div:nth-child(2){min-width:0;overflow-wrap:anywhere}
 .meeting-card small{font-size:12px}
 .document-item>button{max-width:100%;white-space:normal}
 .document-description .label{font-size:12px;letter-spacing:.03em}
 .document-description p,.document-feedback .mail-meta time{font-size:13px}
 .mail-message p{font-size:15px}
 .version-picker{flex-direction:column;align-items:stretch}
 .version-picker select{max-width:100%;width:100%;font-size:16px}
 .brief-roles{grid-template-columns:minmax(0,1fr);gap:0}
 .preparation-link,.document-text summary{font-size:14px}
 .client-preparation>summary span{margin-left:5px;font-size:13px}
 dialog,.delivery-dialog{position:fixed;top:calc(var(--visible-top,0px) + 10px);bottom:auto;margin:0 auto;max-height:calc(var(--visible-height,100dvh) - 20px)}
 dialog:not(.delivery-dialog){padding:20px;width:calc(100% - 24px)}
 .delivery-top{position:sticky;top:0;z-index:2;background:#fcfcf8;align-items:flex-start}
 .delivery-top h2{line-height:1.2}
 .brief-top h2{font-size:29px}
 .delivery-preview,.delivery-response{min-width:0}
}

.version-picker,.calendar-grid p,.calendar-grid time small,.document-pagination span,.document-viewer figcaption{color:var(--secondary)}
.view-switch button{color:var(--secondary)}
.mail-filters span,.document-filters span{font-size:12px;color:var(--secondary)}
.steps li::before{font-size:12px;color:var(--secondary)}
@media(max-width:700px){.brief-top{position:sticky;top:0;z-index:2;background:var(--paper);padding-bottom:10px}}
