/* =========================================================
   GP SLCD QUOTE - FULL CSS (A to Z)
   - Promo UI fixed
   - Partitions UI fixed (JS classnames compatible)
   - Bottom process bar ALWAYS fixed (no missing text)
   - Responsive everywhere
   - No hover/transform effects
========================================================= */

/* ---------- Tokens ---------- */
:root{
  --slcd-purple:#41009f;
  --slcd-purple2:#6a11cb;
  --slcd-pink:#ea006f;
  --slcd-bg:#fafbfc;
  --slcd-card:#ffffff;
  --slcd-border:#e8e8e8;
  --slcd-soft:#f8f5ff;
  --slcd-text:#333;
  --slcd-muted:#666;
  --slcd-shadow:0 4px 20px rgba(0,0,0,0.08);
  --slcd-radius:12px;
}

/* ---------- Scope reset (avoid theme conflicts) ---------- */
.slcd-quote-wrapper,
.slcd-quote-wrapper *{
  box-sizing:border-box;
}

/* ---------- Wrapper ---------- */
.slcd-quote-wrapper{
  max-width:1200px;
  margin:0 auto;
  padding:20px;
  font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  color:var(--slcd-text);
  line-height:1.6;
}

/* ---------- Main Panel ---------- */
.slcd-quote-panel{
  background:var(--slcd-card);
  border-radius:var(--slcd-radius);
  overflow:hidden;
  box-shadow:var(--slcd-shadow);
  margin-bottom:26px;
}

.slcd-main-card-header{
  background:linear-gradient(135deg,var(--slcd-purple) 0%, var(--slcd-purple2) 100%);
  color:#fff;
  padding:14px 18px;
  font-size:18px;
  font-weight:900;
  letter-spacing:.4px;
  display:flex;
  align-items:center;
  gap:10px;
}

.slcd-main-card-body{
  padding:26px 22px;
  background:var(--slcd-bg);
}

/* ---------- Section Title ---------- */
.slcd-quote-section-title{
  font-size:14px;
  color:var(--slcd-muted);
  margin-bottom:18px;
  text-transform:uppercase;
  letter-spacing:1px;
  font-weight:800;
  padding-bottom:10px;
  border-bottom:2px solid #f0f0f0;
  display:flex;
  align-items:center;
  gap:8px;
}

/* ---------- Summary Card ---------- */
.slcd-quote-summary-card{
  background:#fff;
  border-radius:var(--slcd-radius);
  padding:18px;
  border:1px solid var(--slcd-border);
  box-shadow:0 2px 15px rgba(0,0,0,0.05);
  margin-bottom:18px;
}
.slcd-quote-summary-inner{
  display:flex;
  gap:18px;
  align-items:flex-start;
}
.slcd-quote-summary-left{
  flex:0 0 240px;
}
.slcd-quote-product-frame{
  border:1px solid #e0e0e0;
  border-radius:12px;
  padding:14px;
  background:#fff;
  height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 3px 10px rgba(0,0,0,0.05);
}
.slcd-quote-product-img{
  max-width:100%;
  max-height:190px;
  object-fit:contain;
}

/* Optional title if you add from JS */
.slcd-quote-product-title{
  margin:0 0 10px 0;
  font-size:18px;
  font-weight:900;
  color:var(--slcd-purple);
}

/* ---------- Specs Table ---------- */
.slcd-quote-summary-right{ flex:1; min-width:0; }

