/* Zibll Visual Child: presentation-only overrides. */
:root {
    --zvc-bg: #f5f7fb;
    --zvc-card: #ffffff;
    --zvc-text: #20243a;
    --zvc-muted: #8a91a8;
    --zvc-primary: #7866f2;
    --zvc-primary-2: #9a82ff;
    --zvc-border: rgba(112, 100, 240, .12);
    --zvc-shadow: 0 12px 34px rgba(45, 50, 90, .07);
}

html body.zibll-visual-child {
    background: var(--zvc-bg) !important;
    color: var(--zvc-text);
}

body.zibll-visual-child #page,
body.zibll-visual-child .site,
body.zibll-visual-child .main-bg,
body.zibll-visual-child .zib-main {
    background: transparent !important;
}

body.zibll-visual-child .site-header,
body.zibll-visual-child .header,
body.zibll-visual-child .zib-header,
body.zibll-visual-child .header-menu,
body.zibll-visual-child .zib-header-top {
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 1px 0 rgba(30, 36, 70, .04);
    backdrop-filter: blur(12px);
}

body.zibll-visual-child .container,
body.zibll-visual-child .container-fluid {
    max-width: 1280px;
}

body.zibll-visual-child .main-content,
body.zibll-visual-child .content-area,
body.zibll-visual-child .posts-warp,
body.zibll-visual-child .posts-list,
body.zibll-visual-child .main-warp,
body.zibll-visual-child .zib-main-content {
    border-radius: 18px;
}

body.zibll-visual-child .card,
body.zibll-visual-child .panel,
body.zibll-visual-child .article-card,
body.zibll-visual-child .posts-item,
body.zibll-visual-child .post-item,
body.zibll-visual-child .post-card,
body.zibll-visual-child .ajax-item,
body.zibll-visual-child .box,
body.zibll-visual-child .zib-widget,
body.zibll-visual-child .widget,
body.zibll-visual-child .sidebar .widget {
    border: 1px solid var(--zvc-border) !important;
    border-radius: 18px !important;
    box-shadow: var(--zvc-shadow) !important;
    background-color: var(--zvc-card) !important;
}

body.zibll-visual-child .btn-primary,
body.zibll-visual-child .but-color,
body.zibll-visual-child .zib-widget-button,
body.zibll-visual-child .wp-block-button__link,
body.zibll-visual-child .but {
    background: linear-gradient(135deg, var(--zvc-primary), var(--zvc-primary-2));
    border: 0;
    border-radius: 10px;
    box-shadow: 0 8px 18px rgba(120, 102, 242, .22);
    color: #fff !important;
}

