/* RiLibro existing brand tokens are canonical; this file owns only request UI. */
#rilibro-request-dialog { border: 0; border-radius: 12px; padding: 28px; width: min(560px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow: auto; color: #222321; background: #fff; }
#rilibro-request-dialog::backdrop { background: rgb(0 22 48 / 65%); }
#rilibro-request-dialog h2 { font: 700 1.35rem/1.35 Quicksand, sans-serif; margin-bottom: 18px; overflow-wrap: anywhere; }
#rilibro-request-dialog p { margin-bottom: 14px; }
.rilibro-dialog-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
#rilibro-request-dialog button, .rilibro-operation button { font: inherit; cursor: pointer; min-height: 44px; padding: 10px 18px; border: 1px solid #526172; border-radius: 6px; background: #fff; color: #222321; }
#rilibro-request-dialog [data-rilibro-confirm], .rilibro-operation button { background: var(--primary-color, #247f7e); color: #fff; border-color: var(--primary-color, #247f7e); font-weight: 700; }
#rilibro-request-dialog :focus-visible, .rilibro-request :focus-visible, .rilibro-operation :focus-visible { outline: 3px solid #149597; outline-offset: 4px; }
.rilibro-request button:disabled, #rilibro-request-dialog button:disabled { opacity: .65; cursor: wait; }
.rilibro-operation { margin: 0; padding: 24px 16px; background: #f9f8f4; color: #222321; font: 1rem/1.6 Arial, sans-serif; }
.rilibro-operation main { max-width: 620px; padding: 28px; margin: 4vh auto; background: #fff; border-radius: 12px; overflow-wrap: anywhere; }
.rilibro-operation h1 { font-size: 1.6rem; line-height: 1.3; }
.rilibro-operation .rilibro-brand { color: var(--primary-color, #247f7e); font-weight: 700; font-size: 1.7rem; }
.rilibro-operation a { color: #247f7e; text-decoration: underline; }
.rilibro-operation form { margin-top: 24px; }
@media (max-width: 440px) { .rilibro-dialog-buttons button { width: 100%; } .rilibro-operation main { padding: 20px; } }
@media (forced-colors: active) { #rilibro-request-dialog button, .rilibro-operation button { border: 1px solid ButtonText; } }