.slcd-quote-spec-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
}
.slcd-quote-spec-table tr{ border-bottom:1px solid #f0f0f0; }
.slcd-quote-spec-table tr:last-child{ border-bottom:none; }

.slcd-quote-spec-label,
.slcd-spec-label{
  padding:12px 14px 12px 0;
  font-weight:800;
  color:#444;
  width:220px;
  vertical-align:top;
  font-size:14px;
}
.slcd-quote-spec-value,
.slcd-spec-value{
  padding:12px 0;
  color:#555;
  font-size:14px;
}

.slcd-quote-no-data{
  text-align:center;
  color:#888;
  padding:30px 12px;
  font-size:14px;
  font-style:italic;
}

/* ---------- Price Row ---------- */
.slcd-quote-price-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin:18px 0;
  padding:18px;
  background:#fff;
  border-radius:var(--slcd-radius);
  border:1px solid var(--slcd-border);
  box-shadow:0 2px 15px rgba(0,0,0,0.05);
}
.slcd-quote-price-left{
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.slcd-quote-qty-box{
  background:var(--slcd-soft);
  border:2px solid var(--slcd-purple);
  border-radius:14px;
  padding:12px 18px;
  text-align:center;
  min-width:110px;
}
.slcd-quote-qty-label{
  font-size:12px;
  color:#666;
  margin-bottom:6px;
  text-transform:uppercase;
  letter-spacing:1px;
  font-weight:900;
}
.slcd-quote-qty-value{
  font-size:30px;
  font-weight:900;
  color:var(--slcd-purple);
}

.slcd-quote-prices{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.slcd-price-line{
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
}
.slcd-price-amount{
  font-size:30px;
  font-weight:900;
  color:var(--slcd-pink);
}
.slcd-price-note{
  font-size:14px;
  color:#777;
  font-weight:700;
}

.slcd-quote-price-right{ flex:0 0 auto; }
.slcd-quote-leadtime-box{
  background:linear-gradient(135deg, var(--slcd-soft) 0%, #e6e1ff 100%);
  border:2px solid var(--slcd-purple);
  border-radius:14px;
  padding:14px 16px;
  color:var(--slcd-purple);
  font-size:14px;
  font-weight:900;
  text-align:center;
  min-width:240px;
}

/* ---------- Action Buttons ---------- */
.slcd-quote-actions-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
  justify-content:flex-start;
}
.slcd-quote-action-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  padding:12px 18px !important;
  background:#fff !important;
  border:2px solid var(--slcd-purple) !important;
  border-radius:14px !important;
  color:#444 !important;
  font-size:14px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  text-decoration:none !important;
  outline:none !important;
  min-width:160px !important;
  box-shadow:0 3px 10px rgba(0,0,0,0.08);
}
.slcd-quote-action-icon,
.slcd-quote-action-text{
  display:inline-flex;
  align-items:center;
}
.slcd-quote-action-icon i{ font-size:16px; }

/* Active state only (no hover) */
.slcd-quote-action-btn.active{
  background:linear-gradient(135deg,var(--slcd-purple) 0%, var(--slcd-purple2) 100%) !important;
  color:#fff !important;
  border-color:var(--slcd-purple) !important;
}

/* ---------- Promo Panel (FIXED UI) ---------- */
.slcd-quote-promo-panel{
  margin-top:18px;
  padding:18px;
  background:#fff;
  border-radius:var(--slcd-radius);
  border:2px dashed var(--slcd-purple);
  display:none;
}
.slcd-promo-inner{
  max-width:700px;
  margin:0 auto;
}
.slcd-promo-label{
  display:block;
  margin-bottom:12px;
  font-weight:900;
  color:var(--slcd-purple);
  font-size:16px;
  text-align:left;
}
.slcd-promo-row{
  display:flex;
  gap:12px;
  align-items:center;
}
.slcd-promo-input{
  flex:1;
  padding:12px 14px;
  border:2px solid #ddd;
  border-radius:14px;
  font-size:15px;
  outline:none;
  font-weight:800;
  background:#fafafa;
}
.slcd-promo-input:focus{
  border-color:var(--slcd-purple);
  background:#fff;
  box-shadow:0 0 0 3px rgba(65,0,159,0.10);
}
.slcd-promo-apply-btn{
  padding:12px 18px;
  background:linear-gradient(135deg,var(--slcd-purple) 0%, var(--slcd-purple2) 100%);
  color:#fff !important;
  border:none;
  border-radius:14px;
  cursor:pointer;
  font-weight:900;
  font-size:14px;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.slcd-promo-message{
  margin-top:12px;
  padding:10px 12px;
  border-radius:14px;
  font-size:14px;
  font-weight:900;
  display:none;
}
.slcd-promo-message.is-success{
  display:block;
  background:#e8f5e8;
  color:#2e7d32;
  border:1px solid #c8e6c9;
}
.slcd-promo-message.is-error{
  display:block;
  background:#ffebee;
  color:#c62828;
  border:1px solid #ffcdd2;
}

/* ---------- Extra Features ---------- */
.slcd-extra-section{
  background:#fff;
  border-radius:var(--slcd-radius);
  overflow:hidden;
  box-shadow:var(--slcd-shadow);
  margin-bottom:26px;
}
.slcd-extra-header{
  background:linear-gradient(135deg,var(--slcd-purple) 0%, var(--slcd-purple2) 100%);
  color:#fff;
  padding:14px 16px;
  font-size:16px;
  font-weight:900;
}
.slcd-extra-body{ padding:20px; }
.slcd-extra-table{ width:100%; border-collapse:separate; border-spacing:0; }
.slcd-extra-table tr{ border-bottom:1px solid #f0f0f0; }
.slcd-extra-table tr:last-child{ border-bottom:none; }
.slcd-extra-label{
  padding:14px 14px 14px 0;
  font-weight:900;
  color:var(--slcd-purple);
  width:220px;
  vertical-align:top;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.4px;
}
.slcd-extra-value{
  padding:14px 0;
  color:#555;
  line-height:1.7;
  font-size:14px;
  font-weight:650;
}
.slcd-extra-value a{
  color:var(--slcd-pink);
  text-decoration:none;
  font-weight:900;
}

/* =========================================================
   ✅ PARTITIONS SECTION (FULL FIX)
   Works with BOTH:
   - Old classes: .slcd-partitions-device...
   - JS classes: .slcd-storage-device-card...
========================================================= */
.slcd-partitions-section{
  background:#fff;
  border-radius:var(--slcd-radius);
  overflow:hidden;
  box-shadow:var(--slcd-shadow);
  margin-bottom:26px;
  display:none;
}
.slcd-partitions-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  background:var(--slcd-purple);
  padding:14px 16px;
}
.slcd-partitions-title{
  font-size:16px;
  font-weight:900;
  color:#fff;
  margin:0;
  display:flex;
  align-items:center;
  gap:10px;
}
.slcd-partitions-body{ padding:20px; }

.slcd-partitions-close-btn{
  padding:10px 14px !important;
  background:#fff !important;
  border:2px solid #ddd !important;
  border-radius:14px !important;
  color:#333 !important;
  font-weight:900 !important;
  cursor:pointer !important;
}

/* Instructions */
.slcd-partitions-instructions{
  background:var(--slcd-soft);
  border:2px solid #e0d0ff;
  border-radius:14px;
  padding:18px;
  margin-bottom:18px;
}
.slcd-partitions-instructions h3{
  margin:0 0 10px 0;
  color:var(--slcd-purple);
  font-size:16px;
  font-weight:900;
}
.slcd-partitions-instructions ul{ margin:0; padding-left:18px; }
.slcd-partitions-instructions li{
  margin-bottom:10px;
  color:#555;
  line-height:1.6;
  font-size:14px;
  font-weight:650;
}
.slcd-partitions-divider{
  height:2px;
  background:linear-gradient(to right, transparent, var(--slcd-purple), transparent);
  margin:18px 0;
  opacity:.22;
}

/* Devices container */
.slcd-storage-devices-container,
#slcd-storage-devices-container{
  display:flex;
  flex-direction:column;
  gap:16px;
}

/* Device Card (JS) */
.slcd-storage-device-card{
  background:#fff;
  border:2px solid var(--slcd-border);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 4px 15px rgba(0,0,0,0.05);
}

/* Header (JS) */
.slcd-storage-device-header{
  background:linear-gradient(135deg,var(--slcd-soft) 0%, #e6e1ff 100%);
  padding:16px;
  border-bottom:2px solid #e0d0ff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.slcd-storage-device-header h4{
  margin:0;
  font-size:16px;
  font-weight:900;
  color:var(--slcd-purple);
  display:flex;
  align-items:center;
  gap:8px;
}
.slcd-storage-device-size{
  font-size:12px;
  font-weight:900;
  color:var(--slcd-purple);
  background:rgba(65,0,159,0.10);
  border:1px solid rgba(65,0,159,0.16);
  padding:6px 10px;
  border-radius:999px;
  white-space:nowrap;
}

/* Body (JS) */
.slcd-storage-device-body{
  padding:16px;
}

/* Partition inputs */
.slcd-partition-inputs{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.slcd-partition-input-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:10px 0;
  border-bottom:1px solid #f1f1f1;
}
.slcd-partition-input-row:last-child{ border-bottom:none; }

.slcd-partition-input-row label{
  flex:1 1 auto;
  min-width:0;
  font-size:14px;
  font-weight:900;
  color:var(--slcd-purple);
  display:flex;
  align-items:center;
  gap:8px;
}
.slcd-partition-input{
  flex:0 0 auto;
  width:160px;
  max-width:50%;
  padding:10px 12px;
  border:2px solid #ddd;
  border-radius:14px;
  font-size:14px;
  font-weight:900;
  text-align:right;
  background:#fafafa;
  outline:none;
}
.slcd-partition-input:focus{
  border-color:var(--slcd-purple);
  background:#fff;
  box-shadow:0 0 0 3px rgba(65,0,159,0.10);
}

/* Total */
.slcd-partition-total{
  margin-top:14px;
  padding:12px 14px;
  border-radius:14px;
  background:var(--slcd-soft);
  border:2px solid #e0d0ff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.slcd-partition-total-label{
  font-weight:900;
  color:var(--slcd-purple);
}
.slcd-partition-total-value{
  font-weight:900;
  color:var(--slcd-pink);
}

/* Message */
.slcd-partition-message{
  margin-top:12px;
  padding:10px 12px;
  border-radius:14px;
  font-weight:900;
  font-size:13px;
  display:none;
}
.slcd-partition-message.error,
.slcd-partition-message.success,
.slcd-partition-message.warning{ display:block; }

.slcd-partition-message.success{
  background:#e8f5e8;
  color:#2e7d32;
  border:1px solid #c8e6c9;
}
.slcd-partition-message.error{
  background:#ffebee;
  color:#c62828;
  border:1px solid #ffcdd2;
}
.slcd-partition-message.warning{
  background:#fff3e0;
  color:#ef6c00;
  border:1px solid #ffe0b2;
}

/* =========================================================
   SAVE QUOTE SECTION
========================================================= */
.slcd-savequote-section{
  background:#fff;
  border-radius:var(--slcd-radius);
  overflow:hidden;
  box-shadow:var(--slcd-shadow);
  margin-bottom:26px;
  display:none;
}
.slcd-savequote-header{
  background:var(--slcd-purple);
  color:#fff;
  padding:14px 16px;
  font-size:16px;
  font-weight:900;
}
.slcd-savequote-body{
  padding:18px;
}
.slcd-savequote-form{
  max-width:760px;
  margin:0 auto 10px auto;
}
.slcd-savequote-input-group{
  display:flex;
  gap:12px;
  align-items:stretch;
}
.slcd-savequote-email{
  flex:1;
  padding:12px 14px !important;
  border:2px solid #ddd;
  border-radius:14px;
  font-size:14px;
  outline:none;
  font-weight:800;
  background:#fafafa;
}
.slcd-savequote-email:focus{
  border-color:var(--slcd-purple);
  background:#fff;
  box-shadow:0 0 0 3px rgba(65,0,159,0.10);
}
.slcd-savequote-btn{
  padding:12px 18px !important;
  background:var(--slcd-purple) !important;
  color:#fff !important;
  border:none !important;
  border-radius:14px !important;
  cursor:pointer !important;
  font-size:14px !important;
  font-weight:900 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  min-width:170px;
}
.slcd-savequote-btn:disabled{ opacity:.7; cursor:not-allowed; }

.slcd-savequote-message{
  margin-top:12px;
  padding:10px 12px;
  border-radius:14px;
  font-size:13px;
  font-weight:900;
  display:none;
}
.slcd-savequote-message.success,
.slcd-savequote-message.error{
  display:block;
}
.slcd-savequote-message.success{
  background:#e8f5e8;
  color:#2e7d32;
  border:1px solid #c8e6c9;
}
.slcd-savequote-message.error{
  background:#ffebee;
  color:#c62828;
  border:1px solid #ffcdd2;
}

.slcd-savequote-ready{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--slcd-purple);
  text-decoration:none;
  font-weight:900;
  font-size:15px;
  margin-top:8px;
}

/* =========================================================
   ✅ PROCESS BAR (ALWAYS FIXED BOTTOM)
   - Text never disappears
========================================================= */
#slcd-process-section.slcd-process-section{
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:100% !important;
  z-index:999999 !important;

  margin:0 !important;
  border-radius:0 !important;
  border-left:0 !important;
  border-right:0 !important;

  background:#fff !important;
  border-top:1px solid var(--slcd-border) !important;
  box-shadow:0 -10px 30px rgba(0,0,0,0.10) !important;
  padding:12px 14px !important;
}