body.zibll-visual-child .but:not(.hollow),
body.zibll-visual-child .but-color,
body.zibll-visual-child .btn-primary { color: #fff !important; }
body.zibll-visual-child .zvc-native-forum .forum-lists-cover { display:none !important; }
body.zibll-visual-child .zvc-native-forum .imgbox-container,
body.zibll-visual-child .zvc-native-forum .content img,
body.zibll-visual-child .zvc-native-forum .forum-posts-img,
body.zibll-visual-child .zvc-native-forum .posts-img { display:none !important; }
body.zibll-visual-child .zvc-native-images { margin: 12px 0 14px; }

/* Keep search filters/read-history controls readable after the global button theme. */
body.zibll-visual-child [class*="search"] .but,
body.zibll-visual-child [class*="search"] .btn,
body.zibll-visual-child .search-filter button,
body.zibll-visual-child .search-history button {
    color: #fff !important;
    text-shadow: none !important;
}

body.zibll-visual-child .text-color,
body.zibll-visual-child .muted-color,
body.zibll-visual-child .em09,
body.zibll-visual-child .sub-text {
    color: var(--zvc-muted);
}

body.zibll-visual-child input,
body.zibll-visual-child textarea,
body.zibll-visual-child select {
    border-radius: 10px;
    border-color: rgba(50, 60, 100, .1);
}

body.zibll-visual-child a:hover {
    color: var(--zvc-primary);
}

@media (max-width: 768px) {
    body.zibll-visual-child .container,
    body.zibll-visual-child .container-fluid {
        padding-left: 14px;
        padding-right: 14px;
    }
}

/* Portal homepage */
.zvc-portal { max-width: 1120px; margin: 0 auto; padding: 42px 18px 70px; }
.zvc-hero { padding: 48px 24px 46px; text-align: center; border: 1px solid #e4e0ff; border-radius: 22px; background: radial-gradient(circle at 15% 15%, #eeeaff 0, transparent 45%), radial-gradient(circle at 90% 90%, #e5f0ff 0, transparent 48%), #fff; box-shadow: 0 18px 44px rgba(78,70,150,.08); }
.zvc-badge { display: inline-block; padding: 8px 15px; border-radius: 99px; color: var(--zvc-primary); background: #f2efff; font-size: 13px; }
.zvc-hero h1 { margin: 20px 0 10px; font-size: clamp(30px, 4vw, 44px); color: #1e2138; }
.zvc-hero p { color: #8b91aa; margin: 0 auto 24px; }
.zvc-search { display: flex; max-width: 600px; margin: 0 auto; padding: 6px; border-radius: 14px; background: #fff; box-shadow: 0 10px 28px rgba(65,63,120,.12); }
.zvc-search input { flex: 1; min-width: 0; border: 0 !important; box-shadow: none !important; padding: 12px 15px; }
.zvc-search button { border: 0; border-radius: 10px; padding: 0 24px; color: #fff; background: linear-gradient(135deg,#7161ef,#9177ff); }
.zvc-feature-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin: 20px 0 28px; }
.zvc-feature-card { display: flex; align-items: center; gap: 12px; padding: 18px; border-radius: 16px; background: #fff; border: 1px solid rgba(112,100,240,.1); box-shadow: var(--zvc-shadow); }
.zvc-feature-icon { display: grid; place-items: center; flex: 0 0 38px; height: 38px; border-radius: 12px; color: var(--zvc-accent); background: color-mix(in srgb, var(--zvc-accent) 12%, white); }
.zvc-feature-card strong,.zvc-feature-card small { display:block; } .zvc-feature-card strong { color:#505670; } .zvc-feature-card small { margin-top:4px; color:#a0a5b8; font-size:11px; }
.zvc-home-columns { display:grid; grid-template-columns:minmax(0, 1fr) 280px; gap:20px; }
.zvc-post-panel,.zvc-side-panel { background:#fff; border:1px solid rgba(112,100,240,.1); border-radius:18px; box-shadow:var(--zvc-shadow); overflow:hidden; }
.zvc-panel-heading { display:flex; align-items:center; justify-content:space-between; padding:20px 22px; border-bottom:1px solid #f0f1f6; } .zvc-panel-heading h2 { margin:0; font-size:18px; color:#252941; } .zvc-panel-heading a { color:var(--zvc-primary); font-size:13px; }
.zvc-post-row { display:flex; gap:13px; padding:20px 22px; border-bottom:1px solid #f3f3f7; } .zvc-post-row:last-child{border-bottom:0}.zvc-post-avatar img{width:42px;height:42px;border-radius:50%}.zvc-post-body{min-width:0;flex:1}.zvc-post-body h3{margin:0;font-size:16px}.zvc-post-body h3 a{color:#34384d}.zvc-post-meta{margin-top:5px;color:#a0a5b8;font-size:12px}.zvc-post-body p{margin:8px 0 0;color:#727991;font-size:13px}.zvc-side-content{padding:18px;color:#8b91aa;font-size:13px}
.zvc-pagination{display:flex;justify-content:center;align-items:center;gap:12px;padding:18px;border-top:1px solid #f3f3f7;color:#9298ab;font-size:12px}.zvc-pagination a{padding:7px 13px;border-radius:9px;color:#fff;background:linear-gradient(135deg,#7161ef,#9177ff);box-shadow:0 6px 14px rgba(113,97,239,.2)}
.zvc-post-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;max-width:520px}.zvc-post-images span{display:flex;align-items:center;justify-content:center;height:112px;padding:5px;border-radius:10px;background:#f7f8fc;overflow:hidden}.zvc-post-images img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
@media (max-width: 800px) { .zvc-feature-grid{grid-template-columns:repeat(2,1fr)} .zvc-home-columns{grid-template-columns:1fr} }
@media (max-width: 480px) { .zvc-portal{padding:22px 12px 40px}.zvc-feature-grid{gap:10px}.zvc-feature-card{padding:12px}.zvc-hero{padding:34px 14px}.zvc-search button{padding:0 15px} }
@media (max-width: 560px) { .zvc-post-images span{height:84px}.zvc-post-row{padding:16px}.zvc-post-avatar{display:none} }
