

* { box-sizing: border-box; }
html, body {
    margin: 0; padding: 0;
    font-family: 'Noto Sans Bengali', 'Hind Siliguri', 'Segoe UI', Arial, sans-serif;
    font-size: 14px; line-height: 1.6;
    color: #222; background: #fffaf3;
}
a { color: #2a1457; text-decoration: none; transition: color .2s; }
a:hover { color: #ff5757; text-decoration: underline; }
img { max-width: 100%; height: auto; vertical-align: middle; border: 0; }
h1, h2, h3, h4, h5 { margin: .6em 0 .4em; color: #2a1457; font-weight: 700; }
h1 { font-size: 1.6em; }
h2 { font-size: 1.3em; }
h3 { font-size: 1.15em; }
h4 { font-size: 1em; }
p  { margin: .5em 0; }
ul, ol { padding-left: 1.4em; margin: .6em 0; }
table { width: 100%; border-collapse: collapse; margin: .6em 0; }
table th, table td { padding: 6px 10px; border: 1px solid #e3d8c0; text-align: left; }
table th { background: #fff3d6; color: #2a1457; }
hr { border: 0; border-top: 1px dashed #d4c8a8; margin: 1em 0; }
input, button { font: inherit; }
button { background: #ffd166; color: #2a1457; border: 0; padding: 8px 16px; border-radius: 4px; cursor: pointer; font-weight: 700; }
button:hover { background: #ff5757; color: #fff; }


.page-bd, .container, .x-shell, .dir-top, .ft-thread, .news-card,
.t-stream, .b-shell, .vh-wrap, .lv-wrap, .ap-wrap, .ld-bg,
.rc-card, .dc-entry, .pp-main, .cm-intro {
    max-width: 1100px; margin: 0 auto; padding: 0 16px;
}


header, .tzt-header, .site-nav, .topbar, .t-top, .m-h, .b-cover, .x-hd,
.dir-top, .fr-bar, .sh-hd, .vh-main > header, .qa-hd, .ap-hd > .ap-bar,
.lv-top, .ld-hd, .d-head, .wiki-head, .rv-top, .news-top, .g-bar,
.ft-top, .pp-bar, .vd-hd, .ad-top, .rc-hd, .cm-hd, .tp-hd, .dc-bar,
.pr-hero {
    background: linear-gradient(90deg, #2a1457 0%, #5b2c8f 100%);
    color: #fff;
    padding: 12px 16px;
    box-shadow: 0 2px 8px rgba(0,0,0,.1);
    display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
}
header a, .tzt-header a, .site-nav a, header h1, header h2, header span, header strong, header em,
.t-top a, .m-h a, .x-hd a, .dir-top a, .fr-bar a, .sh-hd a, .vh-main > header a,
.qa-hd a, .lv-top a, .ld-hd a, .d-head a, .news-top a, .g-bar a, .ft-top a,
.pp-bar a, .vd-hd a, .ad-top a, .rc-hd a, .cm-hd a, .tp-hd a, .dc-bar a {
    color: #ffd166;
}
header img, .tzt-header img, .site-nav img, .topbar img,
.t-top img, .m-h img, .b-shell img, .x-hd img, .dir-top img, .fr-bar img,
.sh-hd img, .qa-hd img, .lv-top img, .ld-hd img, .d-head img, .news-top img,
.g-bar img, .ft-top img, .pp-bar img, .vd-hd img, .ad-top img, .rc-hd img,
.cm-hd img, .tp-hd img, .dc-bar img {
    max-height: 38px;
}


nav, .site-menu, .x-tabs, .dir-quick, .rv-nav, .news-bar, .m-tab,
.ft-crumb, .ap-hd ul, .vh-side .vh-menu, .qa-tip, .lv-now, .ld-hd nav {
    display: flex; align-items: center; gap: 18px; flex-wrap: wrap;
    list-style: none; padding: 0; margin: 0;
}
.site-menu li, .x-tabs a, .dir-quick li, .vh-menu li, .rv-nav li {
    list-style: none;
}


.hero, .t-banner, .m-banner, .b-cover, .news-card .news-h1,
.ap-hero, .lv-stage, .ld-hero, .pp-pics, .rc-cover, .pr-hero {
    background: linear-gradient(135deg, #ffd166 0%, #ff5757 100%);
    color: #2a1457; padding: 32px 24px; margin: 16px 0;
    border-radius: 8px; text-align: center;
}
.hero h1, .hero-title, .t-banner h1, .m-banner-text p, .b-cover h1,
.ap-info h1, .lv-stage-text h1, .ld-hero h1, .pr-meta h1 {
    color: #2a1457; font-size: 2em; margin: 0 0 .3em;
}
.hero-sub, .t-banner p, .b-cover-sub, .lv-stage-text p, .ld-hero p, .rc-byline {
    color: #582a14; font-size: 1.05em;
}


.hero-btn, .ld-btn-1, .lv-watch, .ap-android, .ap-ios, .ad-dl,
.cm-btn, .qa-more, .b-more, .sh-btn {
    display: inline-block; padding: 10px 22px; margin: 8px 4px;
    background: #2a1457; color: #ffd166 !important; border-radius: 24px;
    font-weight: 700; text-decoration: none;
}
.hero-btn:hover, .ld-btn-1:hover, .lv-watch:hover, .ap-android:hover,
.ap-ios:hover, .ad-dl:hover, .cm-btn:hover, .qa-more:hover, .sh-btn:hover {
    background: #ff5757; color: #fff !important;
}
.ld-btn-2 {
    display: inline-block; padding: 10px 22px; margin: 8px 4px;
    background: transparent; color: #2a1457 !important;
    border: 2px solid #2a1457; border-radius: 24px; font-weight: 700;
}


.card-grid, .grid, .vh-grid, .ap-rec-list, .pp-rel-row, .ad-rec-list,
.dir-cats, .ld-fs, .sh-prod-grid, .g-more-grid, .ad-shot-row,
.lv-ch-list, .ap-screens-row {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(220px,1fr));
    gap: 16px; margin: 16px 0;
}
.card, .vh-item, .pp-rel-row > a, .ap-rec-list li, .ad-rec-list li,
.dir-cat, .sh-prod, .g-more-grid > a, .lv-ch-list > a, .ld-plan,
.tp-item, .qa-q, .ft-post, .pp-rv, .ad-r {
    background: #fff; border: 1px solid #ead8b8; border-radius: 8px;
    padding: 12px; box-shadow: 0 1px 3px rgba(0,0,0,.06);
    transition: transform .2s, box-shadow .2s;
}
.card:hover, .vh-item:hover, .ap-rec-list li:hover, .ad-rec-list li:hover,
.dir-cat:hover, .sh-prod:hover, .g-more-grid > a:hover, .ld-plan:hover,
.tp-item:hover {
    transform: translateY(-3px); box-shadow: 0 4px 12px rgba(0,0,0,.12);
}
.card h3, .card h4, .vh-item h4, .sh-prod p, .ad-rec-list span, .ap-rec-list span {
    margin: .5em 0 .2em; color: #2a1457; font-size: 1em;
}
.card-time, .vh-meta, .b-meta, .tp-score, .news-info, .ad-r small {
    font-size: .85em; color: #888;
}


.tzt-panel, .tzt-panel_bd, .tzt-media-box, .tzt-comment-box {
    background: #fff; border: 1px solid #ead8b8; border-radius: 8px;
    padding: 12px 16px; margin: 12px 0; box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
.tzt-panel_hd { padding: 8px 4px; border-bottom: 1px solid #f0e4c2; margin-bottom: 8px; }
.tzt-panel_hd h3 { margin: 0; color: #2a1457; }
.tzt-media-box { display: flex; gap: 12px; align-items: center; margin: 10px 0; padding: 12px; }
.tzt-media-box_hd { flex: 1; }
.tzt-media-box_title { margin: 0 0 .3em; color: #2a1457; font-size: 1.05em; }
.tzt-media-box_desc { color: #555; font-size: .9em; }
.tzt-media-box_time { color: #999; font-size: .8em; margin-top: 4px; }
.tzt-media-box_time .text-red { color: #ff5757; font-weight: 700; }
.tzt-media-box_bd img { width: 110px; height: 80px; object-fit: cover; border-radius: 4px; }
.tzt-link.clearfix { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; }
.tzt-link.clearfix li { background: #fff3d6; padding: 4px 10px; border-radius: 4px; }
.img-radius { border-radius: 8px; }
.img-responsive { width: 100%; }
.split-line { display: inline-block; width: 1px; height: .9em; background: #ccc; margin: 0 8px; vertical-align: middle; }
.text-muted { color: #999; }
.text-center { text-align: center; }
.pull-left { float: left; }
.mb15 { margin-bottom: 15px; }

/* ============ Side / Aside ============ */
aside, .vh-side, .b-side, .rv-side, .qa-aside, .vd-side, .pp-info,
.d-aside, .wiki-toc, .ad-rec, .pr-side, .lv-news {
    background: #fff; border: 1px solid #ead8b8; border-radius: 8px;
    padding: 14px; margin: 12px 0;
}
aside h3, aside h4, .vh-side h4, .b-widget h4 {
    color: #2a1457; border-bottom: 2px solid #ffd166; padding-bottom: 6px; margin-top: 0;
}


.x-rank, .post-list, .rank-list, .ar-line, .rss-item,
.tp-list, .lv-schedule ul, .qa-list, .news-related ol {
    list-style: none; padding: 0;
}
.x-rank li, .post-list li, .rank-list li {
    display: flex; align-items: center; gap: 10px;
    padding: 8px 0; border-bottom: 1px dashed #ead8b8;
}
.x-num { font-weight: 700; color: #ff5757; min-width: 28px; }


.x-list table, .cm-t, .pp-spec, .ad-tab, .rv-spec, .pr-info-tab {
    background: #fff; border: 1px solid #ead8b8;
}
.x-list table th, .cm-t th, .pp-spec th, .ad-tab th, .rv-spec td:first-child {
    background: #fff3d6; color: #2a1457;
}


footer, .footer, .site-foot, .x-foot, .dir-foot, .fr-foot, .sh-foot,
.vh-foot, .qa-foot, .ap-foot, .lv-foot, .ld-foot, .d-foot, .wiki-foot,
.rv-foot, .news-foot, .g-foot, .ft-foot, .pp-foot, .vd-foot, .ad-foot,
.rc-foot, .cm-foot, .tp-foot, .dc-foot, .pr-foot {
    background: #2a1457; color: #c5b5e6;
    padding: 24px 16px; margin-top: 40px;
    text-align: center; font-size: .9em;
}
footer a, .site-foot a, .footer a { color: #ffd166; }

/* ============ Friendly links / external ============ */
.friend-list, .friend-section, .links-bar, .x-friends,
.dir-friend, .fr-side .fr-widget, .sh-friends, .vh-friends,
.qa-aside, .ap-friends, .lv-news, .ld-friends, .b-widget-link,
.rv-side-card, .news-friend, .g-friend, .ft-related, .pp-friend,
.vd-side, .ad-friend, .rc-friend, .cm-friend, .tp-friend, .dc-friend {
    background: #fff8e6; border: 1px dashed #ffd166;
    padding: 10px 14px; margin: 16px 0; border-radius: 6px;
}
.friend-list { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; }
.friend-list li { background: #fff; padding: 4px 10px; border-radius: 4px; }

/* ============ Tags ============ */
.tag-cloud a, .vh-tags a, .dc-syn-list a {
    display: inline-block; background: #ffd166; color: #2a1457 !important;
    padding: 3px 10px; border-radius: 12px; margin: 3px;
    font-size: .85em; text-decoration: none;
}
.tag-cloud a:hover, .vh-tags a:hover, .dc-syn-list a:hover {
    background: #ff5757; color: #fff !important;
}


.d-article, .b-entry, .wiki-body-cell, .rv-content, .news-card,
.g-intro, .g-steps, .ft-thread, .ap-desc, .ap-about, .pp-desc, .rc-card,
.dc-entry, .cm-deep {
    background: #fff; border: 1px solid #ead8b8; border-radius: 8px;
    padding: 18px 22px; margin: 12px 0; box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
.d-title, .news-h1, .rc-h1, .dc-word, .b-cover h1 {
    color: #2a1457; border-bottom: 3px solid #ffd166; padding-bottom: 8px;
}

/* ============ Step / Time / Pros & Cons ============ */
.g-step { display: flex; gap: 16px; align-items: flex-start; margin: 12px 0; }
.g-step-num { background: #2a1457; color: #ffd166; width: 36px; height: 36px;
              border-radius: 50%; display: flex; align-items: center; justify-content: center;
              font-weight: 700; flex-shrink: 0; }
.g-step-body { flex: 1; }
.rv-pc { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.rv-pros { background: #eaffea; border: 1px solid #b7eab7; border-radius: 6px; padding: 10px; }
.rv-cons { background: #ffe9e9; border: 1px solid #ffaaaa; border-radius: 6px; padding: 10px; }
.cm-block { background: #fff; border-left: 4px solid #ffd166; padding: 10px 14px; margin: 8px 0; }

/* ============ Score badge ============ */
.rv-score { background: #2a1457; color: #ffd166; padding: 6px 14px; border-radius: 6px; display: inline-block; }
.rv-score-num { font-size: 1.8em; font-weight: 700; }
.ap-rate, .pp-rate, .tp-score { color: #ff5757; font-weight: 700; }

/* ============ Live dot ============ */
.lv-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%;
          background: #ff5757; margin-right: 4px;
          animation: blink 1s infinite; }
@keyframes blink { 0%,100%{opacity:1;} 50%{opacity:.3;} }

/* ============ Q&A 卡片 ============ */
.qa-q h3 { color: #2a1457; }
.qa-best { background: #fff8e6; border-left: 4px solid #ffd166; padding: 6px 10px; }
.qa-meta { color: #888; font-size: .85em; }

/* ============ Forum 帖子 ============ */
.ft-post { display: flex; gap: 12px; align-items: flex-start; }
.ft-avatar { background: #ffd166; color: #2a1457; width: 50px; height: 50px;
             border-radius: 50%; display: flex; align-items: center; justify-content: center;
             font-weight: 700; flex-shrink: 0; font-size: .8em; }
.ft-body { flex: 1; }

/* ============ Profile ============ */
.pr-hero { display: flex; gap: 20px; align-items: center; }
.pr-avatar img { width: 100px; height: 100px; border-radius: 50%; border: 4px solid #ffd166; }
.pr-stat b { color: #ffd166; }

/* ============ Dictionary ============ */
.dc-word { font-size: 2em; }
.dc-pron { color: #888; font-style: italic; }

/* ============ Site map cards ============ */
.sm-list { column-count: 2; column-gap: 30px; list-style: none; padding: 0; }
.sm-list li { padding: 4px 0; break-inside: avoid; }

/* ============ Top list rank ============ */
.tp-item { display: flex; gap: 12px; align-items: center; }
.tp-rank { background: linear-gradient(135deg,#ffd166,#ff5757); color: #fff;
           width: 50px; height: 50px; border-radius: 50%;
           display: flex; align-items: center; justify-content: center;
           font-weight: 700; flex-shrink: 0; font-size: 1.1em; }
.tp-item img { width: 90px; height: 60px; object-fit: cover; border-radius: 6px; }

/* ============ Pricing card highlight ============ */
.ld-plan { text-align: center; padding: 20px; }
.ld-plan h4 { margin: 0 0 8px; }
.ld-num { font-size: 2em; color: #ff5757; font-weight: 700; margin: .3em 0; }
.ld-pop { transform: scale(1.05); border: 2px solid #ff5757; }

/* ============ Search bar ============ */
input[type="text"], input[type="search"] {
    padding: 8px 12px; border: 1px solid #ead8b8; border-radius: 4px;
    min-width: 200px; background: #fff;
}

/* ============ News bar / breadcrumb ============ */
.news-bar, .d-crumb, .ft-crumb {
    background: #fff8e6; padding: 8px 14px; border-radius: 4px;
    font-size: .9em; margin: 8px 0;
}

/* ============ News card / hero feed ============ */
.m-feed-item { display: flex; gap: 12px; padding: 12px;
               background: #fff; border-bottom: 1px solid #f0e4c2; }
.m-feed-item img { width: 90px; height: 65px; object-fit: cover; border-radius: 4px; flex-shrink: 0; }
.m-feed-meta b { color: #2a1457; }
.m-feed-meta span { color: #888; font-size: .85em; margin-left: 8px; }

/* ============ Wiki layout ============ */
.wiki-wrap { background: #fff; border: 1px solid #ead8b8; border-radius: 8px; overflow: hidden; }
.wiki-toc { background: #fff8e6; padding: 14px; min-height: 200px; }
.wiki-toc h4 { color: #2a1457; margin-top: 0; }
.wiki-toc ol { padding-left: 1.4em; }
.wiki-body-cell { padding: 18px 22px; background: #fff; }

/* ============ Cart / shop ============ */
.sh-cart { background: #ff5757; color: #fff !important; padding: 6px 14px;
           border-radius: 20px; font-size: .9em; }
.sh-promo { background: linear-gradient(90deg,#ff5757,#ffd166); color: #fff;
            padding: 30px; border-radius: 10px; text-align: center; margin: 16px 0; }
.sh-promo h2 { color: #fff; margin: 0 0 8px; }
.sh-cats a { display: block; text-align: center; }
.sh-cats img { width: 100%; height: 100px; object-fit: cover; border-radius: 6px; }
.sh-prod img { width: 100%; height: 130px; object-fit: cover; border-radius: 4px; }
.sh-price { color: #ff5757; font-weight: 700; font-size: 1.05em; }
.sh-name { font-size: .9em; color: #444; }

/* ============ Live channel ============ */
.lv-ch-list a { background: #fff; border: 1px solid #ead8b8; border-radius: 8px;
                padding: 8px; text-align: center; display: block; }
.lv-ch-list img { width: 100%; height: 90px; object-fit: cover; border-radius: 4px; }
.lv-bg { width: 100%; max-height: 280px; object-fit: cover; border-radius: 8px; }
.lv-now { background: #fff; color: #2a1457; padding: 4px 12px; border-radius: 16px; }

/* ============ App download ============ */
.ap-icon img { width: 90px; height: 90px; border-radius: 16px; }
.ap-dls a { margin-right: 8px; }
.ap-screens-row img { height: 200px; object-fit: cover; border-radius: 6px; }

/* ============ Video detail ============ */
.vd-play-bg { background-size: cover; background-position: center;
              height: 320px; display: flex; align-items: center; justify-content: center;
              border-radius: 8px; position: relative; }
.vd-playbtn { background: rgba(0,0,0,.6); color: #fff !important;
              width: 70px; height: 70px; border-radius: 50%;
              display: flex; align-items: center; justify-content: center;
              font-size: 2em; }
.vd-playbtn:hover { background: #ff5757; }
.vd-dur { position: absolute; bottom: 10px; right: 10px;
          background: rgba(0,0,0,.7); color: #fff; padding: 2px 8px; border-radius: 4px; font-size: .85em; }
.vd-up { display: flex; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 1px dashed #ead8b8; }
.vd-up img { width: 80px; height: 50px; object-fit: cover; border-radius: 4px; }

/* ============ Magazine layout (index3) ============ */
.main-wrap { display: grid; grid-template-columns: 280px 1fr; gap: 20px; margin: 16px 0; }
.side-col { background: #fff; padding: 14px; border-radius: 8px; }
.side-box { margin-bottom: 18px; }
.content-col .featured-post img { width: 100%; height: 220px; object-fit: cover; border-radius: 8px; }
.post-thumb img { width: 110px; height: 80px; object-fit: cover; border-radius: 4px; }
.post-list { list-style: none; padding: 0; }
.post-list li { padding: 10px 0; border-bottom: 1px dashed #ead8b8; }
.post-list li a { display: flex; gap: 12px; align-items: center; color: #222; }

/* ============ Portal blocks (index4) ============ */
.t-block { background: #fff; padding: 14px 18px; margin: 12px 0;
           border-radius: 8px; border: 1px solid #ead8b8; }
.t-block-h h3 { margin: 0 0 8px; }
.t-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px,1fr)); gap: 10px; }
.t-gallery img { width: 100%; height: 110px; object-fit: cover; border-radius: 4px; }
.t-list dl { margin: 0; }
.t-list dt { font-weight: 700; color: #2a1457; margin-top: 8px; }
.t-list dd { margin: 0 0 8px 0; color: #555; font-size: .92em; }

/* ============ Blog (index6) ============ */
.b-layout { display: grid; grid-template-columns: 2fr 1fr; gap: 20px; margin: 16px 0; }
.b-entry { padding: 16px 20px; }
.b-entry figure img { width: 100%; height: 220px; object-fit: cover; border-radius: 6px; }
.b-widget { background: #fff; padding: 12px 16px; margin-bottom: 14px; border-radius: 8px; border: 1px solid #ead8b8; }
.b-widget ul { list-style: none; padding: 0; }
.b-widget li { padding: 4px 0; border-bottom: 1px dashed #ead8b8; }

/* ============ Forum (index9) ============ */
.fr-board .fr-cat { background: #fff; margin: 12px 0; padding: 12px;
                    border-radius: 8px; border: 1px solid #ead8b8; }
.fr-tab th { background: #fff3d6; }

/* ============ Mobile (index5) ============ */
.m-h { padding: 10px 14px; }
.m-h-title { color: #ffd166; font-weight: 700; margin-left: 8px; }
.m-banner img { width: 100%; height: 180px; object-fit: cover; }
.m-banner-text { background: linear-gradient(0deg, rgba(42,20,87,.85), transparent);
                 color: #fff; padding: 30px 12px 14px; margin-top: -60px; position: relative; }
.m-banner-text p { color: #ffd166; font-size: 1.2em; margin: 0; }
.m-friend { background: #fff8e6; padding: 10px 14px; margin: 12px 0; border-radius: 6px; }

/* ============ Landing (index15) ============ */
.ld-features, .ld-price, .ld-faq, .ld-friends {
    background: #fff; padding: 24px 16px; margin: 12px 0;
    border-radius: 8px; border: 1px solid #ead8b8;
}
.ld-shot { max-width: 100%; margin-top: 16px; border-radius: 8px; box-shadow: 0 6px 20px rgba(0,0,0,.15); }
.ld-fs > div { background: #fff8e6; padding: 16px; border-radius: 8px; text-align: center; }
.ld-fs b { display: inline-block; background: #ffd166; color: #2a1457;
           width: 32px; height: 32px; border-radius: 50%; line-height: 32px; font-weight: 700; }

/* ============ Comparison table (neirong13) ============ */
.cm-t td:first-child, .cm-t th:first-child { font-weight: 700; background: #fff3d6; }

/* ============ Sitemap tree (map6) ============ */
.tree { background: #fff; padding: 12px 18px; border-radius: 8px; border: 1px solid #ead8b8; margin: 12px 0; }

/* ============ Mobile responsive ============ */
@media (max-width: 768px) {
    .main-wrap, .b-layout, .vh-wrap, .pp-main, .rv-body-grid, .b-shell .b-layout {
        grid-template-columns: 1fr;
    }
    .card-grid, .grid, .vh-grid, .ap-rec-list, .pp-rel-row, .ad-rec-list,
    .dir-cats, .ld-fs, .sh-prod-grid {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    }
    .pr-hero { flex-direction: column; text-align: center; }
    h1 { font-size: 1.3em; }
    h2 { font-size: 1.15em; }
}


station, 时间 { display: inline; }