.slcd-process-bar{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.slcd-process-bar-left{
  flex:1 1 auto;
  min-width:0;
}
.slcd-process-bar-title{
  font-size:16px;
  font-weight:900;
  color:var(--slcd-purple);
  display:flex;
  align-items:center;
  gap:10px;
  line-height:1.2;
}
.slcd-process-bar-sub{
  margin-top:4px;
  font-size:13px;
  color:#666;
  line-height:1.35;
}
.slcd-process-bar-note{
  margin-top:6px;
  font-size:12px;
  color:#666;
  line-height:1.35;
}
.slcd-process-bar-right{ flex:0 0 auto; }

/* Button + text ALWAYS visible */
#slcd-process-now-btn.slcd-process-btn{
  padding:12px 18px !important;
  background:var(--slcd-purple) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  cursor:pointer !important;
  font-size:13px !important;
  font-weight:900 !important;
  white-space:nowrap;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
}
#slcd-process-now-btn .slcd-process-text{
  display:inline-block !important;
  color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
}
#slcd-process-now-btn:disabled{
  opacity:.85 !important;
}
#slcd-process-now-btn:disabled .slcd-process-text{
  opacity:1 !important; /* ✅ text stays */
}

/* Body bottom spacing so content not hidden behind fixed bar */
body{
  padding-bottom:96px;
}

