* { box-sizing:border-box; margin:0; padding:0; }
    body {
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      background:#f4f6fb;
      color:#222222;
    }
    a { text-decoration:none; color:inherit; }

    #access-overlay{
      position:fixed;
      inset:0;
      background:radial-gradient(circle at top,#1e88e5,#0d47a1 60%,#000000 100%);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:9999;
    }
    .access-panel{
      background:#ffffff;
      border-radius:18px;
      padding:20px 18px 18px;
      width:90%;
      max-width:380px;
      box-shadow:0 18px 45px rgba(0,0,0,0.45);
      text-align:center;
      animation:fadeInUp 0.35s ease-out;
    }
    .access-logo{
      width:200px;
      height:200px;
      border-radius:24px;
      margin:0 auto 20px;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
    }
    .access-logo img{
      width:200px;
      height:200px;
      object-fit:contain;
      border-radius:24px;
      display:block;
    }
    .access-title{
      font-size:20px;
      font-weight:700;
      margin-bottom:4px;
      color:#0d47a1;
    }
    .access-sub{
      font-size:12px;
      color:#555555;
      margin-bottom:14px;
    }
    .access-label{
      font-size:12px;
      font-weight:500;
      margin-bottom:4px;
      text-align:left;
      color:#333333;
    }
    .access-input{
      width:100%;
      padding:10px 12px;
      border-radius:10px;
      border:1px solid #bbdefb;
      font-size:14px;
      text-align:center;
      letter-spacing:0.12em;
      text-transform:uppercase;
      font-family:monospace;
    }
    .access-input:focus{
      outline:none;
      border-color:#1976d2;
      box-shadow:0 0 0 2px rgba(25,118,210,0.18);
    }
    .access-error{
      font-size:11px;
      color:#c62828;
      min-height:16px;
      margin-top:4px;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:4px;
    }
    .access-helper{
      font-size:11px;
      color:#888888;
      margin-top:6px;
    }
    .access-btn{
      margin-top:14px;
      width:100%;
      padding:9px 12px;
      border-radius:999px;
      border:none;
      background:#1976d2;
      color:#ffffff;
      font-weight:600;
      font-size:14px;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      box-shadow:0 8px 18px rgba(25,118,210,0.45);
    }
    .access-btn:disabled{
      opacity:0.6;
      cursor:not-allowed;
      box-shadow:none;
    }
    .access-spinner{
      width:18px;
      height:18px;
      border-radius:50%;
      border:2px solid rgba(255,255,255,0.7);
      border-top-color:transparent;
      animation:spin 0.7s linear infinite;
    }
    .access-success-icon{
      width:46px;
      height:46px;
      border-radius:50%;
      background:#e8f5e9;
      display:flex;
      align-items:center;
      justify-content:center;
      margin:0 auto 10px;
      font-size:24px;
      color:#2e7d32;
    }
    .access-success-title{
      font-size:18px;
      font-weight:700;
      margin-bottom:4px;
      color:#1b5e20;
    }
    .access-success-text{
      font-size:12px;
      color:#555555;
    }
    @keyframes spin{
      to{transform:rotate(360deg);}
    }
    @keyframes fadeInUp{
      from{opacity:0;transform:translateY(10px);}
      to{opacity:1;transform:translateY(0);}
    }

    .blog-wrapper{
      padding:20px;
    }
    .blog-title{
      font-size:20px;
      font-weight:700;
      margin-bottom:10px;
      color:#0d47a1;
    }
    .shp-header{
      background:linear-gradient(90deg,#1976d2,#42a5f5);
      color:#ffffff;
      padding:10px 12px;
      box-shadow:0 2px 6px rgba(0,0,0,0.2);
      position:sticky;
      top:0;
      z-index:10;
    }
    .shp-header-inner{
      max-width:1200px;
      margin:0 auto;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
    }
    .shp-logo{
      display:flex;
      align-items:center;
      gap:8px;
      font-weight:700;
      font-size:18px;
    }
    .shp-logo-icon{
      width:30px;
      height:30px;
      border-radius:999px;
      background:#ffffff;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
    }
    .shp-logo-img{
      width:100%;
      height:100%;
      object-fit:cover;
      display:block;
    }
    .shp-header-right{
      flex:1;
      display:flex;
      align-items:center;
      justify-content:flex-end;
      gap:8px;
    }
    .reseller-info{
      display:flex;
      align-items:center;
      gap:6px;
      font-size:11px;
    }
    .reseller-name{
      max-width:120px;
      overflow:hidden;
      text-overflow:ellipsis;
      white-space:nowrap;
    }
    .reseller-logout-btn{
      border:none;
      border-radius:999px;
      padding:4px 8px;
      font-size:10px;
      font-weight:600;
      cursor:pointer;
      background:#ffffff;
      color:#1976d2;
    }

    .admin-shortcuts{
      width:100%;
      display:flex;
      justify-content:flex-end;
      gap:6px;
      margin-top:6px;
      flex-wrap:wrap;
    }
    .admin-shortcut-btn{
      border:none;
      border-radius:10px;
      padding:6px 10px;
      font-size:11px;
      font-weight:700;
      cursor:pointer;
      background:#0d47a1;
      color:#ffffff;
      box-shadow:0 2px 6px rgba(0,0,0,0.15);
    }
    .admin-shortcut-btn:active{
      transform:scale(0.98);
    }
    .reseller-admin-btn{
      border:none;
      border-radius:999px;
      padding:4px 8px;
      font-size:10px;
      font-weight:600;
      cursor:pointer;
      background:#ffb300;
      color:#ffffff;
      display:none;
    }
    .admin-panel-overlay{
      position:fixed;
      inset:0;
      background:rgba(0,0,0,0.5);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:9999;
    }
    .admin-panel-box{
      background:#ffffff;
      border-radius:12px;
      padding:16px;
      max-width:320px;
      width:90%;
      box-shadow:0 4px 16px rgba(0,0,0,0.2);
      text-align:left;
      font-size:13px;
    }
    .admin-panel-title{
      margin:0 0 8px 0;
      font-size:16px;
      font-weight:700;
      color:#1976d2;
    }
    .admin-panel-text{
      margin:0 0 12px 0;
      line-height:1.5;
    }
    .admin-panel-close{
      border:none;
      border-radius:999px;
      padding:6px 12px;
      font-size:12px;
      font-weight:600;
      background:#1976d2;
      color:#ffffff;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      justify-content:center;
    }
    .admin-panel-logo-wrap{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-bottom:8px;
    }
    .admin-panel-logo{
      width:72px;
      height:72px;
      border-radius:50%;
      object-fit:cover;
      box-shadow:0 2px 6px rgba(0,0,0,0.2);
    }
    .admin-order-form{
      margin:8px 0 12px 0;
      padding:10px;
      border-radius:8px;
      background:#f5f7fb;
    }
    .admin-order-title{
      margin:0 0 8px 0;
      font-size:14px;
      font-weight:600;
      color:#333333;
    }
    .admin-order-label{
      display:flex;
      flex-direction:column;
      gap:4px;
      font-size:12px;
      margin-bottom:8px;
    }
    .admin-order-input{
      padding:6px 8px;
      border-radius:6px;
      border:1px solid #d0d7e2;
      font-size:12px;
      width:100%;
      box-sizing:border-box;
    }
    .admin-order-submit{
      border:none;
      border-radius:999px;
      padding:6px 12px;
      font-size:12px;
      font-weight:600;
      background:#43a047;
      color:#ffffff;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      margin-top:4px;
    }
    .admin-order-status{
      margin-top:8px;
      font-size:11px;
      min-height:14px;
    }
    .reseller-welcome-overlay{
      position:fixed;
      inset:0;
      background:rgba(0,0,0,0.5);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:9998;
    }
    .reseller-welcome-box{
      background:#ffffff;
      border-radius:12px;
      padding:16px;
      max-width:360px;
      width:90%;
      box-shadow:0 4px 16px rgba(0,0,0,0.2);
      text-align:left;
      font-size:13px;
    }
    .reseller-welcome-logo{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:center;
      margin-bottom:8px;
    }
    .reseller-welcome-logo-img{
      width:64px;
      height:64px;
      border-radius:50%;
      object-fit:cover;
      box-shadow:0 2px 6px rgba(0,0,0,0.2);
    }
    .reseller-welcome-title{
      margin:0 0 8px 0;
      font-size:16px;
      font-weight:700;
      text-align:center;
      color:#1976d2;
    }
    .reseller-welcome-text{
      margin:0 0 12px 0;
      line-height:1.5;
    }
    .reseller-welcome-text ol{
      padding-left:18px;
      margin:4px 0 8px 0;
    }
    .reseller-welcome-text li{
      margin-bottom:2px;
    }
    .reseller-welcome-dontshow{
      margin:8px 0 0 0;
      font-size:12px;
    }
    .reseller-welcome-dontshow label{
      display:flex;
      align-items:center;
      gap:6px;
    }
    .reseller-welcome-close{
      border:none;
      border-radius:999px;
      padding:6px 12px;
      font-size:12px;
      font-weight:600;
      background:#1976d2;
      color:#ffffff;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:100%;
    }
    .shp-search{
      flex:1;
      max-width:480px;
      position:relative;
      display:flex;
      align-items:center;
    }
    .shp-search input{
      width:100%;
      padding:7px 36px 7px 10px;
      border-radius:999px;
      border:none;
      outline:none;
      font-size:13px;
    }
    .shp-search button{
      position:absolute;
      right:4px;
      top:50%;
      transform:translateY(-50%);
      font-size:16px;
      border:none;
      background:transparent;
      cursor:pointer;
      padding:4px 6px;
      opacity:0.85;
    }
    .shp-cart{
      width:36px;
      height:36px;
      border-radius:50%;
      background:rgba(255,255,255,0.2);
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:18px;
    }
    .shp-toolbar{
      background:#ffffff;
      border-bottom:1px solid rgba(0,0,0,0.06);
      box-shadow:0 1px 3px rgba(0,0,0,0.05);
    }
    .shp-toolbar-inner{
      max-width:1200px;
      margin:0 auto;
      display:flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      overflow-x:auto;
      scrollbar-width:none;
    }
    

/* Admin toolbar shortcuts (only when admin) */
.admin-toolbar-right{
  margin-left:auto;
  display:none;
  gap:8px;
  align-items:center;
  flex:0 0 auto;
}
.admin-toolbar-right .admin-shortcut-btn{
  background:#0b2f5f;
  color:#fff;
  border:none;
  border-radius:999px;
  padding:8px 12px;
  font-weight:600;
  cursor:pointer;
  white-space:nowrap;
}
.admin-toolbar-right .admin-shortcut-btn:hover{
  filter:brightness(1.05);
}
@media(max-width:768px){
  .admin-toolbar-right .admin-shortcut-btn{
    padding:6px 10px;
    font-size:12px;
  }
}
.shp-toolbar-inner::-webkit-scrollbar{
      display:none;
    }
    .shp-tab{
      flex:0 0 auto;
      padding:6px 14px;
      font-size:13px;
      border-radius:999px;
      background:#e3f2fd;
      color:#0d47a1;
      font-weight:500;
      white-space:nowrap;
    }
    .shp-wrapper{
      max-width:1200px;
      margin:12px auto 40px;
      padding:0 10px;
    }
    .shp-product-grid{
      display:grid;
      grid-template-columns:repeat(6,1fr);
      gap:10px;
    }
    
    .shp-pager{
      display:flex;
      justify-content:space-between;
      gap:10px;
      margin:16px 0 0;
    }
    .shp-pager-btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:10px 14px;
      border-radius:12px;
      border:1px solid rgba(0,0,0,0.10);
      background:#ffffff;
      font-weight:700;
      text-decoration:none;
    }
    .shp-pager-btn:hover{filter:brightness(0.98);}
    .shp-pager-btn.is-disabled{
      opacity:.45;
      pointer-events:none;
    }
