/* Compact singular-book studio inspired by proven archive layouts, with Rabri-native dialogs. */
.rabri-single-hero{min-height:0!important;padding:22px 0 28px!important}.rabri-single-grid{grid-template-columns:minmax(260px,300px) minmax(0,1fr)!important;gap:clamp(22px,3vw,38px)!important;align-items:start!important}.rabri-single-cover-column{top:88px}.rabri-single-mockup-wrap{width:100%;max-width:300px!important;height:min(42vh,390px)!important;padding:14px!important}.rabri-single-breadcrumb{margin-bottom:9px!important}.rabri-single-copy h1{max-width:920px;margin-bottom:7px!important;font-size:clamp(28px,3.1vw,48px)!important;line-height:1.22!important;letter-spacing:-.025em!important}.rabri-single-author{margin:6px 0 8px}.rabri-single-caption{margin:10px 0!important;padding:11px 14px!important}.rabri-single-caption p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.rabri-single-facts{gap:7px!important;margin:10px 0!important}.rabri-single-facts>div{min-height:58px;padding:8px!important}.rabri-single-stats{gap:7px;margin-top:8px}.rabri-single-stats span{padding:8px!important}
.rabri-single-cover-download{display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;margin-top:10px;padding:7px 12px;border:1px solid var(--rb-palette-steel-blue);border-radius:13px;background:linear-gradient(135deg,var(--rb-palette-steel-blue),var(--rb-palette-cerulean));color:var(--rb-action-fg);-webkit-text-fill-color:var(--rb-action-fg);box-shadow:0 12px 26px color-mix(in srgb,var(--rb-palette-steel-blue) 22%,transparent)}.rabri-single-cover-download>svg{width:21px;height:21px}.rabri-single-cover-download span{display:grid}.rabri-single-cover-download small{color:var(--rb-text-primary);font-size:12px!important}.rabri-single-cover-download strong{color:var(--rb-action-fg);font-size:15px}.rabri-single-cover-download:hover{background:linear-gradient(135deg,var(--rb-palette-cerulean),var(--rb-palette-cerulean))}
.rabri-single-side-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:7px}.rabri-single-side-tools button{min-width:0;min-height:57px;display:grid;place-items:center;align-content:center;gap:2px;padding:5px;border:1px solid var(--rb-line);border-radius:11px;background:var(--rb-surface);color:var(--rb-text);cursor:pointer}.rabri-single-side-tools button svg{width:18px;height:18px;color:var(--rb-accent)}.rabri-single-side-tools button span{font-size:12px;font-weight:800}.rabri-single-side-tools button:hover,.rabri-single-side-tools button:focus-visible,.rabri-single-side-tools button.is-favorite{border-color:var(--rb-accent-text);background:var(--rb-palette-steel-blue);color:var(--rb-action-fg)}.rabri-single-side-tools button:hover :where(svg,span),.rabri-single-side-tools button:focus-visible :where(svg,span),.rabri-single-side-tools button.is-favorite :where(svg,span){color:var(--rb-action-fg)}
.rabri-single-file-shelf{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:15px;margin:13px 0;padding:13px 15px;border:1px solid color-mix(in srgb,var(--rb-palette-steel-blue) 48%,transparent);border-radius:16px;background:linear-gradient(135deg,var(--rb-palette-carbon),var(--rb-palette-cerulean));color:var(--rb-action-fg);box-shadow:0 14px 32px color-mix(in srgb,var(--rb-palette-carbon) 20%,transparent)}.rabri-single-file-shelf>div{display:flex;align-items:center;gap:11px}.rabri-single-file-shelf>div:first-child>span{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--rb-palette-white) 10%,transparent);color:var(--rb-accent-text)}.rabri-single-file-shelf p{display:grid;margin:0}.rabri-single-file-shelf small{color:var(--rb-text-secondary);font-size:12px!important}.rabri-single-file-shelf strong{color:var(--rb-action-fg);font-size:14px}.rabri-single-file-shelf>div:last-child{gap:7px}.rabri-single-file-shelf a{min-height:40px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:1px solid color-mix(in srgb,var(--rb-palette-white) 22%,transparent);border-radius:10px;background:var(--rb-palette-steel-blue);color:var(--rb-action-fg);-webkit-text-fill-color:var(--rb-action-fg);font-size:13px;font-weight:850}.rabri-single-file-shelf a:hover{background:var(--rb-palette-cerulean);border-color:var(--rb-accent-text)}
.rabri-single-utility-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:9px}.rabri-single-utility-bar button{min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 9px;border:1px solid var(--rb-line);border-radius:10px;background:var(--rb-surface);color:var(--rb-text);font-size:13px;font-weight:800;cursor:pointer}.rabri-single-utility-bar button svg{width:17px;height:17px;color:var(--rb-accent)}.rabri-single-utility-bar button:hover,.rabri-single-utility-bar button:focus-visible{border-color:var(--rb-accent-text);background:var(--rb-palette-steel-blue);color:var(--rb-action-fg)}.rabri-single-utility-bar button:hover svg,.rabri-single-utility-bar button:focus-visible svg{color:var(--rb-action-fg)}
.rabri-dialog-share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.rabri-dialog-share-grid :where(a,button){min-height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--rb-line);border-radius:11px;background:var(--rb-surface-2);color:var(--rb-text);font-weight:850;cursor:pointer}.rabri-dialog-share-grid :where(a,button):hover{border-color:var(--rb-accent-text);background:var(--rb-palette-steel-blue);color:var(--rb-action-fg)}