/* =========================================================
   MODAL OVERLAY
========================================================= */
.slcd-modal-overlay{
  position:fixed;
  top:0; left:0; right:0; bottom:0;
  background:rgba(0,0,0,0.7);
  z-index:10000;
  display:none;
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width:992px){
  .slcd-quote-summary-inner{ flex-direction:column; }
  .slcd-quote-summary-left{ width:100%; max-width:320px; }
  .slcd-quote-price-row{ flex-direction:column; align-items:stretch; }
  .slcd-quote-price-right{ width:100%; }
  .slcd-quote-leadtime-box{ width:100%; min-width:0; }
}

@media (max-width:768px){
  .slcd-quote-wrapper{ padding:14px; }

  .slcd-quote-actions-row{
    flex-wrap:nowrap;
    overflow-x:auto;
    justify-content:flex-start;
    -webkit-overflow-scrolling:touch;
    padding-bottom:6px;
  }
  .slcd-quote-action-btn{
    flex:0 0 auto !important;
    min-width:160px !important;
  }

  .slcd-promo-row{ flex-direction:column; align-items:stretch; }
  .slcd-promo-apply-btn{ width:100%; justify-content:center; }

  .slcd-savequote-input-group{ flex-direction:column; }
  .slcd-savequote-btn{ width:100%; }

  .slcd-process-bar{
    flex-direction:column;
    align-items:stretch;
    text-align:center;
  }
  .slcd-process-bar-title{ justify-content:center; }
  .slcd-process-bar-right{ width:100%; }
  #slcd-process-now-btn.slcd-process-btn{ width:100% !important; }
  .slcd-process-bar-note{ display:none; }

  body{ padding-bottom:140px; }
}

