/* Komentar — disalin dari design/desain-interaktif.html (jangan ubah tanpa acuan desain) */
:root{
  --bg:#EEF0F5;--surface:#FFFFFF;--ink:#2A2B3A;--ink2:#6A6B7C;--muted:#A0A1B2;--line:#ECEDF3;--hair:#F2F3F8;
  --pink:#EC4E95;--pink-soft:#FBD9E8;--pink-card:#FCE4EF;
  --yellow:#F4B740;--yellow-soft:#FBE7B2;--yellow-card:#FDF1D6;
  --blue:#5FA8F5;--blue-soft:#D5E6FB;--blue-card:#E4F0FD;
  --green:#2FB888;--green-soft:#CFEEE2;--violet:#8B7CF0;--violet-soft:#E4DEFB;
  --g-primary:#EC4E95;--g-violet:#8B7CF0;--g-pink:#EC4E95;--g-cyan:#5FA8F5;--g-amber:#F4B740;--g-green:#2FB888;
  --g-fb:#5FA8F5;--g-ig:#EC4E95;--g-wa:#2FB888;--g-threads:#6A6B7C;
  --shadow:0 2px 10px rgba(42,43,58,.05);--shadow-h:0 10px 28px rgba(42,43,58,.10);
}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);font-family:"Plus Jakarta Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45;background:var(--bg)}
a{color:var(--pink);text-decoration:none;font-weight:700}
button{font-family:inherit;cursor:pointer}
.mono{font-family:"IBM Plex Mono",monospace;font-feature-settings:"tnum" 1}
.i{width:18px;height:18px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}.i.sm{width:15px;height:15px}
.bg{position:fixed;inset:0;z-index:-1;background:var(--bg)}
.glass{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.app{height:100vh;display:flex;flex-direction:column}
.topbar{height:66px;flex:none;display:flex;align-items:center;gap:16px;padding:0 20px;background:var(--surface);border-bottom:1px solid var(--line);z-index:20}
.brand{display:flex;align-items:center;gap:11px}
.brand-badge{width:38px;height:38px;border-radius:12px;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;box-shadow:0 6px 16px rgba(236,78,149,.35)}
.brand b{font-weight:800;font-size:17px;letter-spacing:-.01em}
.acct{display:flex;align-items:center;gap:7px;height:38px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink2);font-weight:700;font-size:13px}
.search{flex:1;max-width:460px;display:flex;align-items:center;gap:10px;height:44px;padding:0 16px;background:var(--bg);border:1px solid var(--line);border-radius:14px;color:var(--muted)}
.search input{border:0;background:transparent;outline:none;width:100%;font:inherit;color:var(--ink)}
.tb-right{margin-left:auto;display:flex;align-items:center;gap:11px}
.pill{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 14px;border-radius:999px;font-weight:800;font-size:12.5px;background:var(--green-soft);color:#1E8E68}
.avatar{width:36px;height:36px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}
.avatars{display:flex}.avatars .avatar{margin-left:-9px;box-shadow:0 0 0 2px var(--surface)}
.btn{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 17px;border-radius:13px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-weight:800;font-size:13.5px;transition:.18s}.btn:hover{background:var(--bg)}
.btn-grad{background:var(--pink);border:0;color:#fff;box-shadow:0 8px 20px rgba(236,78,149,.3)}.btn-grad:hover{background:#E13A86;transform:translateY(-1px)}
.btn.sm{height:36px;padding:0 13px;font-size:12.5px;border-radius:11px}
.body{flex:1;min-height:0;display:flex;flex-wrap:wrap}
.sidebar{width:230px;flex:none;padding:18px 12px;overflow-y:auto;display:flex;flex-direction:column;gap:18px;background:var(--surface);border-right:1px solid var(--line)}
.nav-grp{display:flex;flex-direction:column;gap:3px}
.nav-cap{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:3px 13px 5px}
.nav-item{display:flex;align-items:center;gap:12px;height:44px;padding:0 13px;border-radius:13px;border:0;background:transparent;color:var(--ink2);font-weight:700;font-size:13.5px;width:100%;text-align:left;transition:.16s}.nav-item:hover{background:var(--bg);color:var(--ink)}
.nav-ico{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--muted);flex:none}
.nav-item .count{margin-left:auto;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);font-weight:700;background:var(--bg);border-radius:999px;padding:1px 8px}
.nav-item.active{background:var(--pink-card);color:var(--ink)}.nav-item.active .nav-ico{color:var(--pink)}.nav-item.active .count{background:#fff;color:var(--pink)}
.nav-dot{width:22px;display:flex;justify-content:center;flex:none}.nav-dot span{width:11px;height:11px;border-radius:50%}
.side-card{margin-top:auto;border-radius:15px;padding:14px;background:var(--pink-card);display:flex;align-items:center;gap:9px;color:var(--ink2);font-size:12px;font-weight:700}.side-card .ld{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(47,184,136,.18)}
.work{flex:999 1 560px;min-width:0;display:flex;flex-wrap:wrap;gap:14px;padding:14px;height:100%}
.col{height:100%;min-width:0;border-radius:20px;display:flex;flex-direction:column;overflow:hidden}
.ch{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;color:var(--ink2)}.ch .cd{width:9px;height:9px;border-radius:50%}
.posts{flex:1 1 300px}
.p-head{flex:none;padding:16px 16px 13px;display:flex;flex-direction:column;gap:11px;border-bottom:1px solid var(--line)}.p-head b{font-size:16px;font-weight:800}
.seg{display:flex;gap:4px;flex-wrap:wrap}.seg button{height:32px;padding:0 12px;border-radius:10px;border:0;background:var(--bg);color:var(--ink2);font-weight:700;font-size:12px}.seg button.active{background:var(--pink);color:#fff}
.p-list{flex:1;overflow-y:auto;padding:8px}
.post-item{display:flex;gap:11px;padding:11px;border-radius:14px;width:100%;text-align:left;align-items:center;transition:.14s;margin-bottom:3px;border:1px solid transparent}
.post-item:hover{background:var(--bg)}
.post-item.active{background:var(--pink-card);border-color:var(--pink-soft)}
.pi-thumb{width:46px;height:46px;border-radius:13px;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;position:relative}
.pi-thumb .cd{position:absolute;right:-3px;bottom:-3px;width:17px;height:17px;border:2px solid var(--surface);border-radius:50%}
.pi-main{min-width:0;flex:1}.pi-main b{font-size:13px;font-weight:800;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pi-sub{color:var(--muted);font-size:11px;margin-top:2px;font-weight:600}
.pi-badge{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:700;color:var(--pink);background:var(--pink-card);border-radius:999px;padding:1px 8px;flex:none}
.mod{flex:999 1 440px}
.mod-post{flex:none;padding:15px 18px;display:flex;gap:14px;align-items:flex-start;border-bottom:1px solid var(--line)}
.mod-post .pv{width:64px;height:64px;border-radius:15px;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--pink)}
.mod-post .mp-main{flex:1;min-width:0}
.mp-metrics{display:flex;gap:14px;color:var(--muted);font-size:12px;font-weight:700;margin-top:7px}.mp-metrics b{color:var(--ink);font-family:"IBM Plex Mono",monospace}
.mod-bulk{flex:none;display:flex;align-items:center;gap:10px;padding:10px 18px;background:var(--pink-card);border-bottom:1px solid var(--line);font-size:12.5px;color:var(--ink2);font-weight:700;flex-wrap:wrap}
.cbx{width:18px;height:18px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;flex:none;background:var(--pink);color:#fff}
.mod-list{flex:1;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:11px;background:var(--bg)}
.cmt{display:flex;gap:12px;padding:13px;background:var(--surface);border:1px solid var(--line);border-radius:15px;transition:.14s}
.cmt:hover{box-shadow:var(--shadow)}
.cmt.flagged{background:var(--yellow-card);border-color:var(--yellow-soft)}
.cmt-ava{width:38px;height:38px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:12px}
.cmt-main{flex:1;min-width:0}.cmt-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cmt-top b{font-size:13px;font-weight:800}.cmt-top .t{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
.cmt-text{font-size:13.5px;color:var(--ink);margin:6px 0 10px}.cmt.flagged .cmt-text{color:#8A6410}
.flag{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;color:#B07D14;background:var(--yellow-soft);border-radius:8px;padding:5px 9px;margin-bottom:9px}
.cmt-actions{display:flex;flex-wrap:wrap;gap:6px}
.ca{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink2);font-weight:700;font-size:12px;transition:.15s}
.ca:hover{background:var(--bg)}
.ca.danger{color:var(--pink);border-color:var(--pink-soft)}.ca.primary{color:#fff;background:var(--pink);border:0}
.like{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:12px;font-weight:700;font-family:"IBM Plex Mono",monospace}
.mod-side{flex:1 1 290px;max-width:320px;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}
.stat2{display:flex;gap:11px}.stat2 .s{flex:1;border-radius:15px;padding:13px;background:var(--bg);border:1px solid var(--line)}.stat2 .s .n{font-family:"IBM Plex Mono",monospace;font-size:24px;font-weight:800}.stat2 .s .l{font-size:11px;color:var(--muted);font-weight:700}
.card{border-radius:15px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.card-h{padding:11px 14px;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.card-b{padding:12px;display:flex;flex-direction:column;gap:9px}
.snippet{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;font-size:12.5px;background:var(--bg)}
.snippet .sh{font-family:"IBM Plex Mono",monospace;font-weight:700;color:#fff;background:var(--pink);border-radius:6px;padding:2px 8px;flex:none;font-size:11px}
.devnote{font-family:"IBM Plex Mono",monospace;font-size:11.5px;line-height:1.55;background:#F4F3FB;border:1px solid var(--violet-soft);color:#5A4A78;border-radius:13px;padding:12px 13px}
.devnote b{color:var(--ink)}.devnote .k{color:#1E8E68}.devnote .cap{color:#8B7CF0;text-transform:uppercase;letter-spacing:.05em;font-size:10px;display:block;margin-bottom:5px}
@media (max-width:1200px){.mod-side{display:none}}
@media (max-width:980px){.body{display:block}.sidebar{width:100%;border-right:0;border-bottom:1px solid var(--line)}.work{display:block;height:auto}.col{height:auto;margin-bottom:14px}}
.nav-ico,.pi-thumb,.cmt-ava{transition:transform .22s cubic-bezier(.2,.8,.2,1)}
.post-item:hover .pi-thumb,.cmt:hover .cmt-ava{transform:scale(1.07) rotate(-4deg)}
.side-card .ld{animation:pulse 2.3s ease-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(47,184,136,.5)}70%{box-shadow:0 0 0 7px rgba(47,184,136,0)}100%{box-shadow:0 0 0 0 rgba(47,184,136,0)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
