/* PAPISMA V20.1 — navigasi berkumpulan */
.topbar{position:relative;z-index:1000;display:flex;align-items:center;gap:24px;min-height:82px;padding:10px clamp(18px,3vw,48px);overflow:visible!important;background:linear-gradient(110deg,#073d31,#0d5c47 70%,#0a493b);border-bottom:4px solid #d7b33e;box-shadow:0 8px 28px rgba(4,48,38,.16)}
.topbar .brand{display:flex;align-items:center;gap:11px;flex:0 0 auto;color:#fff;text-decoration:none;font-size:1.35rem;font-weight:900;letter-spacing:.02em;line-height:1}
.topbar .brand img{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:50%;box-shadow:0 0 0 3px rgba(255,255,255,.18)}
.topbar .brand small{display:block;margin-top:7px;color:#e0bf3f;font-size:.72rem;letter-spacing:.08em}
.topbar .main-nav{display:flex!important;align-items:center;justify-content:flex-end;gap:3px;min-width:0!important;margin-left:auto;width:auto}
.topbar .nav-direct,.topbar .nav-group>summary{display:flex;align-items:center;min-height:44px;padding:10px 13px;border-radius:10px;color:#f7fffc;text-decoration:none;font-size:.94rem;font-weight:700;white-space:nowrap;cursor:pointer;transition:background .18s ease,color .18s ease}
.topbar .nav-direct:hover,.topbar .nav-group[open]>summary,.topbar .nav-group>summary:hover{background:rgba(255,255,255,.13);color:#fff}
.topbar .nav-group{position:relative;margin:0}
.topbar .nav-group>summary{list-style:none}
.topbar .nav-group>summary::-webkit-details-marker{display:none}
.topbar .nav-group>summary::after{content:"";width:7px;height:7px;margin-left:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
.topbar .nav-group[open]>summary::after{transform:rotate(225deg) translate(-1px,-1px)}
.topbar .nav-dropdown{position:absolute;top:calc(100% + 10px);left:0;width:300px;padding:9px;background:#fff;border:1px solid #d9e5df;border-radius:14px;box-shadow:0 18px 50px rgba(8,48,39,.22);animation:navDrop .15s ease-out}
.topbar .nav-dropdown::before{content:"";position:absolute;top:-7px;left:22px;width:13px;height:13px;background:#fff;border-left:1px solid #d9e5df;border-top:1px solid #d9e5df;transform:rotate(45deg)}
.topbar .nav-dropdown-right{right:0;left:auto}
.topbar .nav-dropdown-right::before{right:22px;left:auto}
.topbar .nav-dropdown a{position:relative;z-index:1;display:block;padding:11px 13px;border-radius:9px;color:#14352c!important;text-decoration:none;line-height:1.25}
.topbar .nav-dropdown a:hover{background:#edf7f2;color:#087256!important}
.topbar .nav-dropdown a strong{display:block;font-size:.93rem}
.topbar .nav-dropdown a small{display:block;margin-top:3px;color:#667972;font-size:.75rem;font-weight:500}
.topbar .nav-dropdown a+a{border-top:1px solid #edf1ef}
.topbar .nav-user{display:block;margin:-1px -1px 7px;padding:12px 14px;background:#edf7f2;border-radius:9px;color:#123f32}
.topbar .nav-user strong,.topbar .nav-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar .nav-user small{margin-top:3px;color:#63766f;font-size:.75rem}
.topbar .nav-logout{color:#a32222!important}
.topbar .nav-notifications>summary{position:relative;min-width:44px;justify-content:center;padding-inline:10px}
.topbar .nav-notifications>summary::after{display:none}
.bell-icon{position:relative;width:18px;height:19px;font-size:0;border:2px solid #fff;border-radius:10px 10px 6px 6px;border-top-width:3px}
.bell-icon:before{content:"";position:absolute;left:5px;top:-6px;width:5px;height:5px;border-radius:50%;background:#fff}.bell-icon:after{content:"";position:absolute;left:5px;bottom:-6px;width:5px;height:3px;border-radius:0 0 5px 5px;background:#fff}
.nav-notifications>summary>b{position:absolute;right:1px;top:1px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:2px solid #0b5845;border-radius:99px;background:#ef4444;color:#fff;font-size:.62rem;line-height:1}
.topbar .nav-notifications .nav-dropdown{width:340px;max-height:70vh;overflow-y:auto}
.topbar .nav-dropdown-wide{width:420px;grid-template-columns:1fr 1fr}
.topbar .nav-notifications>summary span:last-of-type{margin-left:7px}
@media(max-width:720px){.topbar .nav-dropdown-wide{width:auto;grid-template-columns:1fr}}
.notification-title{display:block;padding:9px 12px;color:#0c4939;font-weight:900;border-bottom:1px solid #e4ece8}.notification-empty{display:block;padding:22px 14px;text-align:center;color:#697b74}.topbar .nav-dropdown a em{display:inline-block;margin-top:5px;padding:2px 7px;border-radius:99px;background:#e8f5ef;color:#087256;font-size:.68rem;font-style:normal;font-weight:800}
.topbar .nav-toggle{display:none;align-items:center;gap:9px;padding:9px 12px;border:1px solid rgba(255,255,255,.28);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;font:inherit;font-weight:800}
.topbar .nav-toggle-lines,.topbar .nav-toggle-lines::before,.topbar .nav-toggle-lines::after{display:block;width:19px;height:2px;background:currentColor;content:""}
.topbar .nav-toggle-lines{position:relative}.topbar .nav-toggle-lines::before{position:absolute;top:-6px}.topbar .nav-toggle-lines::after{position:absolute;top:6px}
@keyframes navDrop{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1120px){.topbar{gap:14px;padding-inline:18px}.topbar .brand span{font-size:1.08rem}.topbar .nav-direct,.topbar .nav-group>summary{padding-inline:9px;font-size:.88rem}}
@media(max-width:900px){
 .topbar{position:relative;flex-wrap:wrap;min-height:72px;padding:8px 14px;overflow:visible!important}
 .topbar .brand img{width:50px;height:50px}.topbar .nav-toggle{display:flex;margin-left:auto}
 .topbar .main-nav{display:none!important;order:3;width:100%;margin:2px 0 6px;padding:8px;background:rgba(0,0,0,.1);border-radius:12px;grid-template-columns:1fr 1fr;align-items:start;gap:5px;min-width:0!important}
 .topbar.nav-open .main-nav{display:grid!important}
 .topbar .nav-direct,.topbar .nav-group>summary{width:100%;min-height:43px;padding:10px 12px}
 .topbar .nav-group{position:static;min-width:0}
 .topbar .nav-dropdown,.topbar .nav-dropdown-right{position:static;width:auto;margin:3px 0 7px;padding:6px;border-radius:10px;box-shadow:none;animation:none}
 .topbar .nav-dropdown::before{display:none}.topbar .nav-account{grid-column:1/-1}
}
@media(max-width:540px){.topbar .main-nav{grid-template-columns:1fr}.topbar .nav-account{grid-column:auto}.topbar .brand span{font-size:1rem}.topbar .brand small{font-size:.63rem}.topbar .nav-toggle span:last-child{display:none}}
@media print{.topbar{display:none!important}}