@media (max-width:576px){
  .slcd-main-card-body{ padding:18px 14px; }
  .slcd-extra-body{ padding:16px; }
  .slcd-partitions-body{ padding:16px; }
}

/* =========================================================
   NO HOVER / NO TRANSFORMS (as per request)
========================================================= */
.slcd-quote-wrapper *:hover{
  transform:none !important;
}
.slcd-quote-action-btn:hover,
.slcd-savequote-btn:hover,
.slcd-promo-apply-btn:hover,
#slcd-process-now-btn:hover{
  transform:none !important;
  box-shadow:inherit !important;
  filter:none !important;
}

/* Print */
@media print{
  #slcd-process-section,
  .slcd-quote-actions-row,
  .slcd-quote-promo-panel,
  #slcd-partitions-section,
  #slcd-savequote-section,
  .slcd-modal-overlay,
  button{
    display:none !important;
  }
  body{ padding-bottom:0 !important; }
  .slcd-quote-wrapper{ max-width:100%; padding:0; }
  .slcd-quote-panel,
  .slcd-extra-section{ box-shadow:none; border:1px solid #ddd; }
}
/* =========================================================
   ✅ PARTITIONS UI FIX (OVERRIDE)
   Paste at END of slcd-quote.css
========================================================= */

/* Show section clean */
#slcd-partitions-section.slcd-partitions-section{
  background:#fff !important;
  border-radius:12px !important;
  overflow:hidden !important;
  border:1px solid #e8e8e8 !important;
  box-shadow:0 6px 20px rgba(0,0,0,0.07) !important;
  margin:24px 0 !important;
}

