/* قالب «سطرٌ واحد» — أبيض وأسود وخط واحد */
body.tpl-oneline { --q-bg: #FFFFFF; --q-soft: #F5F5F4; --q-ink: #1A1A1A; --q-muted: #5C5C5C; --q-accent: #1A1A1A; --q-line: #E3E3E1; --q-btn: #1A1A1A; --q-btn-ink: #FFFFFF; --q-display: 'Reem Kufi', sans-serif; --q-radius: 4px; }
.ol-cover { position: absolute; inset: 0; background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 22px; padding: 30px; text-align: center; color: #1A1A1A; transition: opacity .6s ease; }
.ol-cover .q-guest { font-size: 14px; color: #5C5C5C; }
.ol-cover .q-guest strong { font: 500 22px 'Reem Kufi', sans-serif; color: #1A1A1A; }
.ol-line { width: 0; height: 1px; background: #1A1A1A; animation: ol-draw 1.2s ease .2s forwards; }
@keyframes ol-draw { to { width: 140px; } }
.ol-cn { font: 500 34px/1.4 'Reem Kufi', sans-serif; letter-spacing: .02em; }
.ol-cn i { font-style: normal; margin: 0 8px; }
.ol-open { min-height: 48px; padding: 0 34px; border-radius: 0; border: 1px solid #1A1A1A; background: #fff; color: #1A1A1A; font: 500 15px 'Plex Arabic', sans-serif; letter-spacing: .1em; cursor: pointer; }
.ol-open:hover { background: #1A1A1A; color: #fff; }
.is-opening .ol-cover { opacity: 0; }
.ol-hero { display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; padding: 56px 24px 16px; }
.ol-orn { width: 140px; height: 1px; background: #1A1A1A; }
.ol-host { font-size: 15px; color: #5C5C5C; max-width: 30ch; }
.ol-names { display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap; font: 500 40px/1.3 'Reem Kufi', sans-serif; outline: none; }
.ol-and { font-size: 26px; }
.ol-tag { font-size: 15px; color: #5C5C5C; }
.ol-when { display: flex; flex-direction: column; gap: 2px; }
.ol-when strong { font-size: 16px; font-weight: 600; }
.ol-when span { font-size: 14px; color: #5C5C5C; }
.tpl-oneline .q-h { font-family: 'Reem Kufi', sans-serif; font-weight: 500; font-size: 22px; letter-spacing: .02em; }
.tpl-oneline .q-sec + .q-sec { border-top: 1px solid #E3E3E1; }
@media (prefers-reduced-motion: reduce) { .ol-line { animation: none; width: 140px; } .ol-cover { transition: none; } }