@media(max-width:1024px){
      .shp-product-grid{
        grid-template-columns:repeat(4,1fr);
      }
    }
    @media(max-width:768px){
      .shp-product-grid{
        grid-template-columns:repeat(2,1fr);
      }
      .shp-header-inner{
        flex-direction:column;
        align-items:flex-start;
      }
      .shp-header-right{
        width:100%;
        justify-content:space-between;
      }
    }
    @media(max-width:480px){
      .shp-product-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
      }
      .shp-product-card{
        border-radius:14px;
      }
      .shp-product-thumb{
        aspect-ratio:4/5;
      }
      .shp-product-body{
        padding:6px;
        gap:4px;
      }
      .shp-product-title{
        font-size:12px;
        min-height:auto;
      }
      .shp-product-meta{
        font-size:11px;
      }
      .shp-product-price{
        font-size:13px;
      }
      .shp-product-sold{
        font-size:11px;
        color:#555555;
        display:block;
      }
      .shp-product-footer{
        flex-direction:column;
        align-items:flex-start;
        gap:4px;
        font-size:10px;
      }
      .shp-product-footer span{
        font-size:10px;
      }
      .shp-product-btn,
      .shp-product-btn-add{
        width:100%;
        text-align:center;
        padding:6px 8px;
        font-size:11px;
      }
    }
    .post-outer,.date-outer{
      margin:0;
    }
    .post-outer{
      break-inside:avoid;
    }
    .shp-product-card{
      background:#ffffff;
      border-radius:10px;
      overflow:hidden;
      display:flex;
      flex-direction:column;
      height:100%;
      border:1px solid rgba(0,0,0,0.06);
      box-shadow:0 1px 4px rgba(0,0,0,0.04);
    }
    .shp-product-thumb{
      width:100%;
      aspect-ratio:1/1;
      background:#e3f2fd;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:12px;
      color:#607d8b;
    }
    .shp-product-thumb img{
      width:100%;
      height:100%;
      object-fit:cover;
      display:block;
    }
    .shp-product-body{
      padding:8px;
      display:flex;
      flex-direction:column;
      gap:6px;
      flex:1;
    }
    .shp-product-title{
      font-size:13px;
      font-weight:600;
      line-height:1.25;
      min-height:32px;
      overflow:hidden;
      display:-webkit-box;
      -webkit-line-clamp:2;
      -webkit-box-orient:vertical;
    }
    .shp-product-meta{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:6px;
      flex-wrap:wrap;
    }
    .shp-product-label{
      font-size:11px;
      padding:2px 6px;
      border-radius:999px;
      background:#e0e0e0;
      color:#424242;
    }
    .shp-product-price{
      font-size:14px;
      font-weight:800;
      color:#0d47a1;
    }
    .shp-product-footer{
      margin-top:6px;
      display:flex;
      justify-content:space-between;
      align-items:center;
      font-size:11px;
      color:#757575;
    }
    .shp-product-btn{
      padding:6px 10px;
      border-radius:999px;
      border:none;
      background:#1976d2;
      color:#ffffff;
      font-size:11px;
      cursor:pointer;
      font-weight:600;
    }
    .shp-product-btn-add{
      padding:6px 10px;
      border-radius:999px;
      border:none;
      background:#ff9800;
      color:#ffffff;
      font-size:11px;
      cursor:pointer;
      font-weight:600;
      margin-right:4px;
    }
    .shp-buy-now-btn{
      background:#27ae60;
    }
    .shp-footer{
      text-align:center;
      font-size:11px;
      color:#9e9e9e;
      margin:22px 0;
    }
    .shp-wa-btn{
      position:fixed;
      right:12px;
      bottom:16px;
      z-index:2000;
      background:#25d366;
      color:#ffffff;
      padding:8px 14px;
      border-radius:999px;
      box-shadow:0 4px 12px rgba(0,0,0,0.35);
      font-size:12px;
      font-weight:600;
      display:flex;
      align-items:center;
      gap:6px;
    }
    @media(max-width:480px){
      .shp-wa-btn{
        font-size:11px;
        padding:7px 10px;
      }
    }


        .shp-reseller-btn{
      position:fixed;
      right:12px;
      bottom:64px;
      z-index:2000;
      background:#1e88e5;
      color:#ffffff;
      padding:8px 14px;
      border:none;
      border-radius:999px;
      box-shadow:0 4px 12px rgba(0,0,0,0.30);
      font-size:12px;
      font-weight:600;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    @media(max-width:480px){
      .shp-reseller-btn{
        font-size:11px;
        padding:7px 10px;
        bottom:70px;
      }
    }


    .shp-admin-btn{
      position:fixed;
      right:12px;
      bottom:112px;
      z-index:2000;
      background:#e53935;
      color:#ffffff;
      padding:8px 14px;
      border:none;
      border-radius:999px;
      box-shadow:0 4px 12px rgba(0,0,0,0.30);
      font-size:12px;
      font-weight:800;
      cursor:pointer;
      display:none;
      align-items:center;
      justify-content:center;
      letter-spacing:0.2px;
      text-transform:uppercase;
    }
    @media(max-width:480px){
      .shp-admin-btn{
        font-size:11px;
        padding:7px 10px;
        bottom:118px;
      }
    }

    .stockout-overlay{
      position:fixed;
      inset:0;
      background:rgba(0,0,0,0.55);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:9999;
    }
    .stockout-box{
      width:90%;
      max-width:360px;
      background:#ffffff;
      border-radius:16px;
      padding:18px 16px;
      text-align:center;
      box-shadow:0 18px 45px rgba(0,0,0,0.35);
      animation:fadeInUp 0.25s ease-out;
    }
    .stockout-title{
      font-size:16px;
      font-weight:800;
      margin:0 0 8px 0;
      color:#e53935;
    }
    .stockout-text{
      margin:0 0 14px 0;
      font-size:13px;
      line-height:1.5;
      color:#333;
    }
    .stockout-ok{
      border:none;
      border-radius:999px;
      padding:8px 14px;
      font-size:12px;
      font-weight:800;
      background:#e53935;
      color:#fff;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      justify-content:center;
    }
    .stockout-ok:active{transform:scale(0.98);}

.shp-cart{
      position:relative;
      display:flex;
      align-items:center;
      justify-content:center;
      width:40px;
      height:40px;
      border-radius:50%;
      background:rgba(255,255,255,0.2);
      cursor:pointer;
    }
    .shp-cart-count{
      position:absolute;
      top:0;
      right:0;
      min-width:16px;
      min-height:16px;
      padding:0 4px;
      border-radius:999px;
      background:#e53935;
      color:#ffffff;
      font-size:10px;
      font-weight:700;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    
    .reseller-modal{
      position:fixed;
      top:0;
      left:0;
      right:0;
      bottom:0;
      display:none;
      align-items:center;
      justify-content:center;
      z-index:2600;
      background:rgba(0,0,0,0.4);
    }
    .reseller-modal-inner{
      width:90%;
      max-width:400px;
      background:#ffffff;
      border-radius:14px;
      padding:14px;
      box-shadow:0 4px 20px rgba(0,0,0,0.25);
      font-size:13px;
    }
    .reseller-modal-body{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap:10px;
      margin-bottom:8px;
      text-align:center;
    }
    .reseller-modal-image{
      max-width:100%;
      border-radius:12px;
      display:block;
    }
    .reseller-modal-text{
      margin:0 0 8px 0;
      font-size:13px;
      line-height:1.4;
    }
    .reseller-modal-check{
      display:flex;
      align-items:center;
      gap:6px;
      font-size:12px;
      margin-bottom:10px;
    }
    .reseller-modal-check input{
      margin:0;
    }
    .reseller-modal-actions{
      display:flex;
      justify-content:flex-end;
      gap:8px;
    }
    

    .reseller-proof{margin-top:12px;padding:10px;border:1px solid #e5e7eb;border-radius:12px;background:#f9fafb;}
    .reseller-proof-title{font-weight:800;margin-bottom:8px;color:#111827;}
    #reseller-proof-file{display:block;width:100%;margin-bottom:8px;}
    .reseller-proof-btn{width:100%;border:none;border-radius:10px;padding:10px 12px;font-weight:900;cursor:pointer;background:#111827;color:#fff;}
    .reseller-proof-status{margin-top:8px;font-size:12px;color:#374151;}
.reseller-modal-btn{
      border:none;
      border-radius:999px;
      padding:6px 12px;
      font-size:12px;
      cursor:pointer;
    }
    .reseller-modal-cancel{
      background:#eeeeee;
      color:#333333;
    }
    .reseller-modal-ok{
      background:#1976d2;
      color:#ffffff;
      font-weight:600;
    }


    .reseller-history-overlay{
      position:fixed;
      top:0;
      left:0;
      right:0;
      bottom:0;
      display:none;
      align-items:center;
      justify-content:center;
      z-index:2700;
      background:rgba(0,0,0,0.4);
    }
    .reseller-history-panel{
      width:92%;
      max-width:480px;
      max-height:80vh;
      background:#ffffff;
      border-radius:14px;
      padding:14px;
      box-shadow:0 4px 20px rgba(0,0,0,0.25);
      display:flex;
      flex-direction:column;
      font-size:13px;
    }
    .reseller-history-header{
      display:flex;
      align-items:center;
      justify-content:space-between;
      font-weight:600;
      margin-bottom:8px;
      font-size:14px;
    }
    .reseller-history-close{
      border:none;
      border-radius:999px;
      padding:4px 10px;
      font-size:12px;
      cursor:pointer;
      background:#eeeeee;
      color:#333333;
    }
    .reseller-history-list{
      flex:1;
      overflow:auto;
      border-radius:8px;
      border:1px solid #e0e0e0;
      padding:8px;
      font-size:12px;
      white-space:pre-wrap;
    }
    .reseller-history-item{
      border-bottom:1px solid #e0e0e0;
      padding:6px 0;
    }
    .reseller-history-item:last-child{
      border-bottom:none;
    }

    /* ===== Upload SS (Reseller History) ===== */
    .rh-item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
    .rh-item-title{font-weight:700;color:#111827;}
    .rh-item-meta{margin-top:2px;line-height:1.35;color:#374151;}
    .rh-ss-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:6px;}
    .rh-ss-btn{border:none;border-radius:10px;padding:7px 10px;font-size:12px;cursor:pointer;background:#1976d2;color:#ffffff;font-weight:700;}
    .rh-ss-btn:disabled{opacity:0.6;cursor:not-allowed;}
    .rh-ss-done{display:inline-block;background:#e8f5e9;color:#1b5e20;border:1px solid #c8e6c9;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;}

    .uploadss-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:2800;background:rgba(0,0,0,0.45);}
    .uploadss-panel{width:92%;max-width:420px;background:#ffffff;border-radius:14px;padding:14px;box-shadow:0 4px 22px rgba(0,0,0,0.28);}
    .uploadss-header{display:flex;align-items:center;justify-content:space-between;font-weight:800;margin-bottom:10px;}
    .uploadss-close{border:none;border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer;background:#eeeeee;color:#333333;}
    .uploadss-label{display:block;font-size:12px;font-weight:700;color:#111827;margin:10px 0 6px;}
    .uploadss-input{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:12px;outline:none;font-size:13px;}
    .uploadss-file{display:block;width:100%;}
    .uploadss-actions{display:flex;gap:10px;margin-top:12px;}
    .uploadss-btn{flex:1;border:none;border-radius:12px;padding:10px 12px;font-weight:900;cursor:pointer;}
    .uploadss-btn-cancel{background:#eeeeee;color:#333333;}
    .uploadss-btn-submit{background:#111827;color:#ffffff;}
    .uploadss-status{margin-top:10px;font-size:12px;color:#374151;white-space:pre-wrap;}
.cart-overlay{
      position:fixed;
      inset:0;
      display:none;
      align-items:flex-end;
      justify-content:center;
      z-index:2500;
      background:rgba(0,0,0,0.35);
    }
    .cart-panel{
      width:100%;
      max-width:420px;
      background:#ffffff;
      border-radius:18px 18px 0 0;
      padding:14px 14px 10px;
      box-shadow:0 -4px 18px rgba(0,0,0,0.25);
    }
    .cart-header{
      font-size:15px;
      font-weight:700;
      margin-bottom:8px;
      color:#0d47a1;
      text-align:center;
    }
    .cart-items-empty{
      font-size:12px;
      color:#757575;
      padding:12px 4px;
      text-align:center;
    }
    .cart-items-list{
      max-height:260px;
      overflow:auto;
      margin-bottom:6px;
    }
    .cart-item-row{
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap:6px;
      padding:6px 0;
      border-bottom:1px solid rgba(0,0,0,0.06);
      font-size:12px;
    }
    .cart-item-main{
      display:flex;
      flex-direction:column;
      gap:2px;
    }
    .cart-item-title{
      font-weight:600;
    }
    .cart-item-meta{
      font-size:11px;
      color:#616161;
    }
    .cart-item-qty{
      display:flex;
      flex-direction:column;
      align-items:flex-end;
      gap:4px;
      min-width:90px;
    }
    .cart-item-qty-controls{
      display:flex;
      align-items:center;
      gap:4px;
    }
    .cart-qty-btn{
      width:22px;
      height:22px;
      border-radius:999px;
      border:1px solid #bdbdbd;
      background:#ffffff;
      font-size:14px;
      line-height:1;
      display:flex;
      align-items:center;
      justify-content:center;
      padding:0;
      cursor:pointer;
    }
    .cart-qty-val{
      min-width:20px;
      text-align:center;
      font-size:12px;
    }
    .cart-item-qty-price{
      font-size:11px;
      color:#424242;
    }
    .reseller-order-box{
      margin-top:6px;
      padding:8px;
      border-radius:10px;
      background:#f5f5f5;
    }
    .reseller-order-title{
      font-size:12px;
      font-weight:600;
      margin-bottom:4px;
    }
    .reseller-order-text{
      width:100%;
      min-height:120px;
      resize:vertical;
      font-size:11px;
      font-family:monospace;
      border-radius:6px;
      border:1px solid #e0e0e0;
      padding:6px;
      box-sizing:border-box;
      background:#ffffff;
    }
    .reseller-order-copy{
      margin-top:6px;
      width:100%;
      border:none;
      border-radius:999px;
      padding:6px 10px;
      font-size:11px;
      font-weight:600;
      cursor:pointer;
      background:#1976d2;
      color:#ffffff;
    }
    .cart-footer{
      margin-top:6px;
      border-top:1px solid rgba(0,0,0,0.08);
      padding-top:8px;
      display:flex;
      flex-direction:column;
      gap:6px;
    }
    .cart-total{
      display:flex;
      justify-content:space-between;
      font-size:13px;
      font-weight:600;
    }
    .cart-checkout,
    .cart-clear,
    .cart-close{
      width:100%;
      border:none;
      border-radius:999px;
      padding:8px 10px;
      font-size:12px;
      font-weight:600;
      cursor:pointer;
    }
    .cart-checkout{
      background:#25d366;
      color:#ffffff;
    }
    .cart-clear{
      background:#eeeeee;
      color:#424242;
    }
    .cart-close{
      background:#ffffff;
      color:#757575;
      border:1px solid #e0e0e0;
    }
  
    .pd-wrapper{
      max-width:800px;
      margin:16px auto 40px;
      padding:0 10px;
    }
    .pd-article{
      background:#ffffff;
      border-radius:16px;
      padding:14px;
      box-shadow:0 2px 10px rgba(0,0,0,0.06);
    }
    .pd-header{
      margin-bottom:10px;
    }
    .pd-title{
      font-size:18px;
      font-weight:700;
      margin:0 0 6px;
      color:#0d47a1;
    }
    .pd-label-row{
      display:flex;
      gap:6px;
      align-items:center;
      font-size:11px;
      color:#616161;
    }
    .pd-label{
      padding:2px 8px;
      border-radius:999px;
      background:rgba(25,118,210,0.08);
      color:#0d47a1;
    }
    .pd-main{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      align-items:flex-start;
      margin-bottom:12px;
    }
    .pd-image{
      flex:0 0 160px;
      max-width:160px;
      border-radius:12px;
      overflow:hidden;
      background:#f5f5f5;
    }
    .pd-image img{
      width:100%;
      display:block;
    }
    .pd-image-placeholder{
      width:100%;
      padding:40px 8px;
      text-align:center;
      font-size:12px;
      color:#757575;
    }
    .pd-side{
      flex:1;
      min-width:0;
      display:flex;
      flex-direction:column;
      gap:8px;
    }
    .pd-price-row,
    .pd-stock-row{
      display:flex;
      justify-content:space-between;
      font-size:13px;
    }
    .pd-price-label,
    .pd-stock-label{
      color:#616161;
    }
    .pd-actions{
      margin-top:6px;
      display:flex;
      flex-wrap:wrap;
      gap:6px;
    }
    .pd-body{
      font-size:13px;
      line-height:1.6;
      color:#333333;
      margin-top:8px;
    }
    .pd-body img{
      display:none;
    }
    
    .pd-back{
      display:inline-flex;
      align-items:center;
      gap:6px;
      font-size:12px;
      color:#1976d2;
      text-decoration:none;
      margin-bottom:8px;
    }
    .pd-back-icon{
      font-size:14px;
    }
@media(max-width:600px){
      .pd-main{
        flex-direction:column;
      }
      .pd-image{
        flex:0 0 auto;
        max-width:100%;
      }
    }

/* Admin forms (Order + Product) */
#admin-panel-overlay .admin-form-row{margin:10px 0;}
#admin-panel-overlay .admin-form-row label{display:block;margin:0 0 4px 0;font-size:13px;font-weight:600;color:#2b2b2b;}
#admin-panel-overlay .admin-form-input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #d6d9dd;border-radius:10px;font-size:14px;outline:none;}
#admin-panel-overlay .admin-form-input:focus{border-color:#1976d2;box-shadow:0 0 0 3px rgba(25,118,210,.15);}
#admin-panel-overlay .admin-form-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
#admin-panel-overlay .admin-form-submit{margin-top:12px;padding:10px 14px;border:0;border-radius:12px;background:#1e88e5;color:#fff;font-weight:700;cursor:pointer;}
#admin-panel-overlay .admin-form-submit:hover{filter:brightness(.95);} 

#admin-panel-overlay .admin-product-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:8px;}
#admin-panel-overlay .admin-product-label{display:block;margin:0 0 4px 0;font-size:13px;font-weight:600;color:#2b2b2b;}
#admin-panel-overlay .admin-product-input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #d6d9dd;border-radius:10px;font-size:14px;outline:none;}
#admin-panel-overlay .admin-product-input:focus{border-color:#1976d2;box-shadow:0 0 0 3px rgba(25,118,210,.15);}
#admin-panel-overlay .admin-product-grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;}
#admin-panel-overlay .admin-product-submit{margin-top:10px;padding:10px 14px;border:0;border-radius:12px;background:#1e88e5;color:#fff;font-weight:700;cursor:pointer;}
#admin-panel-overlay .admin-product-submit:hover{filter:brightness(.95);} 

@media (max-width:480px){
  #admin-panel-overlay .admin-form-grid2,
  #admin-panel-overlay .admin-product-grid2{grid-template-columns:1fr;}
}


/* Claim Garansi */
.claim-toolbar-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex:0 0 auto;}
.claim-btn{border:none;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;cursor:pointer;background:#ffb300;color:#ffffff;white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,0.12);}
.claim-btn:active{transform:scale(0.98);}
@media(max-width:768px){.claim-btn{padding:6px 10px;font-size:12px;}}

.claim-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);display:none;align-items:center;justify-content:center;z-index:9999;}
.claim-box{width:92%;max-width:420px;background:#ffffff;border-radius:16px;padding:14px;box-shadow:0 10px 30px rgba(0,0,0,0.25);}
.claim-title{font-size:16px;font-weight:900;color:#1976d2;margin:0 0 6px 0;text-align:center;}
.claim-sub{font-size:12px;color:#555;line-height:1.4;margin:0 0 12px 0;text-align:center;}
.claim-label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#2b2b2b;margin-bottom:10px;}
.claim-note{font-size:11px;font-weight:600;color:#6b7280;margin-top:-2px;}
.claim-input,.claim-textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #d6d9dd;border-radius:12px;font-size:14px;outline:none;}
.claim-input:focus,.claim-textarea:focus{border-color:#1976d2;box-shadow:0 0 0 3px rgba(25,118,210,0.15);}
.claim-textarea{min-height:110px;resize:vertical;}
.claim-actions{display:flex;gap:8px;}
.claim-save{flex:1;border:0;border-radius:12px;padding:10px 12px;background:#1e88e5;color:#fff;font-weight:900;cursor:pointer;}
.claim-cancel{border:1px solid #e0e0e0;border-radius:12px;padding:10px 12px;background:#ffffff;color:#333;font-weight:800;cursor:pointer;}
.claim-status{margin-top:10px;min-height:16px;font-size:12px;color:#0d47a1;text-align:center;}
