#pageAssistant{display:none;--assistant-ink:var(--shell);--assistant-muted:var(--shell-muted);font:400 18px/1.5 NewsreaderBrand,Georgia,serif;font-optical-sizing:none;font-variation-settings:"opsz" 32;color:var(--assistant-ink);-webkit-font-smoothing:antialiased}
body.assistant-enabled #pageAssistant{display:block}
#pageAssistant *{box-sizing:border-box}
#pageAssistant button,#pageAssistant textarea{font:inherit}
#pageAssistant button{cursor:pointer}
#pageAssistant button:focus-visible,#pageAssistant a:focus-visible,#pageAssistant textarea:focus-visible,.assistant-explain:focus-visible{outline:2px solid var(--shell);outline-offset:4px}
.assistant-panel{display:none}
.is-open .assistant-panel{display:flex;flex-direction:column;position:fixed;z-index:1010;inset:calc(var(--assistant-top,0px) + 12px) 12px auto;height:calc(var(--assistant-vh,100dvh) - 24px);border:1px solid var(--line-strong);border-top:2px solid var(--oxblood);border-radius:7px;background:var(--ground);box-shadow:inset 0 1px 0 #f6f4ef08,0 20px 60px #0006;overflow:hidden}
#pageAssistant.is-open:not(.is-desktop):before{content:"";position:fixed;inset:0;z-index:1005;background:#050607c7;backdrop-filter:blur(8px)}
.assistant-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--line);flex-shrink:0}
.assistant-heading{font-size:26px;line-height:1.06;font-weight:400;letter-spacing:-.025em}
.assistant-context{display:block;font:10px/1.5 var(--mono);letter-spacing:.035em;text-transform:uppercase;color:var(--glacier);margin-top:8px}
.assistant-close{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:inherit;font-size:24px!important;transition:background .2s,transform .2s}
.assistant-close:is(:hover,:focus-visible){background:var(--shell);color:var(--slate);border-color:var(--shell);box-shadow:0 0 0 3px #f6f4ef1f}
.assistant-messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:20px 18px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}
.assistant-message+.assistant-message{margin-top:20px}
.assistant-message-label{display:block;font:10px/1.5 var(--mono);letter-spacing:.035em;text-transform:uppercase;color:var(--glacier);margin-bottom:8px}
.assistant-message p{font-size:18px;line-height:1.45;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--assistant-ink)}
.assistant-message.user{background:#9a334012;border-left:2px solid var(--oxblood);padding:12px}
.assistant-suggestions{display:flex;flex-direction:column;gap:6px;padding:0 16px 10px;flex-shrink:0}
.assistant-suggestions button{border:1px solid var(--line);border-radius:3px;background:transparent;color:inherit;text-align:left;padding:9px 11px;font-size:16px!important;line-height:1.3;transition:background .2s,border-color .2s,transform .2s}
.assistant-suggestions button:is(:hover,:focus-visible){background:var(--shell);color:var(--slate);border-color:var(--shell);box-shadow:0 0 0 2px #f6f4ef12;transform:translateX(2px)}
.assistant-form{display:flex;align-items:flex-end;gap:8px;margin:0 16px;padding:10px;border:1px solid var(--line-strong);border-radius:7px;background:var(--ground-base);flex-shrink:0}
.assistant-form:focus-within{border-color:var(--shell);box-shadow:0 0 0 2px #f6f4ef12}
.assistant-form textarea{resize:none;width:100%;min-width:0;min-height:44px;max-height:100px;border:0;background:transparent;color:inherit;padding:3px;line-height:1.4;font-size:18px!important;outline-offset:1px!important}
.assistant-form textarea::placeholder{color:var(--shell-muted)}
.assistant-send{display:grid;place-items:center;flex:0 0 44px;height:44px;border:1px solid #f6f4ef3d;border-radius:7px;background:linear-gradient(180deg,#A13B48,#8B2D39);color:var(--shell);box-shadow:inset 0 1px 0 #ffffff14,0 4px 14px #0003;transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.assistant-send:not(:disabled):is(:hover,:focus-visible){background:var(--shell);color:#63212C;border-color:var(--shell);transform:translateY(-2px);box-shadow:0 0 0 3px #f6f4ef24,0 8px 24px #0005}
.assistant-send:disabled{opacity:.4;cursor:default!important}
.assistant-status{min-height:15px;margin:5px 18px 0;font:10px/1.5 var(--mono);color:var(--assistant-muted)}
.assistant-privacy{font:10px/1.5 var(--mono);margin:3px 18px 12px;color:var(--assistant-muted);flex-shrink:0}
.assistant-privacy a{color:inherit;text-underline-offset:3px}
.assistant-launcher{position:fixed;z-index:1000;top:66px;right:24px;display:flex;align-items:center;gap:8px;min-height:40px;padding:9px 13px;border:1px solid var(--line-strong);border-radius:7px;background:var(--ground);color:var(--assistant-ink);box-shadow:0 4px 20px #0003;font-size:16px!important;line-height:1.2;transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.assistant-launcher:is(:hover,:focus-visible){background:var(--shell);color:var(--slate);border-color:var(--shell);transform:translateY(-2px);box-shadow:0 0 0 3px #f6f4ef1f,0 8px 24px #0005}
.assistant-launcher[hidden]{display:none!important}
.assistant-explain{display:inline;border:0;border-radius:3px;padding:0;background:rgba(154,51,64,.24);box-shadow:0 0 0 2px rgba(154,51,64,.24);color:inherit;font:inherit;text-align:inherit;text-decoration:none;cursor:pointer;transition:background-color .18s,box-shadow .18s,color .18s}
.assistant-explain:is(:hover,:focus-visible){background:var(--oxblood);box-shadow:0 0 0 3px var(--oxblood);color:var(--shell);text-decoration:none;text-shadow:none}
@media(min-width:1280px) and (min-height:700px){
 html.js body.chapter-pages.assistant-enabled .panel-inner{padding-right:440px!important}
 .is-desktop.is-open .assistant-panel{inset:50% 40px auto auto;transform:translateY(-50%);width:336px;height:min(640px,calc(100dvh - 164px))}
 .assistant-launcher{top:auto;bottom:104px;right:40px}
}
@media(max-height:500px){.assistant-launcher{top:8px;right:212px}.assistant-header{padding:6px 12px}.assistant-suggestions{display:none}.assistant-messages{padding:12px 16px}.assistant-privacy{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){#pageAssistant button,.assistant-explain{transition:none}}

#pageAssistant button:active:not(:disabled){transform:none;box-shadow:inset 0 2px 4px #0003}
@media(prefers-reduced-motion:reduce){#pageAssistant button{transform:none!important}}
