body{margin:0;background:linear-gradient(180deg,#f4f7fb 0%,#eef3f9 100%);color:#17263f;font:14px/1.55 Inter,Arial,sans-serif}
.admin-shell{min-height:100vh}
.admin-navbar{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid #dfe7f1;box-shadow:0 10px 30px rgba(10,42,76,.05)}
.admin-navbar-inner{width:min(1280px,96%);margin:0 auto;display:flex;align-items:center;gap:18px;min-height:84px}
.brand-admin{min-width:auto;flex:0 0 auto}
.brand-admin .brand-mark{box-shadow:0 10px 22px rgba(13,110,253,.18)}
.brand-admin b{font-size:18px}
.brand-admin small{font-size:11px;color:#7f92a8!important}
.admin-topnav{display:flex;align-items:center;gap:10px;flex:1;min-width:0;flex-wrap:wrap}
.admin-link,.menu-dropdown summary{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:11px 15px;border:1px solid #dfe8f2;border-radius:15px;background:#fff;color:#1a2b48;font-weight:700;cursor:pointer;list-style:none;transition:.2s ease;white-space:nowrap}
.admin-link:hover,.menu-dropdown summary:hover,.admin-link.active,.menu-dropdown.active summary{border-color:#c6daf2;background:linear-gradient(180deg,#ffffff,#f5f9ff);box-shadow:0 10px 24px rgba(15,74,135,.08);color:#0b5cac}
.menu-dropdown{position:relative}
.menu-dropdown[open] summary{border-color:#c6daf2;background:linear-gradient(180deg,#ffffff,#f5f9ff);box-shadow:0 10px 24px rgba(15,74,135,.08)}
.menu-dropdown summary::-webkit-details-marker{display:none}
.nav-indicator{width:10px;height:10px;border-radius:50%;display:inline-block;box-shadow:0 0 0 4px rgba(13,110,253,.08)}
.ind-blue{background:#0d6efd}.ind-cyan{background:#0bb6d8}.ind-violet{background:#7c4dff}.ind-green{background:#14b37d}.ind-orange{background:#ff9c2a}
.chev{font-size:11px;color:#70839a;margin-left:2px;transition:transform .18s ease}
.menu-dropdown[open] .chev{transform:rotate(180deg)}
.dropdown-panel{position:absolute;top:calc(100% + 10px);left:0;min-width:250px;padding:10px;border:1px solid #dce6f0;border-radius:18px;background:#fff;box-shadow:0 24px 44px rgba(12,54,98,.14);display:grid;gap:6px}
.dropdown-panel a{display:flex;align-items:center;padding:11px 13px;border-radius:12px;color:#324760;font-weight:600}
.dropdown-panel a:hover,.dropdown-panel a.active{background:linear-gradient(120deg,#0d6efd,#0bb6d8);color:#fff}
.admin-userbar{margin-left:auto;display:flex;align-items:center;gap:10px;flex:0 0 auto}
.admin-userchip{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:11px 14px;border-radius:15px;background:#fff;border:1px solid #dfe8f2;color:#455971;font-weight:600}
.status-dot{width:10px;height:10px;border-radius:50%;background:#11bf82;box-shadow:0 0 0 4px rgba(17,191,130,.14)}
.admin-logout{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 16px;border-radius:15px;background:linear-gradient(135deg,#0d6efd,#0bb6d8);color:#fff;font-weight:700;box-shadow:0 12px 24px rgba(13,110,253,.18)}
.main{width:min(1280px,96%);margin:0 auto;padding:26px 0 34px}
.admin-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}
.admin-top h1{font:800 26px "Plus Jakarta Sans";margin:0}
.admin-subtitle{margin:7px 0 0;color:#75859a;max-width:780px}
.panel{background:#fff;border:1px solid #e4ebf4;border-radius:20px;padding:20px;box-shadow:0 8px 24px rgba(12,55,98,.05);margin-bottom:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.kpi b{display:block;font:800 29px "Plus Jakarta Sans"}
.kpi small{color:#76869b}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:12px;border-bottom:1px solid #edf1f6;vertical-align:top}
th{font-size:11px;text-transform:uppercase;color:#7a8797}
.badge{display:inline-block;padding:4px 8px;border-radius:20px;background:#e8f7f3;color:#08765f;font-size:11px}.badge.off{background:#f1f3f6;color:#758193}
.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.actions{display:flex;gap:7px;flex-wrap:wrap}.btn-sm{padding:7px 10px;border-radius:9px;font-size:11px}
.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 75% 15%,#cff5ff,transparent 30%),linear-gradient(160deg,#eef7ff,#fff)}
.login-card{width:min(430px,92%);background:#fff;padding:30px;border-radius:22px;box-shadow:0 25px 70px rgba(11,56,103,.16)}
.login-card h1{font:800 26px "Plus Jakarta Sans"}.note{font-size:12px;color:#6d7b8c}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#f0f4f8;padding:2px 5px;border-radius:5px}
.verify-form{min-width:250px}.verify-form input{padding:8px 9px;margin-bottom:7px}.verify-form .actions{flex-wrap:nowrap}

@media(max-width:1120px){
  .admin-navbar-inner{align-items:flex-start;flex-wrap:wrap;padding:14px 0}
  .admin-topnav{order:3;flex-basis:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
  .dropdown-panel{left:0}
}
@media(max-width:900px){
  .main{padding:18px 0}
  .grid-4{grid-template-columns:1fr 1fr}
  .admin-userbar{margin-left:0}
}
@media(max-width:640px){
  .admin-navbar-inner{gap:12px}
  .brand-admin{flex-basis:100%}
  .admin-userbar{width:100%;justify-content:space-between}
  .admin-link,.menu-dropdown summary,.admin-userchip,.admin-logout{min-height:42px;padding:10px 13px;border-radius:13px}
  .dropdown-panel{position:fixed;left:12px;right:12px;top:92px;min-width:0}
  .grid-4{grid-template-columns:1fr}
  .toolbar{align-items:flex-start;flex-direction:column}
}

/* v1.1.7 - Dropdown visibility fix */
.menu-dropdown > .dropdown-panel{display:none}
.menu-dropdown[open] > .dropdown-panel{display:grid}

/* Logo settings v1.1.8 */
.brand-admin .brand-logo-image{max-width:54px;height:42px;filter:none}
.logo-setting-grid{display:grid;grid-template-columns:320px 1fr;gap:22px;align-items:stretch}
.logo-preview-box,.logo-upload-box{border:1px solid #e3ebf4;border-radius:18px;background:#fbfdff;padding:18px}
.logo-preview-label{display:block;font:700 12px "Plus Jakarta Sans",Inter,sans-serif;color:#60738a;margin-bottom:12px}
.logo-preview-canvas{min-height:120px;border:1px dashed #cbd9e8;border-radius:15px;background:#fff;display:flex;align-items:center;justify-content:center;gap:14px;padding:18px}
.logo-preview-canvas img{max-width:240px;max-height:90px;object-fit:contain}
.remove-logo-option{display:flex;align-items:center;gap:8px;margin-top:14px;color:#9b3434;font-size:12px;font-weight:600}
.remove-logo-option input{width:auto}
@media(max-width:760px){.logo-setting-grid{grid-template-columns:1fr}.logo-preview-canvas img{max-width:200px}}

/* v1.1.10 - prevent uploaded logo from expanding admin header */
.brand-admin{min-height:46px;max-height:46px;overflow:hidden}
.brand-admin > img.brand-logo-image{display:block!important;width:auto!important;height:42px!important;max-width:58px!important;max-height:42px!important;object-fit:contain!important;flex:0 0 auto!important}
.logo-preview-canvas{overflow:hidden}
.logo-preview-canvas > img{display:block!important;width:auto!important;height:auto!important;max-width:240px!important;max-height:90px!important;object-fit:contain!important}

/* Customer management v1.1.11 */
.customer-admin-identity{display:flex;align-items:center;gap:11px;min-width:190px}.customer-admin-logo,.customer-admin-logo-fallback{width:40px;height:40px;flex:0 0 40px;border-radius:12px;display:grid;place-items:center;object-fit:contain;background:#f3f8fd;border:1px solid #e0eaf4}.customer-admin-logo-fallback{background:linear-gradient(145deg,#0d6efd,#0bb6d8);color:#fff;font:800 15px "Plus Jakarta Sans",Inter,sans-serif}.customer-actions{flex-wrap:nowrap}.customer-edit-panel{overflow:visible}.customer-edit-grid{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start}.customer-logo-editor label{display:block;font-weight:700;margin-bottom:9px}.customer-logo-preview{height:190px;border:1px dashed #cbd9e8;border-radius:20px;background:linear-gradient(180deg,#fbfdff,#f4f8fc);display:grid;place-items:center;margin-bottom:14px;overflow:hidden}.customer-logo-preview img{display:block;max-width:210px;max-height:150px;width:auto;height:auto;object-fit:contain}.customer-logo-preview span{width:84px;height:84px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(145deg,#0d6efd,#0bb6d8);color:#fff;font:800 34px "Plus Jakarta Sans",Inter,sans-serif}.customer-logo-editor input[type=file]{padding:10px;background:#fff}.check-row{display:flex!important;align-items:center;gap:8px;font-weight:600!important;margin-top:12px!important}.check-row input{width:auto}.customer-edit-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.customer-edit-meta span{display:flex;flex-direction:column;gap:2px;padding:9px 11px;border-radius:12px;background:#f5f9fd;color:#718198;font-size:10px}.customer-edit-meta b{color:#243b56;font-size:11px}
@media(max-width:860px){.customer-edit-grid{grid-template-columns:1fr}.customer-logo-editor{max-width:420px}.customer-actions{flex-wrap:wrap}}

/* Product discount form v1.1.15 */
.discount-field{position:relative}.discount-preview{min-height:48px;border:1px solid #d6e0ec;border-radius:12px;background:linear-gradient(135deg,#f4fbff,#f0fff9);padding:9px 13px;display:flex;flex-direction:column;justify-content:center}.discount-preview small{font-size:10px;color:#74869c;text-transform:uppercase;letter-spacing:.08em}.discount-preview strong{font:800 19px "Plus Jakarta Sans",Inter,sans-serif;color:#075db4}.discount-badge{background:#fff2dd;color:#a85a00}.discount-final-price{color:#08765f}

/* v1.1.20 - admin menu stabilization + destructive action */
.menu-dropdown[open]{z-index:140}
.menu-dropdown[open]>.dropdown-panel{z-index:150}
.admin-topnav{overflow:visible}
.btn-danger{background:#fff1f1!important;border-color:#ffd0d0!important;color:#b32626!important;box-shadow:none!important}
.btn-danger:hover{background:#dc3545!important;border-color:#dc3545!important;color:#fff!important}
.inline-delete-form{display:inline-flex;margin:0}
@media(max-width:1120px){
  .admin-topnav{overflow:visible!important;flex-wrap:wrap!important}
}

/* v1.1.21 - Add-on management */
.addon-admin-hero{background:linear-gradient(120deg,#f7fbff,#f2fffb)}.addon-check{display:flex!important;align-items:center;gap:8px;margin-top:28px;font-weight:700}.addon-check input{width:auto}


/* v1.1.28 - LINK SIKADU customer field */
.customer-url-field{display:flex;align-items:center;gap:10px}.customer-url-field input{flex:1;min-width:0}.customer-url-field .btn{flex:0 0 auto;white-space:nowrap}@media(max-width:640px){.customer-url-field{align-items:stretch;flex-direction:column}.customer-url-field .btn{width:100%}}

/* v1.1.30 - Profil Perusahaan */
.company-admin-panel{max-width:1100px}.company-form-grid{margin-top:20px}.company-block-field textarea{min-height:150px}.company-save-bar{max-width:1100px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:sticky;bottom:14px;z-index:20;box-shadow:0 18px 45px rgba(12,55,98,.12)}
@media(max-width:640px){.company-save-bar{align-items:stretch;flex-direction:column}.company-save-bar .btn{width:100%}}