/* Dialogs must fit the viewport and can only scroll vertically. */
.rabri-dialog{max-width:100vw;overflow:hidden;contain:layout paint}
.rabri-dialog__panel,.rabri-dialog__panel--form,.rabri-dialog__panel--preview{box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-width:calc(100vw - 32px);min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
.rabri-dialog__panel--form{width:min(940px,calc(100vw - 32px));padding:clamp(16px,2.4vw,26px)}
.rabri-dialog__panel :where(section,form,label,div,header,figure,dl){min-width:0;max-width:100%}
.rabri-dialog .rabri-contact-card,.rabri-dialog .rabri-contact-form{width:100%;max-width:100%;min-width:0}
.rabri-dialog-contact-shell{display:grid;grid-template-columns:minmax(240px,.78fr) minmax(0,1.5fr);width:100%;min-width:0;overflow:hidden;border:1px solid var(--rb-line);border-radius:22px;background:var(--rb-surface);box-shadow:0 20px 55px color-mix(in srgb,var(--rb-palette-metallic-blue) 12%,transparent)}
.rabri-dialog-contact-info{position:relative;min-width:0;padding:28px;overflow:hidden;background:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--rb-palette-steel-blue) 28%,transparent),transparent 48%),linear-gradient(145deg,var(--rb-palette-cerulean),var(--rb-palette-carbon));color:var(--rb-action-fg)}
.rabri-dialog-contact-info:after{content:"";position:absolute;inset:auto -70px -85px auto;width:210px;height:210px;border-radius:50%;background:color-mix(in srgb,var(--rb-palette-white) 7%,transparent)}
.rabri-dialog-contact-eyebrow{display:inline-flex;padding:5px 10px;border:1px solid color-mix(in srgb,var(--rb-palette-white) 24%,transparent);border-radius:999px;color:var(--rb-text-primary);font-size:12px;font-weight:900;letter-spacing:.1em}
.rabri-dialog-contact-info h3{position:relative;z-index:1;margin:17px 0 9px;color:var(--rb-action-fg);font-size:clamp(24px,2.6vw,36px);line-height:1.4}
.rabri-dialog-contact-info>p{position:relative;z-index:1;margin:0 0 20px;color:var(--rb-text-secondary);line-height:1.85}
.rabri-dialog-contact-points{position:relative;z-index:1;display:grid;gap:9px}
.rabri-dialog-contact-points>span{display:grid;gap:2px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--rb-palette-white) 10%,transparent);border-radius:12px;background:color-mix(in srgb,var(--rb-palette-white) 8%,transparent)}
.rabri-dialog-contact-points b{color:var(--rb-accent-text);font-size:12px}.rabri-dialog-contact-points strong{overflow-wrap:anywhere;color:var(--rb-action-fg);font-size:13px}
.rabri-dialog-contact-form-pane{min-width:0;padding:28px;background:var(--rb-surface)}
.rabri-dialog .rabri-contact-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rabri-dialog .rabri-contact-form :where(input,textarea,select,button){box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0}
.rabri-dialog .rabri-contact-form textarea{resize:vertical;min-height:130px;max-height:260px}
.rabri-dialog .rabri-form-actions{display:flex;justify-content:flex-start}
.rabri-dialog .rabri-form-actions button{width:auto;min-width:150px}
@media(max-width:820px){.rabri-dialog-contact-shell{grid-template-columns:1fr}.rabri-dialog-contact-info{padding:22px}.rabri-dialog-contact-points{grid-template-columns:repeat(3,minmax(0,1fr))}.rabri-dialog-contact-form-pane{padding:22px}}
@media(max-width:680px){.rabri-dialog__panel,.rabri-dialog__panel--form,.rabri-dialog__panel--preview{width:100%;max-width:100%;border-radius:24px 24px 0 0}.rabri-dialog-contact-points{grid-template-columns:1fr}.rabri-dialog .rabri-contact-form{grid-template-columns:1fr}.rabri-dialog .rabri-contact-form :where(label,.rabri-form-wide,.rabri-form-actions){grid-column:1}.rabri-dialog .rabri-form-actions button{width:100%}}
:root[data-theme="light"] :where(.rabri-single-side-tools button,.rabri-single-utility-bar button,.rabri-dialog-share-grid a,.rabri-dialog-share-grid button){background:var(--rb-palette-white);color:var(--rb-text-primary)}:root[data-theme="light"] :where(.rabri-single-side-tools button,.rabri-single-utility-bar button,.rabri-dialog-share-grid a,.rabri-dialog-share-grid button):hover{background:var(--rb-palette-steel-blue);color:var(--rb-action-fg)}
@media(max-width:960px){.rabri-single-grid{grid-template-columns:minmax(230px,270px) minmax(0,1fr)!important}.rabri-single-mockup-wrap{height:350px!important}.rabri-single-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.rabri-single-grid{grid-template-columns:1fr!important}.rabri-single-cover-column{position:static;display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:8px;align-items:start}.rabri-single-mockup-wrap{grid-row:1/4;height:285px!important}.rabri-single-stats{grid-template-columns:1fr}.rabri-single-cover-download{margin-top:0}.rabri-single-side-tools{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.rabri-single-file-shelf{grid-template-columns:1fr}.rabri-single-file-shelf>div:last-child{display:grid;grid-template-columns:1fr 1fr}.rabri-single-file-shelf a{justify-content:center}.rabri-single-utility-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.rabri-single-cover-column{grid-template-columns:1fr}.rabri-single-mockup-wrap{grid-row:auto;height:330px!important}.rabri-single-side-tools{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:430px){.rabri-single-side-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.rabri-single-file-shelf>div:last-child{grid-template-columns:1fr}.rabri-dialog-share-grid{grid-template-columns:1fr}}
