:root{
  --sm-primary:#5b2ee8;
  --sm-primary-dark:#3d1aa8;
  --sm-secondary:#00b8a9;
  --sm-accent:#ff6b6b;
  --sm-warn:#ffb020;
  --sm-bg:#f4f2ff;
  --sm-card:#ffffff;
  --sm-text:#1f1533;
  --sm-text-light:#ffffff;
  --sm-border:#e3ddff;
}

*{box-sizing:border-box;}

.sm-login-wrap{
  max-width:400px;margin:60px auto;padding:36px 30px;border-radius:16px;
  font-family:'Segoe UI',sans-serif;
  background:linear-gradient(145deg,var(--sm-primary),var(--sm-secondary));
  box-shadow:0 12px 30px rgba(91,46,232,.35);
  text-align:center;
}
.sm-login-logo{margin-bottom:14px;}
.sm-login-logo img{max-width:90px;max-height:90px;border-radius:50%;border:4px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.2);object-fit:cover;background:#fff;}
.sm-login-logo-fallback{
  display:inline-flex;align-items:center;justify-content:center;
  width:80px;height:80px;border-radius:50%;font-size:38px;
  background:linear-gradient(145deg,var(--sm-accent),var(--sm-warn));
  border:4px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.2);
}
.sm-login-sub{color:#e8e3ff;font-size:13px;margin-top:-8px;margin-bottom:18px;font-weight:600;}
.sm-login-form h2{color:#fff;text-align:center;margin-bottom:20px;}
.sm-login-form label{display:block;margin-bottom:5px;font-weight:700;color:#fff;}
.sm-login-form input{
  width:100%;padding:11px;margin-bottom:16px;border:none;border-radius:8px;
  background:#fff;color:var(--sm-text);font-size:14px;
}
.sm-login-form input::placeholder{color:#8a80b0;}
.sm-login-form button{
  width:100%;background:var(--sm-accent);color:#fff;padding:12px;border:none;
  border-radius:8px;cursor:pointer;font-weight:700;font-size:15px;
  transition:.2s;
}
.sm-login-form button:hover{background:#e6473f;}
.sm-error{background:#fff0f0;color:#c0182a;padding:10px;border-radius:6px;font-weight:600;}

.sm-app{font-family:'Segoe UI',sans-serif;max-width:1150px;margin:20px auto;color:var(--sm-text);background:var(--sm-bg);border-radius:14px;overflow:hidden;box-shadow:0 6px 24px rgba(91,46,232,.12);}

.sm-topbar{
  display:flex;justify-content:space-between;align-items:center;
  background:linear-gradient(120deg,var(--sm-primary),var(--sm-primary-dark));
  color:#fff;padding:16px 24px;
}
.sm-brand{font-size:19px;font-weight:800;color:#fff;}
.sm-topbar-left{display:flex;align-items:center;gap:14px;}
.sm-topbar-actions{display:flex;gap:10px;align-items:center;}
.sm-topbar-btn{background:#fff;padding:8px 16px;font-size:13px;}
.sm-logout{color:#fff;text-decoration:none;background:var(--sm-accent);padding:8px 16px;border-radius:20px;font-weight:700;font-size:13px;}

.sm-back-btn{
  display:inline-block;color:#fff;background:rgba(255,255,255,.18);
  text-decoration:none;padding:7px 14px;border-radius:20px;font-weight:700;font-size:13px;
  border:2px solid rgba(255,255,255,.5);transition:.2s;
}
.sm-back-btn:hover{background:rgba(255,255,255,.32);color:#fff;}
.sm-back-btn-login{
  color:#fff;border-color:rgba(255,255,255,.6);margin-bottom:14px;
  background:rgba(255,255,255,.15);
}
.sm-back-btn-admin{
  color:var(--sm-primary-dark);background:#efe9ff;border:2px solid var(--sm-primary);
  margin-bottom:14px;
}
.sm-back-btn-modal{margin-bottom:14px;}
.sm-logout:hover{background:#e6473f;}

.sm-tabs{display:flex;background:#ece7ff;padding:6px;gap:6px;}
.sm-tab-btn{
  padding:12px 22px;border:2px solid transparent;background:#fff;cursor:pointer;font-size:14px;
  font-weight:700;color:var(--sm-primary-dark);border-radius:9px;transition:.2s;
}
.sm-tab-btn:hover{background:#dcd3ff;}
.sm-tab-btn.active{background:var(--sm-primary);color:#fff;border-color:var(--sm-primary-dark);box-shadow:0 4px 10px rgba(91,46,232,.35);}

.sm-tab-content{display:none;padding:22px;background:var(--sm-bg);}
.sm-tab-content.active{display:block;}

.sm-toolbar{display:flex;justify-content:space-between;margin-bottom:16px;gap:10px;flex-wrap:wrap;}
.sm-toolbar input,.sm-toolbar select{
  padding:10px;border:2px solid var(--sm-border);border-radius:8px;flex:1;max-width:280px;
  background:#fff;color:var(--sm-text);
}

/* ---- Card-style two-line rows (instead of cramped tables) ---- */
.sm-card-list{display:flex;flex-direction:column;gap:12px;}
.sm-item-card{
  background:var(--sm-card);border-radius:12px;border-left:6px solid var(--sm-secondary);
  padding:14px 16px;box-shadow:0 2px 8px rgba(91,46,232,.08);
}
.sm-item-card.status-draft,.sm-item-card.status-cancelled,.sm-item-card.status-refunded{border-left-color:var(--sm-accent);}
.sm-item-card.status-pending,.sm-item-card.status-on-hold{border-left-color:var(--sm-warn);}
.sm-item-card.status-completed,.sm-item-card.status-publish{border-left-color:var(--sm-secondary);}

.sm-row1,.sm-row2{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.sm-row1{margin-bottom:8px;}
.sm-row2{border-top:1px dashed var(--sm-border);padding-top:10px;justify-content:space-between;}

.sm-item-thumb{width:46px;height:46px;object-fit:cover;border-radius:8px;background:#eee;flex-shrink:0;}
.sm-item-title{font-weight:800;font-size:15px;color:var(--sm-text);flex:1;min-width:120px;}
.sm-item-sub{font-size:13px;color:#665b8a;}

.sm-badge{
  display:inline-block;padding:4px 11px;border-radius:20px;font-size:12px;font-weight:700;
  color:#fff;
}
.sm-badge-simple{background:var(--sm-secondary);}
.sm-badge-digital{background:var(--sm-primary);}
.sm-badge-variable{background:var(--sm-accent);}
.sm-badge-publish{background:var(--sm-secondary);}
.sm-badge-draft{background:#9b93bd;}
.sm-badge-serial{background:var(--sm-warn);color:#3a2500;}

.sm-order-items{border-top:1px dashed var(--sm-border);padding-top:10px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px;}
.sm-order-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#f6f3ff;border-radius:8px;padding:6px 10px;}

.sm-price{font-weight:800;color:var(--sm-primary-dark);font-size:15px;}
.sm-stock{font-size:13px;font-weight:700;color:var(--sm-secondary);}
.sm-stock.low{color:var(--sm-accent);}

.sm-order-status{padding:8px 10px;border-radius:8px;border:2px solid var(--sm-border);font-weight:700;background:#fff;color:var(--sm-text);}

.sm-actions{display:flex;gap:8px;}

.sm-btn-primary{background:var(--sm-primary);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:700;transition:.2s;}
.sm-btn-primary:hover{background:var(--sm-primary-dark);}
.sm-btn-secondary{background:#fff;color:var(--sm-primary-dark);border:2px solid var(--sm-primary);padding:9px 16px;border-radius:8px;cursor:pointer;font-weight:700;}
.sm-btn-secondary:hover{background:#efe9ff;}
.sm-btn-danger{background:var(--sm-accent);color:#fff;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-weight:700;}
.sm-btn-danger:hover{background:#e6473f;}
.sm-btn-small{padding:7px 14px;font-size:13px;border-radius:7px;border:2px solid var(--sm-primary);background:#fff;color:var(--sm-primary-dark);cursor:pointer;font-weight:700;}
.sm-btn-small:hover{background:var(--sm-primary);color:#fff;}

.sm-form{background:var(--sm-card);padding:20px;border-radius:12px;box-shadow:0 2px 8px rgba(91,46,232,.08);}
.sm-form h3{color:var(--sm-primary-dark);border-bottom:2px solid var(--sm-border);padding-bottom:8px;margin-top:0;}
.sm-form label{display:block;font-weight:700;margin-bottom:5px;margin-top:14px;color:var(--sm-text);}
.sm-form input,.sm-form select,.sm-form textarea{
  width:100%;padding:10px;border:2px solid var(--sm-border);border-radius:8px;
  background:#fdfcff;color:var(--sm-text);
}
.sm-form input:focus,.sm-form select:focus,.sm-form textarea:focus{outline:none;border-color:var(--sm-primary);}
.sm-form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.sm-form-row p{margin:0;}
.sm-form-row .sm-span2{grid-column:span 2;}
@media (max-width:700px){.sm-form-row{grid-template-columns:1fr;}}

/* ---- WP-Admin Settings Page (colorful accents) ---- */
.sm-admin-wrap h1{color:var(--sm-primary-dark);}
.sm-admin-wrap .title{
  color:#fff;background:linear-gradient(120deg,var(--sm-primary),var(--sm-secondary));
  padding:10px 16px;border-radius:8px;display:inline-block;margin-top:24px;
}
.sm-admin-form .form-table{background:var(--sm-card);border-radius:10px;padding:6px 12px;box-shadow:0 2px 8px rgba(91,46,232,.08);}
.sm-admin-form .form-table th{color:var(--sm-primary-dark);}
.sm-admin-form input[type=text],.sm-admin-form input[type=email],.sm-admin-form input[type=password],.sm-admin-form textarea{
  border:2px solid var(--sm-border) !important;border-radius:8px !important;
}
.sm-admin-form input[type=text]:focus,.sm-admin-form input[type=email]:focus,.sm-admin-form input[type=password]:focus,.sm-admin-form textarea:focus{
  border-color:var(--sm-primary) !important;box-shadow:0 0 0 1px var(--sm-primary) !important;
}
.sm-admin-form .button-primary{
  background:var(--sm-primary) !important;border-color:var(--sm-primary-dark) !important;
  border-radius:8px !important;font-weight:700 !important;
}
.sm-admin-form .button-primary:hover{background:var(--sm-primary-dark) !important;}

.sm-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(31,21,51,.6);z-index:9999;}
.sm-modal.open{display:flex;align-items:flex-start;justify-content:center;}
.sm-modal-box{background:var(--sm-card);padding:26px;border-radius:14px;max-width:600px;width:92%;margin-top:40px;max-height:85vh;overflow-y:auto;position:relative;color:var(--sm-text);}
.sm-modal-box h3{color:var(--sm-primary-dark);}
.sm-modal-close{position:absolute;right:18px;top:14px;font-size:24px;cursor:pointer;color:var(--sm-accent);font-weight:800;}

.sm-invoice{font-family:sans-serif;color:#000;background:#fff;padding:10px;}
.sm-invoice table th,.sm-invoice table td{padding:6px;color:#000;}

.sm-variation-row{display:flex;gap:8px;margin-bottom:8px;align-items:center;background:#f6f3ff;padding:8px;border-radius:8px;}
.sm-variation-row span{min-width:90px;font-weight:700;color:var(--sm-primary-dark);}
.sm-variation-row input{width:100px;padding:6px;border:2px solid var(--sm-border);border-radius:6px;}

.sm-empty{padding:20px;text-align:center;color:#8a80b0;font-weight:600;background:#fff;border-radius:10px;}

.sm-qr-preview{max-width:160px;display:block;margin-bottom:10px;border:4px solid var(--sm-secondary);border-radius:10px;padding:6px;background:#fff;}

@media print {
  body *{visibility:hidden;}
  #sm-invoice-content,#sm-invoice-content *{visibility:visible;color:#000 !important;background:#fff !important;}
  #sm-invoice-content{
    position:absolute;top:0;left:0;width:100%;
    height:auto !important;max-height:none !important;overflow:visible !important;
  }
  .sm-modal,.sm-modal-box{
    position:static !important;height:auto !important;max-height:none !important;
    overflow:visible !important;width:100% !important;margin:0 !important;
    padding:0 !important;background:none !important;box-shadow:none !important;
  }
  .sm-modal-close,#sm-print-invoice{display:none !important;}
  @page{margin:12mm;}
}

/* ---- Customer-facing checkout QR box ---- */
.sm-checkout-qr-box{
  margin:18px 0;padding:18px;border-radius:12px;text-align:center;
  background:linear-gradient(145deg,#eafff9,#f4f2ff);
  border:2px dashed var(--sm-secondary);
}
.sm-checkout-qr-box h3{color:var(--sm-primary-dark);margin-top:0;}
.sm-checkout-qr-box img{max-width:200px;border-radius:10px;border:4px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.15);}
.sm-checkout-qr-box p{color:#4a4266;font-weight:600;}