/* Header fix (your old gap:50% breaks UI) */
#slcd-partitions-section .slcd-partitions-header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  background:#41009f !important;
  padding:14px 16px !important;
}

/* Title row clean */
#slcd-partitions-section .slcd-partitions-title{
  margin:0 !important;
  font-size:16px !important;
  font-weight:900 !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}

/* Close button */
#slcd-partitions-section #close-partition-btn,
#slcd-partitions-section .slcd-partitions-close-btn{
  padding:10px 14px !important;
  border-radius:12px !important;
  background:#fff !important;
  border:2px solid rgba(255,255,255,0.65) !important;
  color:#222 !important;
  font-weight:900 !important;
  cursor:pointer !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

/* Body padding */
#slcd-partitions-section .slcd-partitions-body{
  padding:18px !important;
}

/* Instructions block */
#slcd-partitions-section .slcd-partitions-instructions{
  background:#f8f5ff !important;
  border:2px solid #e0d0ff !important;
  border-radius:14px !important;
  padding:16px !important;
  margin-bottom:16px !important;
}
#slcd-partitions-section .slcd-partitions-instructions h3{
  margin:0 0 10px 0 !important;
  font-size:15px !important;
  font-weight:900 !important;
  color:#41009f !important;
}
#slcd-partitions-section .slcd-partitions-instructions ul{
  margin:0 !important;
  padding-left:18px !important;
}
#slcd-partitions-section .slcd-partitions-instructions li{
  margin:0 0 8px 0 !important;
  font-size:13.5px !important;
  color:#444 !important;
  font-weight:650 !important;
}

/* Devices container */
#slcd-storage-devices-container.slcd-storage-devices-container,
#slcd-storage-devices-container{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
}

/* ===== JS Generated Card ===== */
#slcd-storage-devices-container .slcd-storage-device-card{
  border:2px solid #ececec !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 4px 14px rgba(0,0,0,0.05) !important;
}

/* Header */
#slcd-storage-devices-container .slcd-storage-device-header{
  background:linear-gradient(135deg,#f8f5ff 0%, #e6e1ff 100%) !important;
  border-bottom:2px solid #e0d0ff !important;
  padding:14px 16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
}
#slcd-storage-devices-container .slcd-storage-device-header h4{
  margin:0 !important;
  font-size:15px !important;
  font-weight:900 !important;
  color:#41009f !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
}
#slcd-storage-devices-container .slcd-storage-device-size{
  font-size:12px !important;
  font-weight:900 !important;
  color:#41009f !important;
  background:rgba(65,0,159,0.12) !important;
  border:1px solid rgba(65,0,159,0.18) !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
}

/* Body */
#slcd-storage-devices-container .slcd-storage-device-body{
  padding:14px 16px !important;
}

/* Inputs wrapper */
#slcd-storage-devices-container .slcd-partition-inputs{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
}

