:root{--luv-blue:#1476d4;--luv-ink:#17273b;--luv-mute:#66758a;--luv-line:#dce6f1;--luv-bg:#f5f8fc}body.luv-takeover{margin:0;background:var(--luv-bg);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--luv-ink)}.luv-shell,.luv-shell *{box-sizing:border-box}.luv-shell{max-width:1210px;margin:0 auto;padding:30px 20px 60px;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#17273b;font-size:15px;line-height:1.5}.luv-shell h1,.luv-shell h2,.luv-shell h3{margin:0;line-height:1.2;color:#17273b}.luv-shell p{margin:8px 0}.luv-site-head{background:#0a2241;color:#fff;padding:17px 20px;box-shadow:0 3px 16px #102c4e22}.luv-site-head-inner{max-width:1170px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.luv-site-head-inner span{font-size:13px;color:#c8e7fc}.luv-site-brand{display:flex;align-items:center;color:white;text-decoration:none;font-size:27px}.luv-site-brand img{display:block;max-width:360px;max-height:100px;width:auto;height:auto;object-fit:contain}.luv-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 0 22px}.luv-intro h1{font-size:clamp(23px,3.2vw,38px);margin:8px 0}.luv-kicker{color:#1370ba;font-size:12px;font-weight:800;letter-spacing:.9px;text-transform:uppercase}.luv-intro p{color:var(--luv-mute)}.luv-add,.luv-vote{display:inline-block;background:#146ed0;border:0;color:white!important;text-decoration:none;font-size:14px;font-weight:800;padding:13px 19px;border-radius:10px;white-space:nowrap;cursor:pointer}.luv-add:hover,.luv-vote:hover{background:#0755af}.luv-toprow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:32px}.luv-card{background:white;border:1px solid var(--luv-line);border-radius:13px;padding:17px;margin-bottom:12px;box-shadow:0 3px 13px #19344c0a;scroll-margin-top:15px}.luv-featured{margin-bottom:0;border-width:2px}.luv-featured-1{border-color:#39ad75;background:#f3fff8;grid-column:span 1}.luv-featured-2{border-color:#81add8}.luv-featured-3{border-color:#d2b779}.luv-card-content{display:flex;gap:15px;align-items:flex-start}.luv-business-image{flex:0 0 71px;width:71px;height:71px;border-radius:12px;background:#edf2f8;display:flex;align-items:center;justify-content:center;font-size:32px;overflow:hidden}.luv-business-image img{width:100%;height:100%;object-fit:contain}.luv-details{min-width:0;flex:1}.luv-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.luv-rank{font-size:12px;color:#0873b9;font-weight:850}.luv-top-badge{background:#dcfae8;color:#17754b;font-size:10px;font-weight:800;border-radius:20px;padding:3px 8px}.luv-card h3{font-size:18px;margin:5px 0}.luv-address{font-size:12px;color:#58697d}.luv-desc{font-size:13px;color:#526478}.luv-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:9px}.luv-links a{color:#075cae;text-decoration:none;font-weight:700;font-size:12px}.luv-actions{margin-top:14px;border-top:1px solid #e5eaf2;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.luv-vote-count strong{font-size:21px;color:#119a60}.luv-vote-count span{font-size:11px;color:#6b7587;display:block}.luv-vote{background:#13985e;font-size:13px;padding:11px 16px}.luv-vote:hover{background:#0d7949}.luv-vote:disabled{opacity:.75;cursor:default}.luv-share{border-radius:8px;background:#f1f6fc;margin-top:13px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.luv-share>span{font-size:12px;font-weight:800}.luv-share-actions{display:flex;gap:5px;flex-wrap:wrap}.luv-share-actions a,.luv-share-actions button{background:white;color:#24507d;border:1px solid #d5e3f3;padding:5px 9px;border-radius:6px;font-size:11px;font-weight:750;text-decoration:none;cursor:pointer}.luv-grid{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:25px}.luv-grid.luv-no-sidebar{display:block}.luv-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.luv-section-title h2,.luv-form-wrap h2{font-size:23px}.luv-section-title span{font-size:12px;color:#6a7a8e}.luv-sidebar{display:flex;flex-direction:column;gap:16px}.luv-ad img{width:100%;height:auto;display:block;border-radius:9px}.luv-header-ad{max-width:970px;margin:0 auto 20px}.luv-square-ad{aspect-ratio:1}.luv-square-ad img{height:100%;object-fit:contain}.luv-pager{display:flex;gap:7px;margin:20px 0}.luv-pager a{padding:8px 13px;border:1px solid #cadbee;background:white;border-radius:6px;text-decoration:none;color:#175ea3}.luv-pager a[aria-current]{background:#176bc2;color:#fff}.luv-form-wrap{margin-top:28px;padding:25px;background:#fff;border:1px solid #dce6f1;border-radius:12px}.luv-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.luv-form-wrap label{display:block;font-weight:700;font-size:12px;margin-bottom:13px}.luv-form-wrap input,.luv-form-wrap textarea{display:block;max-width:100%;width:100%;padding:10px;margin-top:5px;border:1px solid #c8d5e4;border-radius:7px;font:inherit;font-size:14px}.luv-form-wrap input[type=file]{font-size:12px}.luv-hp{position:absolute!important;left:-99999px!important}.luv-notice{background:#e9fbef;padding:12px;border-radius:8px;margin:10px 0}.luv-error{background:#fff0ee;padding:12px;border-radius:8px;margin:10px 0}.luv-footer{text-align:center;font-size:12px;color:#8290a0;margin-top:26px}.luv-highlight{outline:4px solid #3ee08f;box-shadow:0 0 0 8px #37e18c25}.luv-empty{padding:35px;background:white;border:1px solid #dde6f2;border-radius:12px;text-align:center}@media(max-width:950px){.luv-toprow{grid-template-columns:1fr}.luv-grid{grid-template-columns:minmax(0,1fr) 180px}.luv-sidebar{gap:10px}}@media(max-width:690px){.luv-shell{padding:20px 12px 35px}.luv-grid{display:block}.luv-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.luv-intro{align-items:flex-start;flex-direction:column}.luv-card{padding:13px}.luv-business-image{width:55px;height:55px;flex-basis:55px}.luv-card h3{font-size:16px}.luv-section-title{align-items:flex-start;flex-direction:column}.luv-form-grid{grid-template-columns:1fr}.luv-site-head-inner{flex-direction:column;align-items:flex-start}.luv-site-brand img{max-width:250px}.luv-share{align-items:flex-start}.luv-form-wrap{padding:16px}}

/* v0.2.0 empty ad inventory and business logo placeholders */
.luv-ad-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:100%;height:100%;min-height:110px;border:2px dashed #a6c5e3;border-radius:10px;background:linear-gradient(135deg,#eef8ff,#f6fafc);color:#206496;text-align:center;padding:12px}.luv-ad-placeholder strong{font-size:clamp(13px,1.5vw,19px);letter-spacing:.2px}.luv-ad-placeholder small{font-size:11px;color:#6384a3}.luv-header-ad .luv-ad-placeholder{min-height:90px}.luv-square-ad .luv-ad-placeholder{min-height:100%;aspect-ratio:1}.luv-logo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#145fba,#16b99a);font-size:35px;font-weight:800;color:#fff;text-shadow:0 2px 6px #003b5966}.luv-business-image:has(.luv-logo-fallback){background:#1778ae}
.luv-header-ad{max-width:728px}.luv-square-ad{width:100%}
/* v0.3 additions: scoped themes, accessible modal controls and small mobile improvements */
.luv-shell .luv-contact-upper{display:flex;justify-content:flex-end;margin-bottom:3px}.luv-contact-open{background:transparent;border:0;color:var(--luv-blue);font-weight:700;cursor:pointer;font-size:13px;padding:5px}.luv-shell .luv-add,.luv-shell .luv-pager a[aria-current],.luv-load-more{background:var(--luv-blue)}.luv-shell .luv-kicker,.luv-shell .luv-links a{color:var(--luv-blue)}
.luv-theme-gold{--luv-blue:#b38727;--luv-bg:#fffaf0;--luv-line:#dbc89e}.luv-theme-red{--luv-blue:#c22c38;--luv-bg:#fcf6f6}.luv-theme-green{--luv-blue:#16836d;--luv-bg:#f2fbf8}.luv-theme-purple{--luv-blue:#754bc8;--luv-bg:#f7f5ff}.luv-theme-light{--luv-blue:#33648a;--luv-bg:#fff}
.luv-shell.luv-theme-gold,.luv-shell.luv-theme-red,.luv-shell.luv-theme-green,.luv-shell.luv-theme-purple,.luv-shell.luv-theme-light{background:var(--luv-bg)}
.luv-share-actions a.luv-facebook{background:#1877f2;color:#fff;border-color:#1877f2}.luv-share-actions a,.luv-share-actions button{min-height:30px;display:inline-flex;align-items:center;justify-content:center}.luv-load-wrap{text-align:center;margin:22px 0}.luv-load-more,.luv-badge-copy,.luv-contact-form button{border:0;border-radius:8px;padding:11px 20px;color:#fff;font-weight:700;cursor:pointer}
.luv-modal[hidden]{display:none!important}.luv-modal{position:fixed;z-index:999999;inset:0;background:rgba(5,20,40,.65);display:flex;align-items:center;justify-content:center;padding:16px}.luv-modal-panel{position:relative;background:white;color:#17273b;width:100%;max-width:460px;max-height:90vh;overflow-y:auto;padding:24px;border-radius:13px;box-shadow:0 10px 60px #0005}.luv-modal-panel h2{margin:0 26px 7px 0;font-size:23px}.luv-modal-panel p{font-size:13px}.luv-modal-close{position:absolute;right:12px;top:9px;font-size:26px;border:0;background:transparent;cursor:pointer}.luv-modal label{display:block;margin:12px 0 7px;font-weight:650;font-size:13px}.luv-modal input,.luv-modal select,.luv-modal textarea{display:block;width:100%;max-width:100%;padding:9px;margin-top:5px;border:1px solid #bdcde0;border-radius:6px;font:inherit;font-size:14px;box-sizing:border-box}.luv-badge-preview{display:flex;justify-content:center;overflow:hidden;padding:12px 0}.luv-badge-code{font-family:monospace!important;font-size:11px!important}.luv-badge-copy,.luv-contact-form button{background:#1476d4}.luv-modal-tip{color:#66758a}.luv-contact-result{min-height:20px}.luv-footer a{color:inherit;text-decoration:underline}
@media(max-width:690px){.luv-shell .luv-card{overflow-wrap:anywhere}.luv-share-actions{width:100%}.luv-share-actions a,.luv-share-actions button{min-height:38px}.luv-modal-panel{padding:17px}.luv-site-head-inner{gap:9px}}
/* v0.3.2 compact full-directory search */
.luv-search-wrap{position:relative;max-width:730px;margin:6px 0 18px}.luv-search-wrap label{display:block;font-weight:700;font-size:14px;margin-bottom:7px;color:#17395d}.luv-search-line{display:flex;gap:8px}.luv-search-line input{flex:1;min-width:0;background:#fff;border:1px solid #c6d7e9;border-radius:8px;padding:11px 13px;color:#1a3149;font-size:15px}.luv-search-button{border:0;background:var(--luv-blue,#1476d4);color:#fff;border-radius:8px;padding:10px 17px;font-weight:700;cursor:pointer}.luv-search-results{position:absolute;z-index:30;left:0;right:0;top:100%;background:white;border:1px solid #d5e1ed;border-radius:9px;box-shadow:0 9px 25px #1d345126;max-height:300px;overflow:auto}.luv-search-results[hidden]{display:none}.luv-search-result{display:block;padding:9px 13px;border-bottom:1px solid #e9eef4;color:#17395d;text-decoration:none}.luv-search-result:hover,.luv-search-result:focus{background:#edf5fc}.luv-search-result strong{display:block;font-size:14px}.luv-search-result small{display:block;font-size:12px;color:#697a8c;margin-top:3px}.luv-search-none{margin:0;padding:12px;color:#64748b}@media(max-width:690px){.luv-search-wrap{max-width:100%}.luv-search-button{padding:10px 12px}}

/* LocalUpVote 0.4.0: category, trending, social, promotion kit */
.luv-search-line #luv-category-filter{min-width:178px;max-width:220px;background:#fff;color:#1a3149;border:1px solid #c6d7e9;border-radius:8px;padding:10px;font-size:14px}
.luv-section-title .luv-trending-holder{margin-left:auto}.luv-trending{font-size:12px;white-space:normal;color:#4b647f}.luv-trending a{color:#1476d4;font-weight:750;text-decoration:underline}
.luv-header-right{display:inline-flex;align-items:center;gap:16px}.luv-header-facebook{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:50%;background:#1877f2;color:#fff!important;font:bold 23px Arial,sans-serif;text-decoration:none!important}
.luv-form-wrap select{display:block;width:100%;max-width:100%;padding:10px;margin-top:5px;border:1px solid #c8d5e4;border-radius:7px;font:inherit;font-size:14px;background:#fff}
.luv-promo-panel{max-width:520px}.luv-promo-panel h3{font-size:17px;margin:15px 0 8px;color:#183b64}.luv-promo-name{font-weight:750;color:#176bc2}.luv-qr-preview{display:flex;align-items:center;justify-content:center;padding:12px;background:white}.luv-qr-preview canvas{max-width:220px;width:100%;height:auto;image-rendering:pixelated}.luv-promo-canvas{display:block;width:200px;height:200px;max-width:100%;margin:12px auto;border-radius:8px}.luv-promo-panel button:not(.luv-modal-close){border:0;border-radius:6px;padding:10px 13px;background:#1476d4;color:#fff;font-weight:700;cursor:pointer}.luv-promo-panel hr{border:0;border-top:1px solid #dce6f1;margin:20px 0}
@media(max-width:690px){.luv-search-line{flex-wrap:wrap}.luv-search-line input{flex-basis:calc(100% - 95px)}.luv-search-line #luv-category-filter{max-width:none;width:100%}.luv-section-title .luv-trending-holder{margin:0}.luv-header-right{gap:9px}}

/* 0.4.1: full-bleed, theme-aware hero strip; scoped inside shortcode or standalone page. */
.luv-shell{--luv-band-color:#dce8fa;--luv-band-border:#b5ccf5}
.luv-shell.luv-theme-gold{--luv-band-color:#f7edd5;--luv-band-border:#ddc78d}
.luv-shell.luv-theme-red{--luv-band-color:#fae3e5;--luv-band-border:#e5b1b7}
.luv-shell.luv-theme-green{--luv-band-color:#dff3e9;--luv-band-border:#addbc2}
.luv-shell.luv-theme-purple{--luv-band-color:#ebe3fb;--luv-band-border:#cdbaf0}
.luv-shell.luv-theme-light{--luv-band-color:#edf2f7;--luv-band-border:#c8d8e9}
.luv-shell .luv-intro-band{position:relative;isolation:isolate}
.luv-shell .luv-intro-band:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);background:var(--luv-band-color);border-top:1px solid var(--luv-band-border);border-bottom:1px solid var(--luv-band-border);pointer-events:none}
@media(max-width:690px){.luv-shell .luv-intro-band{padding-top:18px;padding-bottom:18px}}
