/* Public world encyclopedia pages */
.world-page { max-width: 920px; margin: 0 auto; padding: 30px 16px 110px; }#main-wrap.world-page{display:block;width:min(1180px,calc(100% - 32px));max-width:1180px;margin-left:auto;margin-right:auto;padding:30px 16px 110px;font-size:16px;line-height:1.5;box-sizing:border-box;transform:none}
.world-page-heading { max-width: 720px; margin: 0 auto 22px; padding: 24px 18px; text-align: center; border: 1px solid rgba(255,215,0,.72); border-radius: 14px; background: rgba(8,7,5,.68); box-shadow: 0 0 24px rgba(255,215,0,.12); }
.world-page-heading h1 { margin: 7px 0 8px; color: var(--tc, #ffd700); font-size: clamp(24px, 5vw, 42px); letter-spacing: 4px; text-shadow: 0 0 12px var(--tc-sh, rgba(255,215,0,.35)); }
.world-page-heading p { margin: 0; color: #f2eee5; font-size: 14px; line-height: 1.7; }
.world-admin-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; }
.world-admin-edit { display: inline-flex; align-items: center; gap: 7px; margin-top: 14px; padding: 8px 12px; color: #171208; border: 1px solid var(--tc, #ffd700); border-radius: 999px; background: var(--tc, #ffd700); font-size: 11px; font-weight: 700; text-decoration: none; box-shadow: 0 0 12px var(--tc-sh, rgba(255,215,0,.25)); }
.world-admin-add { background: transparent; color: var(--tc, #ffd700); }
.world-admin-edit:hover { filter: brightness(1.08); transform: translateY(-1px); }
.world-kicker { color: var(--tc, #ffd700); font-size: 10px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; }
.world-category-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0 auto 20px; }
.world-category-nav a { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; color: #eee8d6; border: 1px solid rgba(255,215,0,.48); border-radius: 999px; background: rgba(0,0,0,.52); text-decoration: none; font-size: 11px; transition: .2s ease; }
.world-category-nav a:hover,
.world-category-nav a.active {
    color: #f2f5ee;
    background: rgba(0, 255, 136, .18);
    border-color: var(--tc, #00ff88);
    box-shadow: 0 0 0 1px rgba(0,255,136,.18), 0 6px 16px rgba(0,0,0,.22);
}
.world-category-nav a:hover i,
.world-category-nav a.active i { color: inherit; }
.world-card-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.world-card { display: flex; min-height: 170px; overflow: hidden; color: #eee8d6; border: 1px solid rgba(255,215,0,.55); border-radius: 14px; background: rgba(9,7,5,.74); box-shadow: 0 8px 24px rgba(0,0,0,.18); transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.world-card-main { display: flex; min-width: 0; flex: 1 1 auto; color: inherit; text-decoration: none; }
.world-card-admin-edit { align-self: flex-start; display: inline-flex; align-items: center; gap: 5px; margin: 12px 12px 0 0; padding: 5px 8px; color: #171208; border: 1px solid var(--tc, #ffd700); border-radius: 999px; background: var(--tc, #ffd700); font-size: 9px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.world-card-admin-edit:hover { filter: brightness(1.08); transform: translateY(-1px); }
.world-card:hover { transform: translateY(-2px); border-color: var(--tc, #ffd700); background: rgba(20,15,7,.82); }
.world-card-image { width: 112px; min-width: 112px; object-fit: cover; background: rgba(0,0,0,.3); }
.world-card-icon { width: 80px; height: 80px; min-width: 80px; margin: 18px 0 0 16px; object-fit: contain; align-self: flex-start; }
.world-card-icon-fallback { display: inline-flex; align-items: center; justify-content: center; color: var(--tc, #ffd700); border: 1px solid rgba(255,215,0,.45); border-radius: 50%; font-size: 24px; }
.world-card-body { display: flex; min-width: 0; flex: 1 1 auto; flex-direction: column; gap: 6px; padding: 16px; }
.world-card-body strong { color: var(--tc, #ffd700); font-size: 17px; overflow-wrap: anywhere; word-break: normal; }
.world-card-subtitle { color: #f3d989; font-size: 11px; overflow-wrap: anywhere; }
.world-card-description { color: #ddd6c8; font-size: 11px; line-height: 1.55; overflow-wrap: anywhere; }
.world-card-meta { display: flex; flex-wrap: wrap; gap: 5px 10px; color: #cfc6b7; font-size: 10px; }
.world-card-meta b { color: #f2d878; }
.world-card-link { margin-top: auto; color: var(--tc, #ffd700); font-size: 10px; font-weight: 700; text-transform: uppercase; }
.world-empty-card { grid-column: 1 / -1; padding: 36px 20px; color: #cfc6b7; text-align: center; border: 1px dashed rgba(255,215,0,.48); border-radius: 14px; background: rgba(9,7,5,.68); }
.world-empty-card i { color: var(--tc, #ffd700); font-size: 28px; }
.world-empty-card h3 { margin: 12px 0 6px; color: var(--tc, #ffd700); }
.world-empty-card p { margin: 0; font-size: 12px; }
.world-detail { max-width: 760px; margin: 0 auto; }
.world-back-link { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 12px; color: var(--tc, #ffd700); font-size: 12px; text-decoration: none; }
.world-detail-card { overflow: hidden; border: 1px solid rgba(255,215,0,.58); border-radius: 16px; background: rgba(8,7,5,.78); box-shadow: 0 12px 30px rgba(0,0,0,.28); }
.world-detail-image { display: block; width: 100%; max-height: 300px; object-fit: cover; background: rgba(0,0,0,.3); }
.world-detail-heading { padding: 22px 20px 12px; text-align: center; }
.world-detail-heading h2 { margin: 7px 0; color: var(--tc, #ffd700); font-size: clamp(24px, 5vw, 38px); }
.world-detail-heading p { margin: 0; color: #f3d989; font-size: 13px; }
.world-detail-lead { margin: 0 20px 16px; padding: 14px 16px; color: #f3eee2; border-left: 3px solid var(--tc, #ffd700); background: rgba(0,0,0,.28); font-size: 13px; line-height: 1.75; }
.world-section { margin: 16px 20px; padding-top: 14px; border-top: 1px solid rgba(255,215,0,.24); }
.world-section h3 { margin: 0 0 10px; color: var(--tc, #ffd700); font-size: 13px; letter-spacing: 2px; }
.world-detail-rows { display: grid; gap: 8px; }
.world-detail-row { display: grid; grid-template-columns: minmax(110px, 30%) 1fr; gap: 12px; padding: 9px 10px; color: #eee8d6; border-radius: 8px; background: rgba(0,0,0,.28); font-size: 11px; line-height: 1.6; }
.world-detail-row b { color: #f0d777; }
.world-detail-row-label { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.world-event-row { align-items: start; }
.world-event-copy { display: grid; gap: 10px; min-width: 0; }
.world-event-part { display: grid; gap: 3px; padding: 8px 10px; border-left: 2px solid var(--tc, #ffd700); border-radius: 5px; background: rgba(0,0,0,.2); }
.world-event-part strong { color: var(--tc, #ffd700); font-size: 10px; letter-spacing: 1px; text-transform: uppercase; }
.world-event-part span { min-width: 0; color: #eee8d6; line-height: 1.65; overflow-wrap: anywhere; }
.world-row-admin-edit { display: inline-flex; align-items: center; gap: 4px; padding: 3px 7px; color: #171208; border: 1px solid var(--tc, #ffd700); border-radius: 999px; background: var(--tc, #ffd700); font-size: 9px; font-weight: 700; line-height: 1.2; text-decoration: none; }
.world-row-admin-edit:hover { filter: brightness(1.08); transform: translateY(-1px); }
.world-related-links { display: grid; gap: 8px; }
.world-related-links a { display: flex; min-width: 0; justify-content: space-between; gap: 12px; padding: 10px 12px; color: #eee8d6; border: 1px solid rgba(255,215,0,.25); border-radius: 8px; background: rgba(0,0,0,.28); text-decoration: none; font-size: 11px; }
.world-related-links a:hover { border-color: var(--tc, #ffd700); }
.world-related-links a > b, .world-related-links span { min-width: 0; overflow-wrap: anywhere; word-break: normal; }
.world-related-links span { color: #cfc6b7; text-align: right; }
@media (max-width: 650px) {
    .world-page { padding: 22px 11px 100px; }
    .world-detail-row { grid-template-columns: 1fr; gap: 2px; }
    .world-related-links a { flex-direction: column; gap: 3px; }
    .world-related-links span { text-align: left; }
}

.world-section { overflow: hidden; }
.world-section > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; list-style: none; color: var(--tc, #ffd700); font-size: 13px; font-weight: 700; letter-spacing: 2px; }
.world-section > summary::-webkit-details-marker { display: none; }
.world-section > summary i { transition: transform .2s ease; font-size: 11px; }
.world-section[open] > summary i { transform: rotate(180deg); }
.world-section[open] .world-detail-rows { margin-top: 10px; }
.world-discussion-cta { display: flex; justify-content: center; padding: 0 20px 8px; }
.world-discussion-button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; color: #000; background: var(--tc, #ffd700); border-radius: 999px; font-size: 11px; font-weight: 700; text-decoration: none; box-shadow: 0 0 14px var(--tc-sh, rgba(255,215,0,.3)); }
.world-discussion-button:hover { filter: brightness(1.08); transform: translateY(-1px); }
.world-card-body strong, .world-detail-heading h2, .world-page-heading h1, .world-kicker, .world-section > summary, .world-card-link { color: var(--tc, #ffd700); }
.world-page, .world-page * { --story-color: var(--tc, #ffd700); }
@media (max-width: 650px) { .world-page-heading { margin-bottom: 14px; padding: 18px 14px; } .world-card-description { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } }

@media (max-width: 650px) {
    /* Seluruh daftar Informasi memakai dua kartu sejajar agar scroll ponsel lebih pendek. */
    .world-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .world-card { display: block; min-height: 0; }
    .world-card-main { display: block; }
    .world-card-admin-edit { margin: 0 10px 10px; justify-content: center; }
    .world-card-image { display: block; width: 100%; min-width: 0; height: 82px; object-fit: cover; }
    .world-card-icon, .world-card-icon-fallback { width: 56px; height: 56px; min-width: 56px; margin: 12px auto 0; }
    .world-card-body { padding: 10px; gap: 4px; }
    .world-card-body strong { font-size: 14px; line-height: 1.25; }
    .world-card-subtitle { font-size: 10px; line-height: 1.35; }
    .world-card-description { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 10px; line-height: 1.45; }
    .world-card-meta { display: none; }
    .world-card-link { font-size: 9px; }
}

.world-search{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin:1rem 0 1.25rem;padding:.8rem 1rem;border:1px solid rgba(255,215,0,.45);border-radius:14px;background:rgba(19,13,8,.76)}
.world-search label{width:100%;font-weight:700;color:#ffd21a;font-size:.92rem}
.world-search input{flex:1 1 240px;min-width:0;padding:.75rem .9rem;border:1px solid rgba(255,215,0,.6);border-radius:10px;background:#0f0c09;color:#fff;font:inherit}
.world-search input:focus{outline:2px solid #ffd21a;outline-offset:2px}
.world-search span{color:#e9dca0;font-size:.85rem}
.world-card[hidden]{display:none}
.world-region-groups{display:grid;gap:24px}
.world-region-group{padding:16px;border:1px solid rgba(255,215,0,.28);border-radius:16px;background:rgba(5,4,3,.38)}
.world-region-group-heading{margin:0 0 14px;padding:4px 6px 12px;border-bottom:1px solid rgba(255,215,0,.25);text-align:center}
.world-region-group-heading h2{margin:6px 0;color:var(--tc,#ffd700);font-size:clamp(20px,4vw,30px);letter-spacing:2px}
.world-region-group-heading p{max-width:680px;margin:0 auto;color:#e9dfca;font-size:12px;line-height:1.65}
.world-region-overview{display:grid;gap:5px;margin:0 0 14px;padding:14px 16px;color:#eee8d6;border:1px solid rgba(255,215,0,.52);border-radius:12px;background:rgba(0,0,0,.62);text-decoration:none}
.world-region-overview:hover{border-color:var(--tc,#ffd700);background:rgba(20,15,7,.8)}
.world-region-overview-title{color:var(--tc,#ffd700);font-size:14px;font-weight:700}
.world-region-overview-copy{color:#ddd6c8;font-size:11px;line-height:1.6}
@media (max-width:650px){.world-region-group{padding:10px}.world-region-group-heading{padding-bottom:10px}.world-region-overview{padding:12px}.world-region-overview-title{font-size:13px}}

.ui-detail-slider{overflow:hidden;position:relative}
.ui-detail-track{display:flex;width:200%;transform:translateX(0);transition:transform .35s ease;touch-action:pan-y}
.ui-detail-track[data-active="image"]{transform:translateX(-50%)}
.ui-detail-slide{width:50%;flex:0 0 50%;box-sizing:border-box}
.ui-detail-info{padding-bottom:12px}
.ui-detail-thumb{cursor:pointer}
.ui-detail-image{display:flex;min-height:520px;flex-direction:column;align-items:center;justify-content:center;padding:22px;background:rgba(5,4,3,.82)}
.world-detail-full-image{display:block;width:100%;max-height:78vh;object-fit:contain;border:1px solid rgba(255,215,0,.48);border-radius:12px;background:#050403}
.ui-detail-image-caption{display:block;width:max-content;max-width:calc(100% - 24px);margin:12px auto 0;padding:8px 14px;border:1px solid var(--tc,#ffd700);border-radius:999px;background:rgba(0,0,0,.78);color:var(--tc,#ffd700)!important;font-size:11px;line-height:1.4;text-align:center;cursor:pointer}
.ui-detail-hint{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 12px;color:#e9dca0;font-size:10px;text-align:center;background:rgba(0,0,0,.28)}
.ui-detail-hint span{width:7px;height:7px;border-radius:50%;background:#6f6045;cursor:pointer}
.ui-detail-hint span.is-active{background:var(--tc,#ffd700);box-shadow:0 0 8px var(--tc,#ffd700)}
.ui-detail-hint b{margin-left:4px;color:var(--tc,#ffd700);font-weight:600}
@media (max-width:650px){.ui-detail-image{min-height:440px;padding:12px}.world-detail-full-image{max-height:70vh}.ui-detail-hint{font-size:9px}}

.world-detail-image-button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer;text-align:left}
.world-detail-image-button:focus-visible{outline:2px solid var(--tc,#ffd700);outline-offset:4px}

/* Indeks alfabet terhubung ke pencarian dan kartu informasi. */
.world-alphabet{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin:0 auto 10px;padding:8px;border:1px solid rgba(255,215,0,.42);border-radius:12px;background:rgba(0,0,0,.5)}
.world-letter{min-width:27px;padding:6px 5px;border:1px solid rgba(255,215,0,.38);border-radius:6px;background:rgba(0,0,0,.55);color:#e9dca0;font:700 11px inherit;cursor:pointer}
.world-letter:hover,.world-letter.active{background:var(--tc,#ffd700);border-color:var(--tc,#ffd700);color:#111}
.ui-detail-slider{height:auto;transition:height .35s ease}
.ui-detail-track{min-height:0}
.ui-detail-track > .ui-detail-slide{min-width:0}
.stage-hint{display:block;cursor:pointer}
.stage-hint:focus-visible{outline:2px solid var(--tc,#ffd700);outline-offset:3px}

/* Detail Informasi mengikuti pola tiga tahap karakter. */
.world-detail-card .ui-detail-track{width:300% !important;touch-action:auto}
.world-detail-card .ui-detail-track[data-active="full-info"]{transform:translateX(-33.333333%)}
.world-detail-card .ui-detail-track[data-active="image"]{transform:translateX(-66.666667%)}
.world-detail-card .ui-detail-slide{width:33.333333% !important;flex:0 0 33.333333% !important;box-sizing:border-box}
.world-detail-card .stage-hint{display:block;width:max-content;max-width:calc(100% - 40px);margin:10px auto;padding:8px 14px;border:1px solid var(--tc,#ffd700);border-radius:999px;background:rgba(0,0,0,.78);color:var(--tc,#ffd700)!important;font-size:11px;line-height:1.4;text-align:center;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.28)}
.world-detail-card .stage-hint:hover{background:rgba(0,0,0,.94);filter:brightness(1.08)}
.world-detail-card .stage-hint:focus-visible{outline:2px solid var(--tc,#ffd700);outline-offset:3px}
.world-detail-initial{padding-bottom:14px}

/* Panel nonaktif tidak boleh ikut mengambil ruang vertikal. */
.ui-detail-track > [data-detail-slide]{display:none !important;visibility:hidden;pointer-events:none}
.ui-detail-track[data-active="initial"] > [data-detail-slide="initial"],
.ui-detail-track[data-active="info"] > [data-detail-slide="info"],
.ui-detail-track[data-active="full-info"] > [data-detail-slide="full-info"],
.ui-detail-track[data-active="image"] > [data-detail-slide="image"]{display:block !important;visibility:visible;pointer-events:auto}

/* Kartu Informasi mengikuti keterbacaan kartu karakter: satu entri lebar per baris pada ponsel. */
@media (max-width:650px) {
    .world-card-grid { grid-template-columns:1fr; gap:12px; }
    .world-card { display:flex; min-height:150px; }
    .world-card-main { display:flex; }
    .world-card-image { width:112px; min-width:112px; height:auto; object-fit:cover; }
    .world-card-icon, .world-card-icon-fallback { width:74px; height:74px; min-width:74px; margin:18px 0 0 14px; }
    .world-card-body { padding:14px; gap:6px; }
    .world-card-body strong { font-size:16px; line-height:1.35; }
    .world-card-subtitle { font-size:11px; line-height:1.45; }
    .world-card-description { font-size:11px; line-height:1.55; }
    .world-card-meta { display:flex; }
    .world-card-link { font-size:10px; }
}

/* Mode foto penuh detail Informasi: foto langsung diikuti footer. */
body.world-detail-image-active #main-wrap > .back-link,
body.world-detail-image-active #main-wrap > .world-admin-tools,
body.world-detail-image-active #main-wrap > .rt-clock,
body.world-detail-image-active #main-wrap > .world-like,
body.world-detail-image-active #main-wrap > .interaksi-box { display: none !important; }
body.world-detail-image-active #main-wrap { margin-top: 0 !important; padding-top: 0 !important; }
body.world-detail-image-active .ui-detail-slider { margin-top: 0 !important; margin-bottom: 0 !important; }
body.world-detail-image-active .ui-detail-image { padding-top: 0 !important; padding-bottom: 0 !important; min-height: 0 !important; }
body.world-detail-image-active .ui-detail-image img { display: block; margin: 0 auto; }

/* Detail Informasi: teks ditampilkan dahulu; gambar dibuka melalui kontrol terpisah. */
.world-detail-view-image-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: min(100% - 40px, 240px);
    margin: 12px auto 4px;
    padding: 10px 16px;
    color: #080604;
    border: 1px solid var(--tc, #ffd700);
    border-radius: 8px;
    background: var(--tc, #ffd700);
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
}
.world-detail-view-image-button:hover { filter: brightness(1.12); transform: translateY(-1px); }
.world-detail-view-image-button:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.world-detail-card .world-detail-full-image {
    width: min(100%, 680px);
    max-width: 680px;
    max-height: 82vh;
    margin: 0 auto;
    object-fit: contain;
}
@media (max-width:650px) {
    .world-detail-view-image-button { width: min(100% - 24px, 220px); }
    .world-detail-card .world-detail-full-image { width: min(100%, 94vw); max-width: 94vw; max-height: 74vh; }
}

/* Perbaikan final slider Informasi: panel aktif menjadi panel pertama, bukan digeser keluar kartu. */
.world-detail-card .ui-detail-track,
.world-detail-card .ui-detail-track[data-active="initial"],
.world-detail-card .ui-detail-track[data-active="full-info"],
.world-detail-card .ui-detail-track[data-active="image"] {
    transform: translateX(0) !important;
}
.world-detail-card .ui-detail-track > [data-detail-slide] {
    display: none !important;
    visibility: hidden;
    pointer-events: none;
    height: 0;
    overflow: hidden;
}
.world-detail-card .ui-detail-track[data-active="initial"] > [data-detail-slide="initial"],
.world-detail-card .ui-detail-track[data-active="full-info"] > [data-detail-slide="full-info"],
.world-detail-card .ui-detail-track[data-active="image"] > [data-detail-slide="image"] {
    display: block !important;
    visibility: visible;
    pointer-events: auto;
    height: auto;
    overflow: visible;
}

/* FINAL INFORMATION UI OVERRIDE: menangkal aturan global .wrap/#main-wrap yang terlalu sempit. */
#main-wrap.world-page,
#main-wrap.world-page.wrap {
    display: block;
    width: calc(100% - 32px) !important;
    max-width: 1180px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 30px 16px 120px !important;
    box-sizing: border-box !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    letter-spacing: normal !important;
    white-space: normal !important;
    overflow: visible !important;
    transform: none !important;
}
#main-wrap.world-page *,
#main-wrap.world-page *::before,
#main-wrap.world-page *::after { box-sizing: border-box; min-width: 0; }
#main-wrap.world-page .world-page-heading,
#main-wrap.world-page .world-region-group,
#main-wrap.world-page .world-card,
#main-wrap.world-page .world-detail-card,
#main-wrap.world-page .world-search,
#main-wrap.world-page .world-alphabet { max-width: 100%; }
#main-wrap.world-page .world-page-heading h1,
#main-wrap.world-page .world-page-heading p,
#main-wrap.world-page .world-region-group-heading h2,
#main-wrap.world-page .world-region-group-heading p,
#main-wrap.world-page .world-card-body,
#main-wrap.world-page .world-card-body strong,
#main-wrap.world-page .world-card-description,
#main-wrap.world-page .world-detail-heading,
#main-wrap.world-page .world-detail-lead,
#main-wrap.world-page .world-detail-row,
#main-wrap.world-page .world-detail-row * { white-space: normal; overflow-wrap: anywhere; word-break: normal; }
#main-wrap.world-page .world-category-nav { display:flex !important; width:100%; max-width:100%; align-items:center; justify-content:center; flex-wrap:wrap !important; gap:8px; overflow:visible; }
#main-wrap.world-page .world-category-nav a { display:inline-flex !important; width:auto !important; min-width:max-content; max-width:100%; flex:0 0 auto; white-space:nowrap; word-break:normal; overflow-wrap:normal; }
#main-wrap.world-page .world-alphabet { display:flex !important; width:100%; align-items:center; justify-content:center; flex-wrap:wrap !important; gap:6px; overflow:visible; }
#main-wrap.world-page .world-letter { display:inline-flex !important; width:32px !important; min-width:32px !important; height:32px; flex:0 0 32px; align-items:center; justify-content:center; padding:0; white-space:nowrap; word-break:keep-all; font-size:13px !important; line-height:1; }
#main-wrap.world-page .world-card-grid { display:grid !important; width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#main-wrap.world-page .world-card { width:100%; min-height:180px; overflow:hidden; }
#main-wrap.world-page .world-card-main { width:100%; min-width:0; }
#main-wrap.world-page .world-card-body { width:100%; min-width:0; padding:16px; }
#main-wrap.world-page .world-card-body strong { display:block; font-size:17px !important; line-height:1.25; }
#main-wrap.world-page .world-card-subtitle,
#main-wrap.world-page .world-card-description,
#main-wrap.world-page .world-card-meta,
#main-wrap.world-page .world-card-link { display:block; width:100%; font-size:13px !important; line-height:1.5; }
#main-wrap.world-page .world-region-groups { width:100%; min-width:0; }
#main-wrap.world-page .world-region-group { width:100%; overflow:visible; }
@media (max-width:650px) {
    #main-wrap.world-page,
    #main-wrap.world-page.wrap { width:calc(100% - 20px) !important; max-width:none !important; padding:22px 10px 110px !important; font-size:16px !important; }
    #main-wrap.world-page .world-card-grid { grid-template-columns:1fr; gap:12px; }
    #main-wrap.world-page .world-card { display:block; min-height:0; }
    #main-wrap.world-page .world-card-main { display:block; }
    #main-wrap.world-page .world-card-body { padding:14px; }
    #main-wrap.world-page .world-card-body strong { font-size:17px !important; }
    #main-wrap.world-page .world-card-subtitle,
    #main-wrap.world-page .world-card-description,
    #main-wrap.world-page .world-card-meta,
    #main-wrap.world-page .world-card-link { font-size:14px !important; }
    #main-wrap.world-page .world-page-heading { width:100%; padding:18px 14px; }
    #main-wrap.world-page .world-page-heading h1 { font-size:clamp(25px,8vw,38px) !important; line-height:1.2; letter-spacing:1px; }
    #main-wrap.world-page .world-page-heading p { font-size:15px !important; line-height:1.6; }
    #main-wrap.world-page .world-category-nav a { font-size:13px !important; padding:9px 12px; }
    #main-wrap.world-page .world-letter { width:31px !important; min-width:31px !important; flex-basis:31px; }
}

/* Halaman Musik: satu kartu bersih, teks panjang tidak boleh merusak lebar layar. */
#main-wrap.world-page.music-page .world-card-grid { display:grid !important; grid-template-columns:minmax(0,1fr) !important; width:100%; max-width:760px; margin:0 auto; gap:16px; }
#main-wrap.world-page.music-page .world-card { display:block; width:100%; min-width:0; min-height:0; overflow:hidden; }
#main-wrap.world-page.music-page .world-card-main { display:flex; width:100%; min-width:0; align-items:stretch; }
#main-wrap.world-page.music-page .world-card-image { width:150px; min-width:150px; height:180px; object-fit:cover; }
#main-wrap.world-page.music-page .world-card-body { display:flex; width:auto; min-width:0; max-width:100%; padding:18px; overflow:hidden; }
#main-wrap.world-page.music-page .world-card-body strong,
#main-wrap.world-page.music-page .world-card-subtitle,
#main-wrap.world-page.music-page .world-card-description,
#main-wrap.world-page.music-page .world-card-meta,
#main-wrap.world-page.music-page .world-card-link { min-width:0; max-width:100%; overflow-wrap:anywhere; word-break:break-word; }
#main-wrap.world-page.music-page .world-card-body strong { font-size:19px !important; line-height:1.3; }
#main-wrap.world-page.music-page .world-card-description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:7; overflow:hidden; font-size:13px !important; line-height:1.55; }
#main-wrap.world-page.music-page .world-card-meta { display:block; font-size:11px !important; }
#main-wrap.world-page.music-page .world-card-meta span { display:block; margin-top:4px; }
@media (max-width:650px) {
    #main-wrap.world-page.music-page .world-card-main { display:block; }
    #main-wrap.world-page.music-page .world-card-image { display:block; width:100%; min-width:0; height:180px; object-fit:cover; }
    #main-wrap.world-page.music-page .world-card-body { padding:14px; }
    #main-wrap.world-page.music-page .world-card-body strong { font-size:17px !important; }
    #main-wrap.world-page.music-page .world-card-subtitle { font-size:12px !important; }
    #main-wrap.world-page.music-page .world-card-description { -webkit-line-clamp:6; font-size:12px !important; }
}