/* Row layout: label + input properly aligned */
#slcd-storage-devices-container .slcd-partition-input-row{
  display:grid !important;
  grid-template-columns: 1fr 170px !important;
  align-items:center !important;
  gap:12px !important;
  padding:10px 0 !important;
  border-bottom:1px solid #f1f1f1 !important;
}
#slcd-storage-devices-container .slcd-partition-input-row:last-child{
  border-bottom:none !important;
}

/* Label */
#slcd-storage-devices-container .slcd-partition-input-row label{
  margin:0 !important;
  font-size:13.5px !important;
  font-weight:900 !important;
  color:#41009f !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
}

/* Input */
#slcd-storage-devices-container .slcd-partition-input{
  width:100% !important;
  padding:10px 12px !important;
  border:2px solid #ddd !important;
  border-radius:14px !important;
  font-size:13.5px !important;
  font-weight:900 !important;
  text-align:right !important;
  background:#fafafa !important;
  outline:none !important;
}
#slcd-storage-devices-container .slcd-partition-input:focus{
  border-color:#41009f !important;
  background:#fff !important;
  box-shadow:0 0 0 3px rgba(65,0,159,0.12) !important;
}

/* Remaining box */
#slcd-storage-devices-container .slcd-partition-total{
  margin-top:12px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:#f8f5ff !important;
  border:2px solid #e0d0ff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
}
#slcd-storage-devices-container .slcd-partition-total-label{
  font-weight:900 !important;
  color:#41009f !important;
  font-size:13px !important;
}
#slcd-storage-devices-container .slcd-partition-total-value{
  font-weight:900 !important;
  color:#ea006f !important;
  font-size:13px !important;
}

/* Message */
#slcd-storage-devices-container .slcd-partition-message{
  margin-top:10px !important;
  padding:10px 12px !important;
  border-radius:14px !important;
  font-weight:900 !important;
  font-size:12.5px !important;
  display:none !important;
}
#slcd-storage-devices-container .slcd-partition-message.error,
#slcd-storage-devices-container .slcd-partition-message.success,
#slcd-storage-devices-container .slcd-partition-message.warning{
  display:block !important;
}
#slcd-storage-devices-container .slcd-partition-message.success{
  background:#e8f5e8 !important;
  border:1px solid #c8e6c9 !important;
  color:#2e7d32 !important;
}
#slcd-storage-devices-container .slcd-partition-message.error{
  background:#ffebee !important;
  border:1px solid #ffcdd2 !important;
  color:#c62828 !important;
}
#slcd-storage-devices-container .slcd-partition-message.warning{
  background:#fff3e0 !important;
  border:1px solid #ffe0b2 !important;
  color:#ef6c00 !important;
}

/* ===== Responsive ===== */
@media (max-width:768px){
  #slcd-partitions-section .slcd-partitions-header{
    flex-wrap:wrap !important;
  }
  #slcd-storage-devices-container .slcd-partition-input-row{
    grid-template-columns: 1fr !important;
  }
  #slcd-storage-devices-container .slcd-partition-input{
    text-align:left !important;
  }
}

/* No hover effects */
#slcd-partitions-section *:hover{
  transform:none !important;
  box-shadow:inherit !important;
}
/* =========================================================
   ✅ PARTITION SECTION FINAL UI (NO HOVER)
========================================================= */

#slcd-partitions-section{ background:#fff !important; border:1px solid #eaeaea !important; border-radius:14px !important; overflow:hidden !important; }
#slcd-partitions-section .slcd-partitions-body{ padding:16px !important; }

/* Header */
#slcd-partitions-section .slcd-partitions-header{
  display:flex !important; justify-content:space-between !important; align-items:center !important;
  gap:12px !important; background:#41009f !important; padding:12px 14px !important;
}
#slcd-partitions-section .slcd-partitions-title{ margin:0 !important; color:#fff !important; font-weight:900 !important; font-size:16px !important; display:flex !important; gap:10px !important; align-items:center !important; }
#close-partition-btn{
  background:#fff !important; border:0 !important; padding:10px 12px !important; border-radius:12px !important;
  font-weight:900 !important; cursor:pointer !important; white-space:nowrap !important;
}

/* Cards */
#slcd-storage-devices-container{ display:flex !important; flex-direction:column !important; gap:14px !important; }

