.qfl-drawer { position: fixed; top: 0; right: 0; bottom: 0; width: 60%; max-width: 720px; background: var(--card); border-left: 1px solid var(--border); box-shadow: -4px 0 12px rgba(0,0,0,0.05); overflow-y: auto; padding: 20px 28px; z-index: 100; }
.qfl-drawer__backdrop { position: fixed; inset: 0; background: rgba(0,0,0,0.2); z-index: 99; }
.qfl-drawer__close { position: absolute; top: 14px; right: 20px; background: transparent; border: 0; font-size: 24px; cursor: pointer; color: var(--muted); }
.qfl-drawer h2 { margin-top: 0; }
.qfl-drawer__app { border-top: 1px solid var(--border); padding-top: 16px; margin-top: 20px; }
.qfl-drawer__app h3 { margin: 0 0 8px; }
.qfl-drawer__entitlement { display: grid; grid-template-columns: 1fr auto auto; gap: 12px; align-items: center; padding: 8px 0; border-bottom: 1px dashed var(--border); }
.qfl-drawer__entitlement-label { font-weight: 500; }
.qfl-drawer__entitlement-desc { color: var(--muted); font-size: 12px; }

.qfl-modal { position: fixed; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,0.4); z-index: 200; }
.qfl-modal__panel { background: var(--card); padding: 24px 28px; border-radius: 8px; min-width: 420px; max-width: 560px; }
.qfl-modal__panel h3 { margin-top: 0; }
.qfl-modal__row { margin-bottom: 12px; }
.qfl-modal__row label { display: block; font-size: 12px; color: var(--muted); margin-bottom: 4px; }
.qfl-modal__actions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 16px; }
