@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap";:root{--font-primary:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Outfit", sans-serif;--color-primary:#0d5cbf;--color-primary-hover:#0a4ba0;--color-primary-light:#eef5fc;--color-positive:#4f46e5;--color-positive-bg:#e0e7ff;--color-positive-dark:#312e81;--color-negative:#ef4444;--color-negative-bg:#fee2e2;--color-negative-dark:#7f1d1d;--color-neutral:#6b7280;--color-neutral-bg:#f3f4f6;--color-neutral-dark:#1f2937;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -2px #00000005;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}.light-theme{--bg-app:#f4f6f9;--bg-card:#fff;--bg-sidebar:#fff;--border-color:#e5e7eb;--text-main:#1f2937;--text-muted:#6b7280;--text-light:#9ca3af;--input-bg:#fff;--input-border:#d1d5db;--banner-bg:linear-gradient(135deg, #2e3035 0%, #1e2022 100%);--banner-text:#fff;--scrollbar-thumb:#d1d5db}.dark-theme{--bg-app:#0f1115;--bg-card:#161a22;--bg-sidebar:#12151c;--border-color:#262c38;--text-main:#f3f4f6;--text-muted:#9ca3af;--text-light:#6b7280;--input-bg:#1d2330;--input-border:#2d3648;--banner-bg:linear-gradient(135deg, #18191c 0%, #0c0d0f 100%);--banner-text:#f3f4f6;--scrollbar-thumb:#2d3648}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-primary);background-color:var(--bg-app);color:var(--text-main);-webkit-font-smoothing:antialiased;transition:background-color var(--transition-normal);line-height:1.5;overflow-x:hidden}input,button,select,textarea{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.spinning{animation:.8s ease-in-out spin}.login-container{width:100%;min-height:100vh;display:flex}.login-left-panel{background-color:#f1f4f8;border-right:1px solid #0000000d;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.wave-bg-container{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.wave-svg{object-fit:cover;width:100%;height:100%}.login-left-content{z-index:2;text-align:center;flex-direction:column;align-items:center;animation:.8s ease-out fadeIn;display:flex;position:relative}.logo-badge-container{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform var(--transition-normal);background:#fffc;border:1px solid #fff6;border-radius:24px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 8px 32px #0f5cbf14}.logo-badge-container:hover{transform:translateY(-5px)scale(1.02)}.welcome-title{font-family:var(--font-heading);color:var(--color-primary);margin-bottom:.5rem;font-size:2.25rem;font-weight:700}.welcome-subtitle{color:#5d6d82;font-size:1.1rem;font-weight:500}.login-right-panel{background-color:#fff;flex:1;justify-content:center;align-items:center;padding:2.5rem;display:flex}.login-right-content{flex-direction:column;width:100%;max-width:440px;animation:.6s ease-out fadeInRight;display:flex}.form-header{margin-bottom:2.5rem}.signin-title{font-family:var(--font-heading);color:#1f2937;margin-bottom:.5rem;font-size:2rem;font-weight:700}.signin-subtitle{color:#6b7280;font-size:1rem}.auth-form{flex-direction:column;gap:1.5rem;display:flex}.auth-error-message{color:#b91c1c;background-color:#fef2f2;border:1px solid #fee2e2;border-radius:12px;padding:1rem;font-size:.9rem;font-weight:500}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#374151;font-size:.875rem;font-weight:600}.form-group input{color:#1f2937;width:100%;transition:all var(--transition-fast);background-color:#fff;border:1px solid #d1d5db;border-radius:12px;padding:.85rem 1.1rem;font-size:.95rem}.form-group input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #0f5cbf1a}.password-input-container{align-items:center;display:flex;position:relative}.password-input-container input{padding-right:3rem}.password-toggle-btn{color:#9ca3af;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;right:1.1rem}.password-toggle-btn:hover{color:#4b5563}.checkbox-container{cursor:pointer;-webkit-user-select:none;user-select:none;color:#0d5cbf;align-items:center;padding-left:2rem;font-size:.875rem;font-weight:500;display:flex;position:relative}.checkbox-container input{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.checkmark{width:18px;height:18px;transition:all var(--transition-fast);background-color:#fff;border:1.5px solid #0d5cbf;border-radius:4px;position:absolute;top:0;left:0}.checkbox-container:hover input~.checkmark{background-color:#f0f6ff}.checkbox-container input:checked~.checkmark{background-color:#0d5cbf}.checkmark:after{content:"";display:none;position:absolute}.checkbox-container input:checked~.checkmark:after{display:block}.checkbox-container .checkmark:after{border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;top:2px;left:5px;transform:rotate(45deg)}.btn-primary{color:#fff;cursor:pointer;transition:all var(--transition-fast);background-color:#0d5cbf;border:none;border-radius:12px;justify-content:center;align-items:center;padding:.9rem 1.5rem;font-size:1rem;font-weight:600;display:flex;box-shadow:0 4px 12px #0f5cbf26}.btn-primary:hover{background-color:#0a4ba0;transform:translateY(-1px);box-shadow:0 6px 16px #0f5cbf40}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.login-footer{text-align:center;color:#6b7280;margin-top:4rem;font-size:.8rem;font-weight:500}@media (width<=768px){.login-container{flex-direction:column;min-height:100vh}.login-left-panel{display:none}.login-right-panel{justify-content:center;align-items:center;width:100%;min-height:100vh;padding:1.5rem;display:flex}.login-right-content{width:100%;max-width:100%;padding:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.dashboard-layout{width:100%;min-height:100vh;transition:grid-template-columns var(--transition-normal);display:grid;overflow:hidden}.dashboard-layout.sidebar-expanded{grid-template-columns:234px 1fr}.dashboard-layout.sidebar-collapsed{grid-template-columns:72px 1fr}.dashboard-main-panel{background-color:var(--bg-app);flex-direction:column;width:100%;min-height:100vh;display:flex;overflow:hidden}.dashboard-sidebar{background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);z-index:10;transition:width var(--transition-normal);flex-direction:column;display:flex;overflow:visible}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;height:56px;padding:.75rem .85rem;display:flex;position:relative}.sidebar-brand{white-space:nowrap;align-items:center;gap:.5rem;display:flex;overflow:hidden}.brand-name{font-family:var(--font-heading);color:var(--text-main);letter-spacing:0;font-size:.95rem;font-weight:700}.sidebar-collapse-btn-inner{color:var(--color-primary);cursor:pointer;width:28px;height:28px;transition:all var(--transition-fast);z-index:3;background:#e8f1fb;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:21px;right:-14px;box-shadow:0 2px 8px #0f172a1f}.sidebar-collapse-btn-inner:hover{color:var(--color-primary);background:#d9eafa}.sidebar-menu-container{flex-direction:column;flex:1;gap:.15rem;padding:.55rem .55rem .75rem;display:flex;overflow-y:auto}.menu-section{flex-direction:column;display:flex}.menu-section.with-divider{border-top:1px solid var(--border-color);margin-top:.35rem;padding-top:.45rem}.menu-section-header{width:100%;color:var(--text-main);letter-spacing:0;cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;padding:.45rem;font-size:.82rem;font-weight:500;display:flex}.menu-section-header:hover{background-color:var(--bg-app)}.menu-section-title-wrapper{align-items:center;gap:.5rem;min-width:0;display:flex}.section-icon{color:#2563eb;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.menu-chevron{color:var(--text-muted);transition:transform var(--transition-fast);transform:rotate(-90deg)}.menu-chevron.expanded{transform:rotate(0)}.sidebar-section-label{color:var(--text-main);padding:.35rem .45rem .25rem;font-size:.83rem;font-weight:500;line-height:1.25;display:block}.menu-list{flex-direction:column;gap:.1rem;margin-top:.1rem;list-style:none;display:flex}.menu-item{color:var(--text-main);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border-radius:8px;align-items:center;gap:.65rem;min-height:32px;padding:.42rem .55rem .42rem .85rem;font-size:.82rem;display:flex;position:relative;overflow:hidden}.menu-item:hover{background-color:var(--bg-app);color:var(--text-main)}.menu-item.active{color:var(--text-main);background-color:#eef4fb;font-weight:500}.bullet-dot{border:1.2px solid #8a8f98;border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-left:0}.menu-item.active .bullet-dot{border-color:var(--color-primary);background-color:var(--color-primary);box-shadow:inset 0 0 0 2px #fff}.long-text{text-overflow:ellipsis;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8rem;line-height:1.2;display:-webkit-box;overflow:hidden}.sidebar-footer{border-top:1px solid var(--border-color);flex-direction:column;gap:.5rem;padding:.65rem .85rem;display:flex}.theme-toggle-container{cursor:pointer;width:100%;transition:background-color var(--transition-fast);color:var(--text-main);white-space:nowrap;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;padding:.35rem .25rem;font-size:.82rem;font-weight:600;display:flex}.theme-toggle-container:hover{background-color:var(--bg-app)}.theme-toggle-inner{align-items:center;gap:.75rem;display:flex}.toggle-switch-pill{width:34px;height:20px;transition:background-color var(--transition-fast);background-color:#cbd5e1;border-radius:10px;position:relative}.toggle-switch-pill.active{background-color:var(--color-primary)}.toggle-switch-handle{width:14px;height:14px;transition:transform var(--transition-fast);box-shadow:var(--shadow-sm);background-color:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.toggle-switch-pill.active .toggle-switch-handle{transform:translate(14px)}.sidebar-logout-btn{color:#ef4444;cursor:pointer;width:100%;transition:background-color var(--transition-fast);text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:.75rem;padding:.6rem .75rem;font-size:.875rem;font-weight:500;display:flex}.sidebar-logout-btn:hover{background-color:#ef444414}.dashboard-header{background-color:var(--bg-card);border-bottom:1px solid var(--border-color);z-index:9;background-color:var(--bg-card);border-bottom:1px solid var(--border-color);z-index:999;flex-shrink:0;justify-content:space-between;align-items:center;height:70px;padding:0 1.5rem;display:flex;position:sticky;top:0}.header-left{align-items:center;gap:1rem;display:flex}.sidebar-toggle-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.25rem;display:flex}.sidebar-toggle-btn:hover{background-color:var(--bg-app);color:var(--text-main)}.breadcrumbs{color:var(--text-muted);align-items:center;gap:.35rem;margin-bottom:2px;font-size:.75rem;font-weight:500;display:flex}.breadcrumb-item.active{color:var(--color-primary);font-weight:600}.breadcrumb-separator{color:var(--text-light)}.header-title{font-family:var(--font-heading);color:var(--text-main);font-size:1.35rem;font-weight:700;line-height:1.2}.header-right{align-items:center;display:flex}.user-profile-container{position:relative}.user-profile-trigger{cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:12px;align-items:center;gap:.65rem;padding:.35rem .65rem;display:flex}.user-profile-trigger:hover{background-color:var(--bg-app)}.avatar-circle{color:#fff;width:32px;height:32px;box-shadow:var(--shadow-sm);background-color:#ef4444;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.user-name{color:var(--text-main);font-size:.875rem;font-weight:600}.dropdown-chevron{color:var(--text-muted);transition:transform var(--transition-fast)}.dropdown-chevron.rotated{transform:rotate(180deg)}.user-dropdown-menu{background-color:var(--bg-card);border:1px solid var(--border-color);width:220px;box-shadow:var(--shadow-lg);z-index:100;border-radius:12px;padding:.5rem;animation:.2s ease-out fadeIn;position:absolute;top:calc(100% + 8px);right:0}.dropdown-user-info{padding:.65rem .85rem}.dropdown-user-info .user-email{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.dropdown-user-info .user-role{color:var(--text-muted);font-size:.75rem}.dropdown-divider{border:none;border-top:1px solid var(--border-color);margin:.4rem 0}.dropdown-item{width:100%;color:var(--text-main);cursor:pointer;text-align:left;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:8px;align-items:center;gap:.75rem;padding:.65rem .85rem;font-size:.875rem;display:flex}.dropdown-item:hover{background-color:var(--bg-app)}.dropdown-item.logout{color:#ef4444}.dropdown-item.logout:hover{background-color:#ef444414}.dashboard-content-area{flex-direction:column;flex:1;gap:1.75rem;padding:1.5rem;display:flex;overflow-y:auto}.dashboard-action-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.action-bar-left{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.action-btn{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-main);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:flex}.action-btn:hover{background-color:var(--bg-app);border-color:var(--text-light)}.filter-dropdown-container{position:relative}.filter-btn{color:var(--color-primary);background-color:var(--color-primary-light);border-color:#0f5cbf40}.filter-btn:hover{background-color:#0f5cbf1a}.filter-dropdown-menu{background-color:var(--bg-card);border:1px solid var(--border-color);width:140px;box-shadow:var(--shadow-md);z-index:50;border-radius:8px;padding:.25rem;animation:.15s ease-out fadeIn;position:absolute;top:calc(100% + 6px);left:0}.filter-item{text-align:left;width:100%;color:var(--text-main);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem .75rem;font-size:.85rem}.filter-item:hover{background-color:var(--bg-app)}.filter-item.selected{color:var(--color-primary);background-color:var(--color-primary-light);font-weight:600}.datepicker-display-container{background-color:var(--color-primary-light);color:var(--color-primary);box-shadow:var(--shadow-sm);border:1px solid #0f5cbf33;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:flex}.date-range-text{letter-spacing:.2px}.action-bar-right{align-items:center;display:flex}.refresh-btn{width:38px;height:38px;color:var(--text-muted);border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.refresh-btn:hover{color:var(--color-primary)}.banner-card{background:var(--banner-bg);color:var(--banner-text);box-shadow:var(--shadow-lg);border:1px solid #ffffff0d;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:160px;padding:2.25rem;display:flex;position:relative;overflow:hidden}.banner-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;width:100%;display:flex}.banner-left{align-items:center;gap:1.25rem;display:flex}.banner-icon-container{background:#ef4444d9;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;display:flex;box-shadow:0 4px 20px #ef444466}.banner-text-details{flex-direction:column;gap:2px;display:flex}.banner-title{font-family:var(--font-heading);letter-spacing:.5px;font-size:1.85rem;font-weight:800}.banner-subtitle{opacity:.8;font-size:.95rem;font-weight:500}.banner-right{align-items:center;gap:.85rem;display:flex}.sentiment-pill{letter-spacing:.5px;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.8rem;font-weight:700;display:flex}.sentiment-pill.positive{color:#fff;background-color:#3b2cbe}.sentiment-pill.negative{color:#fff;background-color:#a31414}.sentiment-pill.neutral{color:#fff;background-color:#3a3d40}.sentiment-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.sentiment-dot.positive{background-color:#7c3aed}.sentiment-dot.negative{background-color:#f87171}.sentiment-dot.neutral{background-color:#cbd5e1}.banner-bottom-bar{background-color:#ffffff1a;border-radius:2px;width:100%;height:4px;margin-top:1.5rem;display:flex;overflow:hidden}.sentiment-segment.positive{background-color:#4f46e5}.sentiment-segment.neutral{background-color:#cbd5e1}.sentiment-segment.negative{background-color:#ef4444}.feed-section{flex-direction:column;gap:1rem;display:flex}.section-header-row{justify-content:space-between;align-items:center;display:flex}.section-title{font-family:var(--font-heading);color:var(--text-main);font-size:1.15rem;font-weight:700}.carousel-nav-arrows{align-items:center;gap:.35rem;display:flex}.carousel-arrow-btn{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;width:28px;height:28px;transition:all var(--transition-fast);border-radius:6px;justify-content:center;align-items:center;display:flex}.carousel-arrow-btn:hover{background-color:var(--bg-app);color:var(--color-primary);border-color:var(--color-primary)}.carousel-arrow-btn:disabled{opacity:.5;cursor:not-allowed}.carousel-arrow-btn:disabled:hover{background-color:var(--bg-card);color:var(--text-muted);border-color:var(--border-color)}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;display:grid}.feed-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);min-height:180px;transition:transform var(--transition-normal), box-shadow var(--transition-normal);border-radius:12px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.feed-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.card-header{border-bottom:1px dashed var(--border-color);justify-content:space-between;align-items:center;padding-bottom:.75rem;display:flex}.source-info{align-items:center;gap:.5rem;display:flex}.source-favicon{width:22px;height:22px;color:var(--color-primary);background-color:#ebf3fc;border-radius:4px;justify-content:center;align-items:center;display:flex}.favicon-icon{flex-shrink:0}.source-name{color:var(--text-muted);font-size:.8rem;font-weight:600}.user-profile-info{align-items:center;gap:.65rem;display:flex}.user-profile-avatar{color:#fff;width:32px;height:32px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.user-text-details{flex-direction:column;line-height:1.2;display:flex}.user-display-name{color:var(--text-main);font-size:.85rem;font-weight:600}.user-username{color:var(--text-light);font-size:.75rem}.sentiment-badge{border-radius:12px;padding:.25rem .65rem;font-size:.75rem;font-weight:600}.sentiment-badge.positive{background-color:var(--color-positive-bg);color:var(--color-positive)}.sentiment-badge.negative{background-color:var(--color-negative-bg);color:var(--color-negative)}.sentiment-badge.neutral{background-color:var(--color-neutral-bg);color:var(--color-neutral)}.card-body{flex:1}.card-headline{color:var(--text-main);font-size:.95rem;font-weight:600;line-height:1.4}.card-social-content{color:var(--text-main);white-space:pre-wrap;font-size:.85rem;line-height:1.45}.card-footer{color:var(--text-light);align-items:center;gap:.35rem;margin-top:auto;font-size:.75rem;font-weight:500;display:flex}.footer-icon{flex-shrink:0}.footer-timestamp{letter-spacing:.1px}.pagination-indicator-container{background-color:var(--border-color);border-radius:2px;width:100%;height:3px;margin-top:.5rem;display:flex;overflow:hidden}.pagination-segment{height:100%;transition:background-color var(--transition-normal);cursor:pointer}.pagination-segment.active{background-color:var(--color-primary)}.isu-media-online-container,.isu-media-page-container{flex-direction:column;gap:1.5rem;display:flex}.legend-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.issue-legend-card{padding:1rem}.legend-title{color:var(--text-muted);font-size:.875rem;font-weight:600}.legend-pills-row{align-items:center;gap:.75rem;display:flex}.legend-pill-item{color:#fff;letter-spacing:.2px;border-radius:20px;justify-content:center;align-items:center;min-width:80px;padding:.4rem 1.25rem;font-size:.75rem;font-weight:700;display:flex}.legend-pill-item.positive{background-color:#0f56b3}.legend-pill-item.negative{background-color:#ef4444}.legend-pill-item.neutral{background-color:#3a3d40}.diy-carousel-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.diy-card-header{flex-direction:column;gap:.25rem;display:flex}.diy-card-title{font-family:var(--font-heading);color:var(--text-main);font-size:1.15rem;font-weight:700}.diy-card-subtitle{color:var(--text-muted);font-size:.85rem}.diy-carousel-body{justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.diy-swiper{width:100%}.swiper-button-prev,.swiper-button-next{display:none!important}.diy-nav-button{border:1px solid var(--border-color);background-color:var(--bg-app);width:48px;height:48px;color:var(--text-main);cursor:pointer;transition:transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;padding:0;font-weight:700;display:inline-flex;box-shadow:0 8px 18px #0f172a14}.diy-nav-button:hover{background-color:var(--bg-card);border-color:var(--color-primary);transform:translateY(-2px)}.diy-nav-button .nav-arrow{font-size:1.4rem;line-height:1}.diy-carousel-content{flex:1;justify-content:center;display:flex}.diy-news-card{background-color:var(--bg-card);border:1px solid var(--border-color);width:100%;max-width:440px;box-shadow:var(--shadow-md);transition:transform var(--transition-fast);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.diy-news-card:hover{transform:translateY(-2px)}.diy-news-card-header{justify-content:space-between;align-items:center;display:flex}.diy-source-badge{align-items:center;gap:.5rem;display:flex}.diy-source-dot{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:700;display:flex}.diy-source-name{color:var(--text-muted);font-size:.85rem;font-weight:600}.diy-news-card-divider{border-top:1px solid var(--border-color);margin:0}.diy-news-card-body{min-height:50px}.diy-news-card-body .diy-news-card-title{color:var(--text-main);font-size:.95rem;font-weight:700;line-height:1.4}.diy-news-card-footer{justify-content:space-between;align-items:flex-end;margin-top:.5rem;display:flex}.diy-footer-left{flex-direction:column;gap:.35rem;display:flex}.diy-timestamp-row{color:var(--text-light);align-items:center;gap:.35rem;font-size:.75rem;font-weight:500;display:flex}.diy-relevance-row{color:#1b854a;font-size:.75rem;font-weight:700}.diy-relevance-row .relevance-score{font-weight:800}.diy-detail-link{color:#0f56b3;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:2px 4px;font-size:.85rem;font-weight:600}.diy-detail-link:hover{color:var(--color-primary-hover);text-decoration:underline}.diy-carousel-footer{text-align:left}.diy-carousel-footer-text{color:var(--text-muted);font-size:.8rem}.regional-grid-layout{grid-template-columns:repeat(3,1fr);gap:1.5rem;width:100%;display:grid}.regional-column-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:1rem;min-height:440px;padding:1.25rem;display:flex}.regional-card-header{flex-direction:column;gap:.25rem;display:flex}.regional-card-title{font-family:var(--font-heading);color:var(--text-main);font-size:.95rem;font-weight:700}.regional-card-subtitle{color:var(--text-muted);font-size:.75rem;line-height:1.3}.regional-card-body.na-state{flex:1;justify-content:center;align-items:center;display:flex}.na-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.na-title{color:#9ca3af;letter-spacing:.5px;font-size:1.85rem;font-weight:700}.na-subtitle{color:#9ca3af;margin-top:.25rem;font-size:.8rem}.issue-panel-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.issue-panel-card-large{min-height:313px}.issue-panel-card-regional{min-height:372px}.issue-panel-header{border-bottom:1px solid var(--border-color);padding:.75rem .9rem}.issue-panel-title{font-family:var(--font-heading);color:var(--text-main);font-size:.95rem;font-weight:700;line-height:1.25}.issue-panel-title.regional-title{font-size:.9rem}.issue-panel-subtitle{color:var(--text-muted);margin-top:.15rem;font-size:.75rem;line-height:1.35}.issue-panel-body{flex:1;justify-content:center;align-items:center;min-height:0;padding:1rem;display:flex}.media-partner-overview-page{flex-direction:column;gap:1rem;display:flex}.analytics-grid{gap:1rem;display:grid}.analytics-grid-top{grid-template-columns:minmax(360px,.9fr) minmax(440px,1.25fr)}.analytics-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-card,.overview-news-section{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:8px;overflow:hidden}.analytics-card-header,.overview-section-header{border-bottom:1px solid var(--border-color);padding:.65rem .9rem}.analytics-card-header h3,.overview-section-header h3{color:var(--text-main);font-family:var(--font-heading);font-size:.94rem;font-weight:700;line-height:1.25}.analytics-card-header p,.overview-section-header p{color:var(--text-muted);margin-top:.15rem;font-size:.75rem;line-height:1.35}.analytics-card-body{min-height:320px;padding:1rem}.analytics-grid-three .analytics-card-body{min-height:380px}.donut-chart-layout{grid-template-columns:minmax(190px,1fr) 132px;align-items:center;gap:1rem;height:100%;display:grid}.donut-chart-svg-wrap{aspect-ratio:1;justify-self:center;width:min(235px,100%);position:relative}.chart-tooltip-anchor:after,.chart-tooltip{color:#fff;opacity:0;pointer-events:none;transition:opacity var(--transition-fast), transform var(--transition-fast);white-space:nowrap;z-index:20;background-color:#111827;border-radius:6px;padding:.45rem .6rem;font-size:.72rem;font-weight:700;line-height:1.35;position:absolute;transform:translateY(6px);box-shadow:0 10px 24px #0f172a2e}.donut-chart-svg{width:100%;height:100%;overflow:visible}.donut-segment{cursor:pointer;stroke-linecap:butt;transform-box:fill-box;transform-origin:50%;transition:filter var(--transition-fast), opacity var(--transition-fast), stroke-width var(--transition-fast), transform var(--transition-fast)}.donut-chart-svg:hover .donut-segment{opacity:.42}.donut-chart-svg .donut-segment:hover{filter:drop-shadow(0 8px 10px #0f172a33);opacity:1;stroke-width:43px;transform:scale(1.025)}.chart-floating-tooltip{color:#fff;pointer-events:none;white-space:nowrap;z-index:20;background-color:#111827;border-radius:6px;padding:.45rem .6rem;font-size:.72rem;font-weight:700;line-height:1.35;position:absolute;top:-26px;left:50%;transform:translate(-50%);box-shadow:0 10px 24px #0f172a2e}.donut-chart-svg-wrap:after{color:#fff;content:"33.6%";font-size:.74rem;font-weight:700;position:absolute;bottom:53px;right:31px;transform:rotate(-34deg)}.donut-legend{flex-direction:column;gap:.35rem;display:flex}.donut-legend-row{color:var(--text-muted);align-items:center;gap:.35rem;min-width:0;font-size:.78rem;font-weight:600;line-height:1.1;display:flex;position:relative}.chart-tooltip-anchor:after{content:attr(data-tooltip);top:calc(100% + 8px);left:0}.chart-tooltip-anchor:hover:after{opacity:1;transform:translateY(0)}.donut-legend-row span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.donut-legend-color{border-radius:2px;flex:none;width:9px;height:9px}.donut-legend-pagination{color:var(--text-muted);justify-content:center;align-items:center;gap:.45rem;margin-top:.25rem;font-size:.78rem;display:flex}.horizontal-chart{grid-template-columns:116px 1fr;height:100%;min-height:260px;display:grid;position:relative}.chart-grid-lines{pointer-events:none;justify-content:space-between;display:flex;position:absolute;inset:0 0 .5rem 116px}.chart-grid-lines span{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:flex-end;min-width:1px;font-size:.74rem;display:flex;position:relative}.chart-grid-lines span:before{background-color:var(--border-color);content:"";opacity:.8;flex:1;width:1px;margin:0 auto .55rem}.bar-list{z-index:1;flex-direction:column;grid-column:1/-1;justify-content:center;gap:1.1rem;padding-bottom:1.6rem;display:flex;position:relative}.bar-row{grid-template-columns:116px 1fr;align-items:center;gap:.65rem;display:grid}.bar-label{color:var(--text-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:600;overflow:hidden}.bar-track{align-items:center;height:24px;display:flex;position:relative}.bar-track:hover .bar-fill{filter:brightness(1.08)drop-shadow(0 4px 6px #0f172a2e);height:30px}.bar-track:hover .bar-value{color:var(--text-main)}.bar-track:hover .chart-tooltip{opacity:1;transform:translate(-50%)}.bar-fill{height:24px;transition:filter var(--transition-fast), height var(--transition-fast), opacity var(--transition-fast)}.bar-value{color:var(--text-muted);margin-left:.35rem;font-size:.72rem;font-weight:700}.chart-tooltip{bottom:calc(100% + 8px);left:50%;transform:translate(-50%,6px)}.overview-news-section{flex-direction:column;min-height:780px;max-height:840px;display:flex;overflow:hidden}.overview-news-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:.85rem;padding:1rem;display:grid;overflow-y:auto}.overview-news-card{border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.55rem;min-height:330px;padding:.85rem;display:flex}.overview-news-image,.overview-image-placeholder{aspect-ratio:2.45;object-fit:cover;border-radius:8px;width:100%;height:auto;overflow:hidden}.overview-image-placeholder{background-color:#f3f4f8;justify-content:center;align-items:center;display:flex}.placeholder-icon{background-color:#c3c6cc;border-radius:20px;width:80px;height:80px;position:relative;overflow:hidden}.placeholder-sun{background-color:#7d828a;border-radius:50%;width:18px;height:18px;position:absolute;top:15px;left:19px}.placeholder-mountain{clip-path:polygon(0 70%,35% 48%,53% 60%,82% 28%,100% 40%,100% 100%,0 100%);background-color:#7d828a;width:100%;height:55px;position:absolute;bottom:0;left:0}.overview-news-meta,.overview-source{align-items:center;display:flex}.overview-news-meta{justify-content:space-between;gap:.75rem}.overview-source{color:var(--text-main);gap:.45rem;min-width:0;font-size:.86rem;font-weight:700}.overview-source-logo{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:.66rem;font-weight:800;display:inline-flex}.overview-sentiment-pill{border-radius:999px;flex:none;padding:.26rem .65rem;font-size:.72rem;font-weight:700}.overview-sentiment-pill.positive{color:#1464dd;background-color:#e7f0ff}.overview-sentiment-pill.negative{color:#e22d3a;background-color:#ffe8ea}.overview-sentiment-pill.neutral{color:#111827;background-color:#f1f3f6}.overview-news-card h4{color:var(--text-main);font-size:.82rem;font-weight:800;line-height:1.35}.overview-news-card time{color:var(--text-muted);font-size:.69rem}.overview-news-card p{color:var(--text-muted);font-size:.8rem;line-height:1.55}.ai-recommendation-btn{color:#fff;cursor:pointer;background-color:#2f7cf6;border:none;border-radius:7px;align-self:flex-start;align-items:center;gap:.25rem;margin-top:auto;padding:.42rem .55rem;font-size:.65rem;font-weight:700;display:inline-flex}.overview-news-footer{color:var(--text-muted);border-top:1px solid var(--border-color);background-color:var(--bg-card);flex:none;justify-content:space-between;align-items:center;padding:.7rem 1rem;font-size:.78rem;display:flex}.overview-pagination{gap:.5rem;display:flex}.overview-pagination button{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:36px;height:32px;display:inline-flex}.media-online-overview-page{flex-direction:column;gap:1rem;display:flex}.media-online-top-grid{grid-template-columns:240px 1fr;gap:1rem;display:grid}.total-news-card{color:#fff;background-color:#293d85;flex-direction:column;justify-content:space-between;min-height:245px;display:flex}.total-news-card div{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.total-news-card strong{font-family:var(--font-heading);font-size:2.8rem;font-weight:800;line-height:1}.total-news-card span{margin-top:.45rem;font-size:.82rem;font-weight:800}.total-news-card small{text-align:center;background-color:#1d2f6f;padding:.42rem;font-size:.66rem;font-weight:700;display:block}.publication-card .analytics-card-body{min-height:198px}.media-online-sentiment-grid{grid-template-columns:.48fr 1fr;gap:1rem;display:grid}.media-online-popular-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.media-online-region-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.media-online-sentiment-region-grid{grid-template-columns:1fr;gap:1rem;display:grid}.media-online-overview-page .analytics-card-body{min-height:260px}.media-online-overview-page .analytics-grid-three .analytics-card-body{min-height:0}.vertical-bar-chart{grid-template-columns:34px 1fr;height:190px;display:grid}.vertical-axis{color:var(--text-muted);text-align:right;flex-direction:column;justify-content:space-between;padding-bottom:1.6rem;font-size:.74rem;display:flex}.vertical-bars{background-image:linear-gradient(to bottom, var(--border-color) 1px, transparent 1px);background-size:100% calc(16.6667% - .266667rem);grid-template-columns:repeat(7,minmax(0,1fr));gap:1.25rem;padding:0 .75rem;display:grid}.vertical-bar-item{color:var(--text-muted);flex-direction:column;justify-content:flex-end;align-items:center;gap:.35rem;min-width:0;font-size:.72rem;font-weight:600;display:flex}.vertical-bar-item>span{text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.vertical-bar-track{flex:1;justify-content:center;align-items:flex-end;width:100%;display:flex;position:relative}.vertical-bar-fill{cursor:pointer;transition:filter var(--transition-fast), transform var(--transition-fast), width var(--transition-fast);background-color:#c92d36;width:42px}.vertical-bar-track:hover .vertical-bar-fill{filter:brightness(1.08)drop-shadow(0 6px 8px #0f172a2e);width:48px;transform:translateY(-2px)}.vertical-bar-track:hover .chart-tooltip{opacity:1;transform:translate(-50%)}.media-online-donut{grid-template-columns:minmax(130px,1fr) 104px;align-items:center;gap:.75rem;height:100%;display:grid}.media-online-donut.small .donut-chart-svg-wrap{width:min(172px,100%)}.line-chart-wrap{position:relative}.line-chart-legend{justify-content:center;align-items:center;gap:1rem;margin-bottom:.35rem;display:flex}.line-chart-legend span{color:var(--text-main);align-items:center;gap:.35rem;font-size:.72rem;font-weight:700;display:flex}.line-chart-legend i{border-radius:50%;width:9px;height:9px}.sentiment-line-chart{width:100%;height:250px;display:block;overflow:visible}.line-chart-grid{stroke:var(--border-color);stroke-width:1px}.line-chart-axis{fill:var(--text-muted);font-size:11px}.line-chart-axis.x-axis{transform-box:fill-box;transform-origin:50%;transform:rotate(-18deg)}.line-series{stroke-width:2px}.line-point-group{cursor:pointer}.line-point-group circle{transition:filter var(--transition-fast), r var(--transition-fast)}.line-point-group:hover circle{filter:drop-shadow(0 4px 5px #0f172a40);r:7}.svg-tooltip{fill:#111827;opacity:0;paint-order:stroke;pointer-events:none;stroke:#fff;stroke-width:4px;transition:opacity var(--transition-fast);font-size:12px;font-weight:700}.line-point-group:hover .svg-tooltip{opacity:1}.ranking-card{min-height:358px}.ranking-table{padding:.45rem .45rem .55rem}.ranking-row{grid-template-columns:1fr 64px;align-items:center;min-height:32px;padding:0 .65rem;display:grid}.ranking-row:nth-child(2n){background-color:#eee}.ranking-row span{color:var(--text-main);font-size:.78rem;font-weight:600}.ranking-row span:last-child{text-align:center}.ranking-head span{font-size:.72rem;font-weight:800}.ranking-name{align-items:center;gap:.55rem;min-width:0;display:flex}.ranking-name svg{color:#9aa8b5;background-color:#e4e9ee;border-radius:50%;flex:none;padding:2px}.media-online-horizontal-chart .bar-list{gap:.72rem}.media-online-horizontal-chart .bar-label{font-size:.75rem}.region-province-card .analytics-card-body{min-height:360px}.stacked-sentiment-chart{flex-direction:column;gap:.75rem;height:100%;display:flex}.stacked-sentiment-legend{justify-content:center;align-items:center;gap:1rem;display:flex}.stacked-sentiment-legend span{color:var(--text-main);align-items:center;gap:.35rem;font-size:.74rem;font-weight:700;display:inline-flex}.stacked-sentiment-legend i{border-radius:50%;width:9px;height:9px}.stacked-sentiment-legend .negative,.stacked-segment.negative{background-color:#ff1717}.stacked-sentiment-legend .neutral,.stacked-segment.neutral{background-color:#8b8b8b}.stacked-sentiment-legend .positive,.stacked-segment.positive{background-color:#1014ff}.stacked-chart-body{flex:1;min-height:280px}.stacked-bar-track{align-items:center;height:24px;display:flex;position:relative}.stacked-bar-fill{height:24px;transition:filter var(--transition-fast), height var(--transition-fast);border-radius:0;display:flex;overflow:hidden}.stacked-segment{height:100%;display:block}.stacked-bar-track:hover .stacked-bar-fill{filter:brightness(1.07)drop-shadow(0 4px 6px #0f172a2e);height:30px}.stacked-bar-track:hover .chart-tooltip{opacity:1;transform:translate(-50%)}.media-online-news-section{min-height:780px}.media-online-page-list button{width:auto;min-width:32px;padding:0 .6rem;font-size:.74rem}.media-online-page-list button.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.blank-news-image{background-color:#fff}.clickable-chart-card{cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast)}.clickable-chart-card:hover{border-color:#0d5cbf57;transform:translateY(-1px);box-shadow:0 10px 24px #0f172a14}.related-modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9999;background-color:#0f172a6b;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.related-modal{border:1px solid var(--border-color);isolation:isolate;background-color:#fff;border-radius:10px;flex-direction:column;width:min(100%,1090px);max-width:1090px;height:min(906px,100vh - 3rem);display:flex;overflow:hidden;box-shadow:0 28px 80px #0f172a57}.related-modal-header{border-bottom:1px solid var(--border-color);background-color:#fff;flex:none;justify-content:space-between;align-items:flex-start;padding:.8rem .9rem .65rem;display:flex}.related-modal-header h2{color:var(--text-main);font-family:var(--font-heading);font-size:1rem;font-weight:700;line-height:1.2}.related-modal-header p{color:var(--text-muted);margin-top:.1rem;font-size:.78rem}.related-modal-actions{align-items:center;gap:.35rem;display:flex}.related-modal-actions button{color:var(--text-main);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.related-modal-actions button:hover{background-color:var(--bg-app)}.related-modal-grid{background-color:#fff;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;padding:.85rem 2.4rem 1rem;display:grid;overflow-y:auto}.related-modal-card{background-color:#fff;border:1px solid #d9dee7;min-height:306px;box-shadow:0 2px 8px #0f172a0a}.related-modal-card:hover{border-color:#c3ccd8;box-shadow:0 8px 18px #0f172a14}.related-modal-card .overview-news-image,.related-modal-card .overview-image-placeholder{aspect-ratio:2.7}.related-modal-footer{border-top:1px solid var(--border-color);color:var(--text-muted);background-color:#fff;flex:none;justify-content:space-between;align-items:center;padding:.8rem 1.05rem;font-size:.8rem;display:flex}.top-media-page{flex-direction:column;gap:1rem;display:flex}.top-media-grid{gap:1rem;display:grid}.top-media-grid-main{grid-template-columns:minmax(360px,.78fr) minmax(520px,1.1fr)}.top-media-grid-tier{grid-template-columns:repeat(3,minmax(0,1fr))}.top-media-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:8px;overflow:hidden}.top-media-card-header{border-bottom:1px solid var(--border-color);padding:.72rem .9rem}.top-media-card-header h3{color:var(--text-main);font-family:var(--font-heading);font-size:.92rem;font-weight:700;line-height:1.2}.top-media-card-header p{color:var(--text-muted);margin-top:.15rem;font-size:.74rem;line-height:1.35}.top-media-card-body{min-height:360px;padding:1rem}.top-media-grid-main .top-media-card-body{min-height:365px}.top-media-donut-layout{grid-template-columns:minmax(210px,1fr) 116px;align-items:center;gap:.8rem;height:100%;display:grid}.top-media-pie-cell{cursor:pointer;transition:filter var(--transition-fast), opacity var(--transition-fast);outline:none}.top-media-pie-cell:hover{filter:drop-shadow(0 8px 10px #0f172a33)}.top-media-donut-legend{flex-direction:column;gap:.38rem;display:flex}.top-media-legend-item{align-items:center;gap:.35rem;min-width:0;display:flex}.top-media-legend-item span{border-radius:2px;flex:none;width:9px;height:9px}.top-media-legend-item p{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:600;overflow:hidden}.top-media-legend-pager{color:var(--text-muted);text-align:center;margin-top:.2rem;font-size:.78rem;font-weight:700}.top-media-tooltip{color:#fff;white-space:nowrap;background-color:#111827;border-radius:6px;padding:.45rem .6rem;font-size:.72rem;font-weight:700;box-shadow:0 10px 24px #0f172a2e}.top-media-bar-label{fill:var(--text-main);font-size:11px;font-weight:600}.top-media-skeleton-chart,.top-media-skeleton-bar{background:linear-gradient(90deg,#eef2f6 25%,#f8fafc 37%,#eef2f6 63%) 0 0/400% 100%;animation:1.35s infinite skeleton-shimmer}.top-media-skeleton-chart{margin:3rem auto 0}.top-media-skeleton-donut{border-radius:50%;width:190px;height:190px}.top-media-skeleton-bars{flex-direction:column;gap:1.25rem;padding:3rem 2rem;display:flex}.top-media-skeleton-bars.small{gap:.75rem;padding:1.4rem 2rem}.top-media-skeleton-bar{border-radius:6px;height:22px}.top-media-skeleton-bars .top-media-skeleton-bar:first-child{width:82%}.top-media-skeleton-bars .top-media-skeleton-bar:nth-child(2){width:88%}.top-media-skeleton-bars .top-media-skeleton-bar:nth-child(3){width:34%}.top-media-skeleton-bars.small .top-media-skeleton-bar:nth-child(n){width:72%}.top-media-skeleton-bars.small .top-media-skeleton-bar:nth-child(2n){width:54%}.top-media-skeleton-bars.small .top-media-skeleton-bar:nth-child(3n){width:38%}.top-kategori-page{flex-direction:column;gap:1rem;display:flex}.top-kategori-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:8px;overflow:hidden}.top-kategori-card-header{border-bottom:1px solid var(--border-color);padding:.72rem .9rem}.top-kategori-card-header h3{color:var(--text-main);font-family:var(--font-heading);font-size:.92rem;font-weight:700;line-height:1.2}.top-kategori-card-header p{color:var(--text-muted);margin-top:.15rem;font-size:.74rem;line-height:1.35}.top-kategori-card-body{padding:1.2rem 1.35rem}.top-kategori-treemap{width:100%;height:370px}.top-kategori-node{cursor:pointer;outline:none}.top-kategori-node rect{stroke:#fff;stroke-width:1px;transition:filter var(--transition-fast), opacity var(--transition-fast), transform var(--transition-fast)}.top-kategori-node:hover rect,.top-kategori-node:focus rect{filter:brightness(1.04)drop-shadow(0 8px 12px #0f172a2e);opacity:.96}.top-kategori-node-title,.top-kategori-node-value{fill:#fff;pointer-events:none;font-size:10px;font-weight:700}.top-kategori-node-title.large,.top-kategori-node-value.large{font-size:18px}.top-kategori-tooltip{color:#fff;white-space:nowrap;background-color:#111827;border-radius:6px;flex-direction:column;gap:.15rem;padding:.45rem .6rem;font-size:.72rem;display:flex;box-shadow:0 10px 24px #0f172a2e}.top-kategori-skeleton-map{grid-template-rows:repeat(3,1fr);grid-template-columns:2.1fr 1.35fr 1.35fr .7fr .7fr .7fr;gap:2px;height:370px;padding:1.2rem 1.35rem;display:grid}.top-kategori-skeleton-map span{background:linear-gradient(90deg,#eef2f6 25%,#f8fafc 37%,#eef2f6 63%) 0 0/400% 100%;border-radius:2px;animation:1.35s infinite skeleton-shimmer}.top-kategori-skeleton-map span:first-child{grid-row:span 3}.top-kategori-skeleton-map span:nth-child(2),.top-kategori-skeleton-map span:nth-child(5){grid-row:span 2}.top-kategori-skeleton-map span:nth-child(n+10){min-width:26px}.top-issue-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:8px;min-height:500px;overflow:hidden}.top-issue-card-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;padding:.75rem .9rem;display:flex}.top-issue-card-header h3{color:var(--text-main);font-family:var(--font-heading);font-size:.94rem;font-weight:700;line-height:1.25}.top-issue-card-header p{color:var(--text-muted);margin-top:.12rem;font-size:.75rem}.top-issue-card-header button{color:var(--text-main);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.top-issue-card-header button:hover{background-color:var(--bg-app)}.top-issue-content{padding:.8rem 1.15rem 1.25rem}.top-issue-legend{flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem .8rem;margin-bottom:.25rem;display:flex}.top-issue-legend-item{cursor:pointer;transition:background-color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;border-radius:6px;align-items:center;gap:.32rem;padding:.12rem .18rem;display:inline-flex}.top-issue-legend-item:hover,.top-issue-legend-item.active{background-color:var(--color-primary-light);transform:translateY(-1px)}.top-issue-legend-item span{border-radius:2px;width:11px;height:11px}.top-issue-legend-item p{color:var(--text-main);font-size:.68rem;font-weight:600}.top-issue-chart-wrap{width:100%;height:370px;margin:0 auto;position:relative}.top-issue-recharts-cell{cursor:pointer;transition:filter var(--transition-fast), opacity var(--transition-fast);outline:none}.top-issue-recharts-cell.active{filter:drop-shadow(0 8px 10px #0f172a33)}.top-issue-recharts-label{fill:var(--text-main);pointer-events:none;transition:fill var(--transition-fast), opacity var(--transition-fast);font-size:.68rem;font-weight:600}.top-issue-recharts-label.active{fill:var(--color-primary);font-weight:700}.top-issue-recharts-tooltip{color:#fff;white-space:nowrap;background-color:#111827;border-radius:6px;padding:.45rem .6rem;font-size:.72rem;font-weight:700;box-shadow:0 10px 24px #0f172a2e}.top-issue-skeleton-body{padding:.9rem 1.25rem 1rem}.skeleton-line,.skeleton-icon,.skeleton-legend-item,.skeleton-donut{background:linear-gradient(90deg,#eef2f6 25%,#f8fafc 37%,#eef2f6 63%) 0 0/400% 100%;animation:1.35s infinite skeleton-shimmer}.skeleton-title{border-radius:5px;width:92px;height:15px}.skeleton-subtitle{border-radius:5px;width:380px;height:11px;margin-top:.45rem}.skeleton-icon{border-radius:6px;width:30px;height:30px}.skeleton-legend{flex-wrap:wrap;gap:.55rem .8rem;display:flex}.skeleton-legend-item{border-radius:6px;width:104px;height:12px}.skeleton-donut{border-radius:50%;width:188px;height:188px;margin:2.25rem auto 0}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width<=992px){.dashboard-layout.sidebar-expanded,.dashboard-layout.sidebar-collapsed{grid-template-columns:72px 1fr}.dashboard-main-panel,.dashboard-content-area{width:100%}.regional-grid-layout{grid-template-columns:1fr;gap:1.25rem}.analytics-grid-top,.analytics-grid-three{grid-template-columns:1fr}.overview-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-online-top-grid,.media-online-sentiment-grid,.media-online-popular-grid,.media-online-region-grid,.media-online-sentiment-region-grid,.top-media-grid-main,.top-media-grid-tier{grid-template-columns:1fr}.overview-news-section{min-height:780px}.related-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:.85rem 1rem 1rem}.top-issue-chart-wrap{height:390px}.regional-column-card,.issue-panel-card-large,.issue-panel-card-regional{min-height:280px}.diy-carousel-body{gap:.5rem}}@media (width<=768px){.dashboard-layout,.dashboard-layout.sidebar-expanded,.dashboard-layout.sidebar-collapsed{grid-template-columns:1fr!important}.dashboard-sidebar{background-color:var(--bg-sidebar);z-index:30;width:min(300px,100%);max-width:320px;transition:transform var(--transition-normal);display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 24px 56px #0f172a2e}.dashboard-sidebar.open{transform:translate(0)}.dashboard-sidebar.collapsed{transform:translate(-100%)}.dashboard-main-panel,.dashboard-content-area,.dashboard-header{width:100%}.dashboard-content-area{padding:1rem}.dashboard-action-bar{flex-direction:column;align-items:stretch;gap:1rem}.action-bar-left,.action-bar-right{width:100%}.action-bar-right{justify-content:flex-start}.action-btn{justify-content:center;width:100%}.filter-dropdown-menu{width:100%;left:0}.banner-card{padding:1.25rem}.banner-content{flex-direction:column;align-items:flex-start}.banner-right{width:100%;margin-top:.75rem}.cards-grid,.regional-grid-layout,.overview-news-grid{grid-template-columns:1fr}.overview-news-section{min-height:680px;max-height:760px}.donut-chart-layout,.media-online-donut,.top-media-donut-layout{grid-template-columns:1fr}.top-media-donut-legend{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.media-online-donut .donut-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.related-modal-backdrop{padding:.75rem}.related-modal-grid{grid-template-columns:1fr}.related-modal-footer{flex-direction:column;align-items:flex-start;gap:.75rem}.top-issue-chart-wrap{max-width:100%;height:360px}.skeleton-subtitle{width:min(320px,100%)}.donut-legend{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.donut-legend-pagination{grid-column:1/-1}.regional-column-card{min-height:auto}.issue-panel-card-large,.issue-panel-card-regional{min-height:260px}}@media (width<=576px){.dashboard-layout,.dashboard-layout.sidebar-expanded,.dashboard-layout.sidebar-collapsed{grid-template-columns:1fr!important}.dashboard-sidebar{background-color:var(--bg-sidebar);z-index:30;width:100%;max-width:100%;transition:transform var(--transition-normal);display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 24px 56px #0f172a2e}.dashboard-sidebar.open{transform:translate(0)}.dashboard-sidebar.collapsed{transform:translate(-100%)}.dashboard-content-area{padding:.75rem}.dashboard-action-bar{flex-direction:column;align-items:stretch;gap:.75rem}.banner-card{padding:1.15rem}.banner-content{flex-direction:column;align-items:flex-start}.banner-right{width:100%;margin-top:.5rem}.cards-grid{grid-template-columns:1fr}}:root{--swiper-theme-color:#007aff}:host{z-index:1;margin-left:auto;margin-right:auto;display:block;position:relative}.swiper{z-index:1;margin-left:auto;margin-right:auto;padding:0;list-style:none;display:block;position:relative;overflow:hidden}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{z-index:1;width:100%;height:100%;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box;display:flex;position:relative}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate(0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;transition-property:transform;display:block;position:relative}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{scrollbar-width:none;-ms-overflow-style:none;overflow:auto}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(#0000,#00000080)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(#00000080,#0000)}.swiper-lazy-preloader{z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top-color:#0000;border-radius:50%;width:42px;height:42px;margin-top:-21px;margin-left:-21px;position:absolute;top:50%;left:50%}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:1s linear infinite swiper-preloader-spin}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size:44px}.swiper-button-prev,.swiper-button-next{width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;color:var(--swiper-navigation-color,var(--swiper-theme-color));justify-content:center;align-items:center;display:flex;position:absolute}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) ::slotted(svg),:is(.swiper-button-prev,.swiper-button-next) svg{object-fit:contain;transform-origin:50%;fill:currentColor;pointer-events:none;width:100%;height:100%}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset,4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset,4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) ::slotted(.swiper-navigation-icon),:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) ::slotted(.swiper-navigation-icon),:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0;right:auto}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset,4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) ::slotted(.swiper-navigation-icon),:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) ::slotted(.swiper-navigation-icon),:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.swiper-pagination{text-align:center;z-index:10;transition:opacity .3s;position:absolute;transform:translate(0,0)}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);width:100%;left:0}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);display:inline-block}button.swiper-pagination-bullet{box-shadow:none;appearance:none;border:none;margin:0;padding:0}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity,1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{width:8px;top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,top .2s;display:inline-block}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{white-space:nowrap;left:50%;transform:translate(-50%)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,left .2s}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));transform-origin:0 0;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(0)}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:100% 0}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);top:0;left:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size,4px);height:100%;top:0;left:0}.swiper-pagination-lock{display:none}