.slcd-storage-device-card{
  border:1px solid #eee !important; border-radius:14px !important; overflow:hidden !important;
  box-shadow:0 4px 14px rgba(0,0,0,0.05) !important;
}

/* Card header */
.slcd-storage-device-header{
  background:linear-gradient(135deg,#f8f5ff 0%, #e6e1ff 100%) !important;
  padding:12px 14px !important; display:flex !important; justify-content:space-between !important; align-items:center !important; gap:10px !important;
  border-bottom:1px solid #e8e1ff !important;
}
.slcd-storage-device-header h4{
  margin:0 !important; font-size:15px !important; font-weight:900 !important; color:#41009f !important;
  display:flex !important; gap:10px !important; align-items:center !important;
}
.slcd-storage-device-size{
  font-size:12px !important; font-weight:900 !important; color:#41009f !important;
  background:rgba(65,0,159,0.12) !important; border:1px solid rgba(65,0,159,0.2) !important;
  padding:6px 10px !important; border-radius:999px !important; white-space:nowrap !important;
}

/* Body */
.slcd-storage-device-body{ padding:14px !important; }

/* Rows */
.slcd-partition-input-row{
  display:grid !important;
  grid-template-columns: 140px 1fr !important;
  align-items:center !important;
  gap:12px !important;
  padding:10px 0 !important;
  border-bottom:1px solid #f2f2f2 !important;
}
.slcd-partition-input-row:last-child{ border-bottom:none !important; }

.slcd-partition-input-row label{
  margin:0 !important;
  font-size:14px !important;
  font-weight:900 !important;
  color:#222 !important;
}

/* Input + Unit inline */
.slcd-partition-input-wrap{
  display:flex !important; align-items:center !important; gap:10px !important;
}
.slcd-partition-input{
  flex:1 1 auto !important;
  padding:12px 14px !important;
  border:2px solid #ddd !important;
  border-radius:14px !important;
  font-size:14px !important;
  font-weight:900 !important;
  outline:none !important;
  background:#fafafa !important;
  text-align:right !important;
}
.slcd-partition-input:focus{
  border-color:#41009f !important;
  background:#fff !important;
  box-shadow:0 0 0 3px rgba(65,0,159,0.12) !important;
}
.slcd-partition-unit{
  font-weight:900 !important;
  color:#666 !important;
  min-width:28px !important;
  text-align:center !important;
}

/* Footer */
.slcd-partition-footer{
  margin-top:12px !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}
.slcd-partition-total{
  background:#f8f5ff !important; border:1px solid #e6e1ff !important;
  padding:10px 12px !important; border-radius:14px !important;
  display:flex !important; gap:10px !important; align-items:center !important;
}
.slcd-partition-total-label{ font-weight:900 !important; color:#41009f !important; }
.slcd-partition-total-value{ font-weight:900 !important; color:#ea006f !important; }

.slcd-partition-clear-btn{
  padding:10px 14px !important;
  border-radius:12px !important;
  border:2px solid #ea006f !important;
  background:#fff !important;
  color:#ea006f !important;
  font-weight:900 !important;
  cursor:pointer !important;
}

/* Message */
.slcd-partition-message{
  margin-top:10px !important;
  padding:10px 12px !important;
  border-radius:14px !important;
  font-weight:900 !important;
  font-size:13px !important;
  display:none !important;
}
.slcd-partition-message.success{ display:block !important; background:#e8f5e8 !important; border:1px solid #c8e6c9 !important; color:#2e7d32 !important; }
.slcd-partition-message.error{ display:block !important; background:#ffebee !important; border:1px solid #ffcdd2 !important; color:#c62828 !important; }
.slcd-partition-message.warning{ display:block !important; background:#fff3e0 !important; border:1px solid #ffe0b2 !important; color:#ef6c00 !important; }

/* Responsive */
@media (max-width:768px){
  .slcd-partition-input-row{ grid-template-columns: 1fr !important; }
  .slcd-partition-input{ text-align:left !important; }
}

/* ✅ NO HOVER ANYWHERE IN PARTITIONS */
#slcd-partitions-section *:hover{ transform:none !important; box-shadow:none !important; }
