.lrfd-widget { box-sizing:border-box; color:var(--lrfd-text,inherit); background:var(--lrfd-background,transparent); border:1px solid currentColor; border-radius:var(--lrfd-radius,12px); padding:var(--lrfd-padding,16px); width:var(--lrfd-width,100%); max-width:var(--lrfd-max-width,none); margin-inline-start:var(--lrfd-margin-left,0); margin-inline-end:var(--lrfd-margin-right,auto); font-size:var(--lrfd-font-size,16px); min-width:min(100%,240px); font-family:inherit; line-height:1.5; }
.lrfd-widget * { box-sizing:border-box; }
.lrfd-widget h2 { color:inherit; font:inherit; font-size:var(--lrfd-heading-size,24px); font-weight:700; margin:0 0 .5em; overflow-wrap:anywhere; }
.lrfd-widget p { font-size:inherit; line-height:inherit; margin:.5em 0 1em; }
.lrfd-widget label { display:block; font-weight:700; }
.lrfd-widget .lrfd-hint { font-size:.9em; }
.lrfd-widget input { display:block; width:100%; min-height:48px; font:inherit; font-size:max(16px,1em); padding:12px; background:var(--lrfd-background,Canvas); color:var(--lrfd-text,CanvasText); border:1px solid currentColor; border-radius:var(--lrfd-radius,12px); }
.lrfd-widget .lrfd-submit, .lrfd-widget .lrfd-support, .lrfd-widget .lrfd-general, .lrfd-widget .lrfd-flyer { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 16px; font:inherit; font-weight:600; border:2px solid currentColor; border-radius:var(--lrfd-radius,12px); cursor:pointer; text-align:center; text-decoration:underline; overflow-wrap:anywhere; }
.lrfd-widget .lrfd-submit { margin-top:12px; }
.lrfd-widget .lrfd-submit, .lrfd-widget .lrfd-support, .lrfd-widget .lrfd-general.lrfd-solid { background:var(--lrfd-primary,ButtonFace); color:var(--lrfd-button-text,ButtonText); }
.lrfd-widget .lrfd-flyer { color:var(--lrfd-flyer-text,inherit); background:var(--lrfd-flyer-background,transparent); }
.lrfd-widget .lrfd-general { color:inherit; background:transparent; margin-top:12px; }
.lrfd-widget :is(a,button,input):focus-visible { outline:3px solid currentColor; outline-offset:4px; }
.lrfd-widget .lrfd-status { min-height:1.5em; margin:1em 0 .5em; }
.lrfd-widget .lrfd-results { list-style:none; padding:0; margin:0; }
.lrfd-widget .lrfd-results li { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid currentColor; padding:16px 0; }
.lrfd-widget .lrfd-results li > div:not(.lrfd-actions) { flex:1 1 160px; min-width:0; overflow-wrap:anywhere; }
.lrfd-widget .lrfd-section { display:block; font-size:.9em; }
.lrfd-widget.lrfd-compact { padding:min(var(--lrfd-padding,16px),12px); }
.lrfd-widget.lrfd-compact .lrfd-results li { padding:10px 0; }
@media (prefers-reduced-motion:reduce) { .lrfd-widget * { scroll-behavior:auto; } }

.lrfd-widget .lrfd-actions { display:flex; flex:0 1 auto; flex-wrap:wrap; gap:8px; min-width:0; max-width:100%; }

.lrfd-widget .lrfd-status:empty { min-height:0; margin:0; }
.lrfd-widget .lrfd-support, .lrfd-widget .lrfd-flyer, .lrfd-widget .lrfd-general { max-width:100%; }
@media (max-width:480px) { .lrfd-widget { width:100%; } }

/* Search-bar presentation keeps the page stationary while suggestions update. */
.lrfd-widget.lrfd-searchbar { position:relative; padding:0; border:0; background:transparent; }
.lrfd-searchbar .lrfd-heading, .lrfd-searchbar .lrfd-intro, .lrfd-searchbar .lrfd-hint, .lrfd-searchbar .lrfd-form label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.lrfd-searchbar .lrfd-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; margin:0; }
.lrfd-searchbar .lrfd-form input { margin:0; min-height:48px; padding:10px 12px; }
.lrfd-searchbar .lrfd-submit { margin:0; min-height:48px; padding:8px 16px; border-width:1px; text-decoration:none; }
.lrfd-searchbar .lrfd-results-panel { position:absolute; top:calc(100% + 8px); inset-inline:0; z-index:30; max-height:320px; max-height:min(320px,60dvh); overflow:auto; overscroll-behavior:contain; background:var(--lrfd-background,Canvas); color:var(--lrfd-text,CanvasText); border:1px solid currentColor; border-radius:var(--lrfd-radius,12px); padding:8px 12px; box-shadow:0 6px 18px rgba(0,0,0,.12); }
.lrfd-searchbar .lrfd-results-panel[hidden] { display:none; }
.lrfd-searchbar .lrfd-status { font-size:.85em; margin:0; padding:4px 0 8px; }
.lrfd-searchbar .lrfd-status:empty { padding:0; }
.lrfd-searchbar .lrfd-results li { gap:6px 12px; padding:8px 0; border-top-width:1px; }
.lrfd-searchbar .lrfd-results li > div:not(.lrfd-actions) { flex-basis:140px; }
.lrfd-searchbar .lrfd-section { display:inline; margin-inline-start:6px; font-size:.85em; }
.lrfd-searchbar .lrfd-support, .lrfd-searchbar .lrfd-flyer { border-width:1px; padding:6px 10px; text-decoration:none; }
.lrfd-searchbar .lrfd-general { margin-top:4px; padding:6px 0; border:0; font-size:.9em; }
