/* LiveLocation Platform: watch, creator, Live now, World Cams and home-page shortcodes. Builds on the core's ll.css
 * (tiles, pills, buttons, chips, now strip, player frame). Owner palette only: green #0CA30C, yellow #FAB219,
 * orange #F07D1A, red #D03B3B (LIVE), grey #8A919C, black #1A1D23. No blue. Line icons, equal-size tiles,
 * mobile first. People's streams and World Cams (official cameras) always look different and sit apart. */
:root{--llp-red:#D03B3B;--llp-green:#0CA30C;--llp-yellow:#FAB219;--llp-orange:#F07D1A;--llp-grey:#8A919C;--llp-ink:#1A1D23;--llp-line:#E3E5E8;--llp-soft:#F4F5F6}

/* ---------- LIVE badge ---------- */
.llp-live{display:inline-flex;align-items:center;gap:.4em;background:var(--llp-red);color:#fff;border-radius:6px;padding:.2rem .55rem;font-size:.78rem;font-weight:900;letter-spacing:.08em;line-height:1.2;white-space:nowrap}
.llp-live::before{content:"";width:.55em;height:.55em;border-radius:50%;background:#fff;animation:llp-pulse 1.6s ease-in-out infinite}
@keyframes llp-pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.llp-live::before{animation:none}}
.ll-pill.llp-pill--live{background:var(--llp-red);color:#fff;letter-spacing:.06em}
.llp-dot{display:inline-block;width:.55em;height:.55em;border-radius:50%;background:var(--llp-red);margin-right:.35em;vertical-align:.05em}

/* ---------- buttons ---------- */
.ll-btn.llp-btn--go{background:var(--llp-green)}
.ll-btn.llp-btn--go:hover{background:#0a8a0a}
.ll-btn:focus-visible,.ll-link:focus-visible,.llp-cat:focus-visible,.ll-tile:focus-visible{outline:3px solid var(--llp-green);outline-offset:2px}

/* ---------- people's stream tiles ---------- */
.llp-tile__img{background:linear-gradient(135deg,#1A1D23 0%,#2d3138 100%)}
.llp-tile__img .ll-tile__ph{color:#5d636c}
.ll-kind.llp-kind{background:var(--llp-ink);border-color:var(--llp-ink);color:#fff}
.ll-tile__img .llp-kind{position:absolute;left:8px;bottom:8px}

/* ---------- World Cams (official cameras): their own band and tile style ---------- */
.llp-world{margin:2.4rem 0;padding:1.1rem 1.2rem 1.2rem;background:var(--llp-soft);border:1px solid var(--llp-line);border-radius:var(--ll-r,14px)}
.llp-world .llp-rowhead h2,.llp-world .llp-rowhead h3{font-size:1.15rem}
.llp-world__intro{margin:.1rem 0 .4rem}
.llp-wtile{border-style:dashed;border-color:#c9ccd1}
.llp-wtile .ll-tile__body{background:#fff}
.llp-wc-tag{position:absolute;right:8px;top:8px;display:inline-flex;align-items:center;gap:.3em;background:#fff;color:var(--llp-ink);border-radius:6px;padding:.14rem .45rem;font-size:.72rem;font-weight:800;line-height:1.2;white-space:nowrap;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.llp-wc-tag .ll-ic{width:1em;height:1em}
.llp-wtile__src{display:flex;align-items:center;gap:.3em;font-size:.76rem;color:#5d636c;margin-top:auto}
.llp-wtile__src .ll-ic{width:1em;height:1em;color:var(--llp-green)}

/* ---------- rows (horizontal scroll) ---------- */
.llp-rowwrap{margin:1.6rem 0}
.llp-rowhead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.3rem 1rem;margin:0 0 .4rem}
.llp-rowhead h2,.llp-rowhead h3{margin:0;display:inline-flex;align-items:center;gap:.4em}
.llp-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,260px);gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:.4rem 2px 1rem;margin:0 -2px;-webkit-overflow-scrolling:touch}
.llp-row>.ll-tile{scroll-snap-align:start}
.llp-row::-webkit-scrollbar{height:8px}.llp-row::-webkit-scrollbar-thumb{background:#c9ccd1;border-radius:8px}

/* ---------- empty state ---------- */
.llp-empty{display:flex;gap:1rem;align-items:flex-start;border:1.5px dashed #c9ccd1;border-radius:var(--ll-r,14px);padding:1.1rem 1.2rem;background:#fff;margin:1rem 0}
.llp-empty__ic{flex:none;width:52px;height:52px;border-radius:14px;background:var(--llp-green);color:#fff;display:flex;align-items:center;justify-content:center}
.llp-empty__ic .ll-ic{width:28px;height:28px}
.llp-empty__t{font-weight:800;font-size:1.1rem;margin:0 0 .2rem}
.llp-empty p{margin:.2rem 0 .7rem}

/* ---------- /live-now/ ---------- */
.llp-discover__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.8rem 1.4rem;margin-bottom:.6rem}
.llp-discover__head h1{margin:.1rem 0 .2rem;line-height:1.15}
.llp-discover__lead{margin:0 0 .2rem;font-size:1.08rem}
.llp-discover__bar{display:flex;flex-wrap:wrap;gap:.5rem}
.llp-chips{margin:.6rem 0 .4rem}
.llp-chips .ll-chip{text-decoration:none}
.llp-subcats a{color:var(--llp-ink)}.llp-subcats a[aria-current]{font-weight:800}
.llp-near h2{display:flex;align-items:center;gap:.4em}
.ll-sec h2 .ll-ic{vertical-align:-.15em}

/* ---------- [llp_categories] equal tiles ---------- */
.llp-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin:1rem 0}
.llp-cat{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;border:1px solid var(--llp-line);border-radius:var(--ll-r,14px);padding:1rem 1.05rem;background:#fff;color:var(--llp-ink)!important;text-decoration:none!important;min-height:132px;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}
.llp-cat:hover{border-color:var(--llp-ink);box-shadow:0 6px 18px rgba(26,29,35,.08)}
.llp-cat__ic{width:46px;height:46px;border-radius:12px;background:var(--llp-ink);color:#fff;display:flex;align-items:center;justify-content:center}
.llp-cat__ic .ll-ic{width:24px;height:24px}
.llp-cat:hover .llp-cat__ic{background:var(--llp-green)}
.llp-cat__t{font-weight:800;line-height:1.2}
.llp-cat__n{margin-top:auto;font-size:.84rem;color:#5d636c}

/* ---------- [llp_go_live_cta] ---------- */
.llp-cta{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.2rem 1.4rem;background:var(--llp-ink);color:#fff;border-radius:18px;padding:1.4rem 1.6rem;margin:2rem 0}
.llp-cta h2{margin:0 0 .2rem;color:#fff;font-size:1.6rem}
.llp-cta__lead{margin:0 0 .3rem;font-size:1.12rem;font-weight:700}
.llp-cta .ll-small{color:#c9ccd1;margin:0}
.llp-cta__ic{width:68px;height:68px;border-radius:18px;background:var(--llp-red);display:flex;align-items:center;justify-content:center}
.llp-cta__ic .ll-ic{width:36px;height:36px}
.ll-btn.llp-cta__btn{font-size:1.08rem;padding:.8rem 1.5rem}

/* ---------- [llp_how_it_works] ---------- */
.llp-steps{list-style:none;margin:1rem 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;counter-reset:none}
.llp-step{position:relative;display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--llp-line);border-radius:var(--ll-r,14px);background:#fff;padding:1.1rem 1.1rem 1.2rem;min-height:190px;box-sizing:border-box}
.llp-step__n{position:absolute;right:14px;top:12px;font-size:1.6rem;font-weight:900;color:var(--llp-line);line-height:1}
.llp-step__ic{width:46px;height:46px;border-radius:12px;background:var(--llp-soft);color:var(--llp-ink);display:flex;align-items:center;justify-content:center}
.llp-step__ic .ll-ic{width:24px;height:24px}
.llp-step:nth-child(1) .llp-step__ic{color:var(--llp-green)}.llp-step:nth-child(2) .llp-step__ic{color:var(--llp-orange)}.llp-step:nth-child(3) .llp-step__ic{color:#b47c00}.llp-step:nth-child(4) .llp-step__ic{color:var(--llp-red)}
.llp-step__t{font-weight:800;font-size:1.05rem}
.llp-step__d{font-size:.9rem;color:#5d636c;line-height:1.45}

/* ---------- watch page ---------- */
.llp-watch__head h1{margin:.25rem 0 .35rem;line-height:1.15}
.llp-watch__status{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.llp-watch__status .ll-pill .ll-ic{width:1em;height:1em}
.llp-watch__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1rem;margin:0;color:#3c4047}
.llp-meta{display:inline-flex;align-items:center;gap:.35em;color:#3c4047;text-decoration:none}
a.llp-meta:hover{text-decoration:underline}
.llp-access{display:inline-flex;align-items:center;gap:.3em;border-radius:999px;padding:.15rem .6rem;font-size:.78rem;font-weight:800;border:1.5px solid currentColor}
.llp-access .ll-ic{width:1em;height:1em}
.llp-access--public{color:var(--llp-green)}
.llp-access--unlisted{color:#9a6a00;background:#fff8e6;border-color:var(--llp-yellow)}
.llp-access--private{color:#fff;background:var(--llp-ink);border-color:var(--llp-ink)}
.llp-player .ll-frame{background:#111317}
.llp-facade__live{position:absolute;left:12px;top:12px}
.llp-onvideo{position:absolute;left:12px;top:12px;pointer-events:none;z-index:2}
.llp-player video{background:#000}
.llp-offline,.llp-msg{gap:.5rem}
.llp-offline__t{font-weight:800;font-size:1.15rem;margin:0}
.llp-msg p{margin:0;max-width:34em}
.llp-msg--calm{background:rgba(17,19,23,.88)}
.llp-msg__ic{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center}
.llp-msg__ic .ll-ic{width:28px;height:28px}
.llp-msg .ll-btn--ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.4)}
.llp-spin{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:var(--llp-green);animation:llp-spin 1s linear infinite}
@keyframes llp-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.llp-spin{animation-duration:3s}}

.llp-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem 1.2rem;border-bottom:1px solid var(--llp-line);padding:.2rem 0 1rem;margin:0 0 1rem}
.llp-who{display:flex;align-items:center;gap:.75rem;min-width:0}
.llp-who__pic img,.llp-avatar{border-radius:50%;display:block}
.llp-who__txt{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.llp-who__name{font-weight:800;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.llp-who__name a{color:var(--llp-ink);text-decoration:none}.llp-who__name a:hover{text-decoration:underline}
.llp-who__f{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.llp-actions{display:flex;flex-wrap:wrap;gap:.45rem}
.ll-btn.llp-follow{background:var(--llp-green)}
.ll-btn.llp-follow[aria-pressed="true"]{background:#fff;color:var(--llp-ink)!important;border:1.5px solid var(--llp-line)}
.llp-act[aria-pressed="true"]{border-color:var(--llp-red);color:var(--llp-red)!important}
.llp-act[aria-pressed="true"] .ll-ic{fill:var(--llp-red)}

.ll-badge.llp-level--verified{background:var(--llp-green)}
.ll-badge.llp-level--business{background:var(--llp-ink)}
.ll-badge.llp-level--trusted{background:var(--llp-orange)}

.llp-now .ll-now__t .ll-ic{color:var(--llp-ink)}
.llp-dl{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1.2rem;margin:1rem 0}
.llp-dl dt{font-weight:800;color:#3c4047}.llp-dl dd{margin:0}
.llp-dl a{color:var(--llp-ink)}
.llp-tags{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:.8rem 0 0}
.llp-tags li{background:var(--llp-soft);border:1px solid var(--llp-line);border-radius:999px;padding:.2rem .7rem;font-size:.85rem;font-weight:700}

.llp-report{border:1px solid var(--llp-line);border-radius:var(--ll-r,14px);padding:1rem 1.2rem;background:#fff}
.llp-report h2{display:flex;align-items:center;gap:.4em}
.llp-reasons{border:0;padding:0;margin:0 0 .8rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.3rem .8rem}
.llp-reasons legend{font-weight:800;margin-bottom:.4rem}
.llp-note{display:flex;flex-direction:column;gap:.3rem;font-weight:700}
.llp-note textarea{font:inherit;border:1.5px solid var(--llp-line);border-radius:10px;padding:.5rem .6rem;max-width:40em}

.llp-ownerbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;background:#fff8e6;border:1.5px solid var(--llp-yellow);border-radius:12px;padding:.7rem .9rem;margin:0 0 1rem;font-size:.92rem}
.llp-ownerbar__txt{display:flex;flex-wrap:wrap;gap:.2rem .5rem;align-items:center}
.llp-ownerbar__warn{display:inline-flex;align-items:center;gap:.3em;color:#a3460a;font-weight:700}
.llp-ownerbar__btns{display:flex;flex-wrap:wrap;gap:.4rem}

.llp-gate{display:flex;justify-content:center;padding:2rem 0}
.llp-gate__card{max-width:34rem;text-align:center;border:1px solid var(--llp-line);border-radius:18px;padding:2rem 1.6rem;background:#fff}
.llp-gate__card h1{margin:.6rem 0 .1rem}
.llp-gate__ic{display:inline-flex;width:64px;height:64px;border-radius:50%;background:var(--llp-ink);color:#fff;align-items:center;justify-content:center}
.llp-gate__ic .ll-ic{width:32px;height:32px}
.llp-gate__by{margin:0 0 1rem;color:#5d636c;font-weight:700}.llp-gate__by a{color:var(--llp-ink)}
.llp-gate__actions{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}
.llp-gone{max-width:40rem;padding:2rem 0}

/* ---------- creator profile ---------- */
.llp-profile{display:flex;align-items:center;gap:1.2rem;margin:.4rem 0 1rem}
.llp-profile__pic{position:relative;flex:none}
.llp-avatar--lg{width:112px;height:112px;border:3px solid #fff;box-shadow:0 2px 10px rgba(26,29,35,.18)}
.llp-profile__live{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%)}
.llp-profile h1{margin:0 0 .35rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;line-height:1.15}
.llp-profile__f{margin:.6rem 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.llp-bio{max-width:48em}

/* ---------- mobile ---------- */
@media (max-width:900px){.llp-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.llp-cta{grid-template-columns:auto 1fr}.llp-cta__btn{grid-column:1/-1;justify-content:center}}
@media (max-width:600px){
	.llp-row{grid-auto-columns:78%}
	.llp-cats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
	.llp-cat{min-height:118px;padding:.85rem .9rem}
	.llp-steps{grid-template-columns:1fr}.llp-step{min-height:0}
	.llp-cta{grid-template-columns:1fr;padding:1.2rem}.llp-cta__ic{width:54px;height:54px}
	.llp-bar{flex-direction:column;align-items:flex-start}
	.llp-actions{width:100%}.llp-actions .llp-act{flex:1 1 30%;justify-content:center}
	.llp-dl{grid-template-columns:1fr;gap:.1rem}.llp-dl dd{margin-bottom:.5rem}
	.llp-profile{flex-direction:column;align-items:flex-start}
	.llp-avatar--lg{width:88px;height:88px}
	.llp-world{padding:.9rem .9rem 1rem;margin-left:-4px;margin-right:-4px}
	.llp-empty{flex-direction:column}
	.llp-discover__bar{width:100%}.llp-discover__bar .ll-btn{flex:1 1 auto;justify-content:center}
}
