/*
Theme Name: Wirtualus Green
Theme URI: https://app.green.wirtualus.com/
Author: Wirtualus
Description: Separated Green application layer with production-compatible presentation.
Version: 0.2.0
Text Domain: wirtualus-green
*/
:root { --w-blue:#30469d; --w-link:#2c3f91; --w-green:#477f52; --w-purple:#513992; }
* { box-sizing:border-box; }
html { font-size:62.5%; scroll-behavior:smooth; }
body { margin:0; color:#000; background:#fff; font-family:Arial,Helvetica,sans-serif; font-size:1.8rem; line-height:1.35; }
a { color:#29439d; } button,input,select { font:inherit; }
.screen-reader-text { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.reset-list-style { margin:0; padding:0; list-style:none; }
#site-header { position:relative; z-index:5; background:#fff; }
.header-inner { width:100%; max-width:232rem; min-height:102px; margin:0 auto; padding:.8rem 1.5rem; display:grid; grid-template-columns:minmax(470px,1fr) minmax(560px,1.65fr) minmax(330px,1fr); align-items:center; gap:1.5rem; }
.header-titles-wrapper,.header-titles { display:flex; align-items:center; min-width:0; }
.header-titles { gap:1rem; }.site-logo { flex:0 0 auto; margin-right:20px; padding:4px; background:#f5f8fe; }.site-logo img { display:block; width:200px; height:auto; }
.primary-menu { display:flex; align-items:center; justify-content:center; gap:3rem; }.primary-menu li { margin:1.5rem .35rem; white-space:nowrap; }.primary-menu a { color:#263c8d; font-size:2.2rem; font-weight:700; text-decoration:none; }.primary-menu a:hover,.primary-menu a:focus-visible { text-decoration:underline; text-underline-offset:4px; }.primary-menu .is-disabled { color:#6d6d6d; cursor:default; }
.topstuff { min-width:0; display:flex; align-items:center; justify-content:center; }.topstuff img { display:block; width:100%; max-width:800px; max-height:120px; object-fit:contain; }.header-navigation-wrapper { justify-self:end; }.mobile-nav-toggle,.w-mobile-nav { display:none; }
.w-production-home { min-height:660px; background:linear-gradient(rgba(255,255,255,.5),rgba(255,255,255,.5)),url('assets/prod/field.jpg') center 34%/cover fixed; }
.w-feed-shell { width:100%; padding:20px 10px 48px; }.wirtualus-search-row { width:min(840px,calc(100% - 20px)); height:42px; margin:0 auto 64px; display:flex; align-items:stretch; gap:2px; }
.w-search-action,.search-btn { display:flex; align-items:center; justify-content:center; border:0; border-radius:4px; color:#fff!important; text-decoration:none; font-weight:600; cursor:pointer; }.w-search-action--join { flex:0 0 60px; background:#222; }.w-search-action--tools { flex:0 0 70px; background:#293f99; border:3px solid #f3b51b; line-height:1.05; padding:0 5px; }.wirtualus-search-field { flex:1 1 auto; min-width:160px; border:1px solid #a5a5a5; border-radius:4px; padding:4px 10px; background:#fff; }.search-btn { flex:0 0 105px; background:#58a55c; border:2px solid #d8efd8; }#filterList { flex:0 0 126px; min-width:126px; border:1px solid #8e8e8e; border-radius:4px; background:#fff; padding:2px 7px; font-size:1.5rem; }
#features { width:100%; }.posters { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; align-items:stretch; }.card { position:relative; min-width:0; height:580px; overflow:hidden; background:#fff; border:4px solid var(--w-green); box-shadow:0 1px 1px rgba(0,0,0,.16); }.wirtualus-playlist-card { border-color:var(--w-purple); }.regularPoster { height:calc(100% - 36px); display:flex; flex-direction:column; background:#fff; }
.poster-mode-toggle { position:absolute; z-index:9; top:8px; right:7px; width:34px; height:34px; display:grid; place-items:center; color:#253e91; background:rgba(255,255,255,.95); border-radius:5px; }.poster-mode-toggle svg { width:24px; height:24px; }.w-card-roof { height:47px; flex:0 0 47px; background:#eaf0de url('assets/prod/post-roof-green.png') center/100% 100% no-repeat; }.wirtualus-playlist-roof { height:47px; flex:0 0 47px; display:flex; align-items:center; justify-content:space-between; padding:0 48px 0 58px; color:#fff; background-position:center; background-size:cover; font-size:1.6rem; letter-spacing:.18em; }.wirtualus-playlist-roof span { letter-spacing:0; border:1px solid rgba(255,255,255,.8); border-radius:20px; padding:4px 10px; }
.wirtualus-banner-wrapper { position:relative; width:100%; height:194px; flex:0 0 194px; overflow:hidden; background:#000; }.w-media { width:100%; height:100%; display:block; object-fit:contain; background:#000; }.wirtualus-playlist-card .w-media { object-fit:cover; }.video-mute-toggle,.video-controls-toggle { position:absolute; z-index:3; top:10px; width:36px; height:36px; display:grid; place-items:center; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.78); color:#000; box-shadow:0 2px 8px rgba(0,0,0,.35); font-size:1.9rem; }.video-mute-toggle { right:54px; }.video-controls-toggle { right:10px; }
.wirtualus-text-wrapper { min-height:0; flex:1 1 auto; display:flex; flex-direction:column; overflow:hidden; background:#fff; }.wirtualus-text-wrapper h5 { min-height:43px; margin:0; padding:7px 6px; display:flex; align-items:center; justify-content:center; color:#050505; background:#dff1dd; border-bottom:1px solid #aab5aa; font-size:1.55rem; line-height:1.15; text-transform:none; }.wirtualus-playlist-card .wirtualus-text-wrapper h5 { justify-content:flex-start; min-height:38px; background:#e7f5df; font-size:1.65rem; }.poster-event-meta { padding:5px 7px; border-bottom:1px solid #c7cbd1; font-size:1.15rem; line-height:1.25; }.poster-event-meta a { color:#111; font-size:1.45rem; font-weight:700; word-break:break-word; }.poster-meta-separator { display:none; }.wirtualus-text-scroll-body { min-height:0; flex:1; overflow:auto; padding:8px 7px; font-size:1.45rem; }.event_description { line-height:1.65; }.wirtualus-playlist-item-titles { margin-bottom:12px; }.wirtualus-playlist-item-titles ol { margin:3px 0 0; padding-left:25px; }.wirtualus-playlist-description { white-space:normal; }
.wirtualus-post-actions { height:50px; flex:0 0 50px; display:grid; grid-template-columns:1fr 1fr; gap:4px; }.posterButton { min-width:0; display:flex; align-items:center; justify-content:center; margin:0; padding:0; border:0; border-radius:3px; background:var(--w-blue); color:#fff!important; text-decoration:none; font-weight:600; cursor:pointer; }.wirtualus-poster-setup-link { position:absolute; z-index:9; top:8px; left:7px; width:34px; height:34px; display:grid; place-items:center; border-radius:5px; background:#fff; }.wirtualus-poster-setup-link img { width:23px; height:23px; }.poster-control-row { position:absolute; left:0; right:0; bottom:0; height:36px; display:flex; align-items:center; justify-content:space-between; background:#fff; border-top:1px solid #aaa; }.poster-control-left,.poster-control-right { min-width:0; display:flex; align-items:center; }.w-control { width:32px; min-width:32px; height:34px; display:grid; place-items:center; margin:0; padding:0; border:0; background:#fff; color:#111; font-size:1.35rem; }.w-control img { width:20px; height:20px; }.w-control--eyes { font-size:1.25rem; letter-spacing:-5px; padding-right:5px; }.w-control--comments { font-size:2rem; }.poster-control-right { margin-left:auto; padding-right:3px; font-size:1.3rem; white-space:nowrap; }.w-metric { display:inline-flex; gap:2px; margin-left:4px; }
.w-footer { color:#fff; background:#17204b; padding:36px 4vw 22px; }.w-footer__social { display:flex; gap:18px; justify-content:center; margin-bottom:28px; }.w-footer__social a { color:#fff; }.w-footer__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; max-width:1060px; margin:0 auto; }.w-footer h6 { margin:0 0 10px; font-size:1.4rem; letter-spacing:.12em; }.w-footer ul { margin:0; padding:0; list-style:none; }.w-footer li { margin:8px 0; }.w-footer a { color:#fff; }.w-footer__bottom { max-width:1260px; margin:30px auto 0; padding-top:18px; border-top:1px solid rgba(255,255,255,.2); display:flex; justify-content:space-between; }
/* Production-parity geometry. The outer card is the carousel slide; the
   bordered poster is inset by the same ten-pixel slide gutter as production. */
body { background:#fff url('assets/prod/white-back.jpg') no-repeat fixed left top/cover; font-family:Karla,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"PingFang SC","Microsoft YaHei",sans-serif; line-height:normal; }
.w-production-home { background:transparent; }
.posters { display:flex; grid-template-columns:none; gap:0; align-items:stretch; overflow:hidden; }
.card { flex:0 0 20%; width:20%; height:auto; padding:0 10px; overflow:hidden; background:transparent; border:0; box-shadow:none; }
.regularPoster { height:auto; overflow:hidden; border-left:5px solid var(--w-green); border-right:5px solid var(--w-green); }
.wirtualus-playlist-card .regularPoster { border-color:var(--w-purple); }
.w-card-roof,.wirtualus-playlist-roof { height:50px; flex-basis:50px; }
.wirtualus-banner-wrapper { height:auto; aspect-ratio:586/370; flex:0 0 auto; }
.w-media,.wirtualus-playlist-card .w-media { object-fit:cover; }
.poster-mode-toggle { top:7px; right:15px; width:36px; height:36px; border:1px solid rgba(15,23,42,.28); border-radius:7px; }
.wirtualus-poster-setup-link { top:8px; left:18px; width:38px; height:38px; border:1px solid #9aaed9; border-radius:9px; box-shadow:0 2px 6px #0005; }
.wirtualus-poster-setup-link img { width:24px; height:24px; }
.wirtualus-text-wrapper { height:250px; flex:0 0 250px; }.wirtualus-post-actions { height:clamp(45.6px,2.93vw,51.1px); flex-basis:auto; }
.poster-control-row { position:static; width:100%; height:36px; padding:0 8px 0 2px; border-top:0; }
.poster-control-left,.poster-control-right { gap:2px; }
.w-control { width:38px; min-width:38px; height:36px; }
.w-control img,.w-control svg { width:20px; height:20px; }
.w-control--eyes { padding:0; letter-spacing:normal; }
.w-control--eyes svg { width:25px; height:21px; }
.w-control--comments svg { width:24px; height:24px; }
.poster-control-right { padding-right:0; }
.w-metric { align-items:center; gap:2px; min-width:22px; margin-left:0; }
.w-metric img { width:20px; height:20px; }
@media (max-width:1400px) and (min-width:783px) { .card { flex-basis:25%; width:25%; } }
.header-inner { width:auto; max-width:none; min-height:0; margin:0 40px; padding:.8rem 0; display:flex; align-items:center; justify-content:space-between; gap:0; }
.header-titles-wrapper { flex:0 1 auto; margin-right:40px; }.header-titles { flex-wrap:wrap; gap:0; margin:-10px 0 0 -24px; }
.site-logo { width:200px; padding:0; background:none; }.site-logo img { width:200px; }.site-description { margin:3px 0 0; }
.primary-menu { flex-wrap:wrap; gap:0; margin:-8px 0 0 -25px; }.primary-menu li { margin:1.5rem; }
.topstuff { width:750px; flex:0 0 750px; display:block; }.topstuff img { width:100%; max-width:750px; height:90px; object-fit:contain; }
.header-navigation-wrapper { flex:0 1 auto; display:flex; justify-content:flex-end; }.header-navigation-wrapper .primary-menu { justify-content:flex-end; }
.w-feed-shell { padding-left:0; padding-right:0; }.wirtualus-search-row { margin-bottom:32px; }
.wirtualus-text-wrapper h5,.wirtualus-playlist-card .wirtualus-text-wrapper h5 { min-height:0; padding:.35em .6em; background:#dff4df; border-bottom-color:#b8dfb8; font-size:1vw; line-height:normal; }
.poster-event-meta,.poster-event-meta a,.wirtualus-text-scroll-body { font-size:1vw; }
@media (max-width:1220px) and (min-width:783px) { .card * { font-size:20px; }.w-control { width:32px; min-width:32px; } }
@media (max-width:782px) { html { font-size:58%; }.header-inner { min-height:72px; display:flex; justify-content:space-between; padding:6px 10px 6px 20px; }.header-titles { width:100%; }.site-logo { margin:0; background:linear-gradient(rgba(255,255,255,.5),rgba(255,255,255,.5)),url('assets/prod/field.jpg') center/40% auto no-repeat; }.site-logo img { width:240px; max-width:100%; }.topstuff,.header-navigation-wrapper,.site-description { display:none; }.mobile-nav-toggle { display:block; min-width:52px; min-height:44px; border:0; background:#fff; color:#284297; font-weight:700; }.w-mobile-nav:not([hidden]) { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; padding:12px 20px; border-top:1px solid #ddd; }.w-mobile-nav a { color:#263c8d; font-weight:700; text-decoration:none; }.w-feed-shell { padding:14px 10px 34px; }.wirtualus-search-row { width:100%; height:36px; margin-bottom:40px; gap:2px; }.w-search-action--join { flex-basis:44px; }.w-search-action--tools { flex-basis:48px; padding:0 1px; font-size:1.25rem; }.search-btn { flex-basis:58px; padding:0 2px; }#filterList { flex:0 0 92px; min-width:92px; padding:1px 2px; font-size:1.25rem; }.wirtualus-search-field { min-width:0; padding:0 6px; }.posters { display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:8px; }.card { flex:0 0 min(88vw,346px); height:575px; scroll-snap-align:start; }.w-footer__grid { grid-template-columns:1fr; } }
