:root{
  --st-blue:#1a73e8;
  --st-blue-dark:#1557b0;
  --st-green:#0f9d58;
  --st-ink:#1f2937;
  --st-muted:#5f6368;
  --st-line:#e5e7eb;
  --st-bg:#f3f6fb;
  --st-card:#fff;
  --st-warn:#b45309;
  --st-radius:14px;
  --st-shadow:0 8px 24px rgba(26,115,232,.08);
}
*{box-sizing:border-box}
body.ldz-store{
  margin:0;background:var(--st-bg);color:var(--st-ink);
  font-family:"Cairo","Tajawal",Tahoma,sans-serif;line-height:1.7
}
.st-wrap{width:min(1100px,92%);margin:0 auto}
.st-top{background:#fff;border-bottom:1px solid var(--st-line);position:sticky;top:0;z-index:40}
.st-top-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}
.st-logo{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--st-blue);font-weight:800;font-size:1.1rem}
.st-logo img{border-radius:6px}
.st-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.st-nav a{text-decoration:none;color:var(--st-muted);font-weight:700;font-size:.92rem;padding:8px 12px;border-radius:999px}
.st-nav a.on,.st-nav a:hover{background:#e8f0fe;color:var(--st-blue-dark)}
.st-login{background:var(--st-blue)!important;color:#fff!important}
.st-hero{
  margin:28px 0 18px;padding:28px 24px;border-radius:20px;color:#fff;
  background:linear-gradient(135deg,#0b3d73 0%,#1a73e8 55%,#34a853 120%);
  box-shadow:var(--st-shadow)
}
.st-hero h1{margin:0 0 8px;font-size:clamp(1.4rem,3vw,2rem);font-weight:800}
.st-hero p{margin:0;opacity:.95;max-width:50ch}
.st-notice{
  background:#fff8e8;border:1px solid #f6d98a;color:#7a4d00;
  border-radius:12px;padding:14px 16px;margin:16px 0;font-weight:600
}
.st-filters{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.st-filters input,.st-filters select,.st-input,textarea,select{
  width:100%;padding:11px 12px;border:1px solid var(--st-line);border-radius:10px;
  font:inherit;background:#fff
}
.st-filters form{display:flex;gap:8px;flex-wrap:wrap;width:100%}
.st-filters input{flex:1;min-width:180px}
.st-filters select{width:auto;min-width:140px}
.st-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  border:0;border-radius:10px;padding:11px 16px;font:inherit;font-weight:800;
  cursor:pointer;text-decoration:none;background:var(--st-blue);color:#fff
}
.st-btn:hover{background:var(--st-blue-dark)}
.st-btn.green{background:var(--st-green)}
.st-btn.ghost{background:#fff;color:var(--st-blue);border:1px solid #c5d8f7}
.st-btn.small{padding:8px 12px;font-size:.88rem}
.st-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:20px 0 40px}
.st-card{
  background:var(--st-card);border:1px solid var(--st-line);border-radius:var(--st-radius);
  overflow:hidden;box-shadow:var(--st-shadow);display:flex;flex-direction:column
}
.st-card .cover{aspect-ratio:16/10;background:#dbe7f8;object-fit:cover;width:100%;display:block}
.st-card .body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.st-card h3{margin:0;font-size:1.02rem;line-height:1.45}
.st-card h3 a{color:inherit;text-decoration:none}
.st-meta{display:flex;flex-wrap:wrap;gap:6px}
.st-chip{background:#eef4ff;color:#1e4f96;font-size:.75rem;font-weight:700;padding:4px 8px;border-radius:999px}
.st-price{font-size:1.15rem;font-weight:800;color:var(--st-green);margin-top:auto}
.st-product{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;margin:24px 0 40px}
.st-product .cover-lg{width:100%;border-radius:16px;border:1px solid var(--st-line);background:#dbe7f8;aspect-ratio:4/3;object-fit:cover}
.st-buy-box{background:#fff;border:1px solid var(--st-line);border-radius:16px;padding:18px;box-shadow:var(--st-shadow)}
.st-buy-box .price{font-size:1.8rem;font-weight:900;color:var(--st-green)}
.st-foot{margin-top:40px;padding:24px 0;border-top:1px solid var(--st-line);color:var(--st-muted);font-size:.9rem;text-align:center}
.st-foot a{color:var(--st-blue);text-decoration:none;font-weight:700}
.st-admin-nav{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}
.st-admin-nav a{background:#fff;border:1px solid var(--st-line);padding:8px 12px;border-radius:10px;text-decoration:none;color:var(--st-ink);font-weight:700;font-size:.9rem}
.st-admin-nav a.on{background:#e8f0fe;border-color:#a8c7fa;color:var(--st-blue-dark)}
.st-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}
.st-table th,.st-table td{padding:10px 12px;border-bottom:1px solid var(--st-line);text-align:right;font-size:.9rem;vertical-align:top}
.st-table th{background:#f8fafc;font-weight:800}
.st-alert{padding:12px 14px;border-radius:10px;margin:12px 0;font-weight:700}
.st-alert.ok{background:#e8f8ef;color:#0b6b38}
.st-alert.err{background:#fde8e8;color:#b42318}
.st-form{background:#fff;border:1px solid var(--st-line);border-radius:16px;padding:18px;display:grid;gap:12px}
.st-form label{font-weight:700;font-size:.9rem;display:grid;gap:6px}
.st-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.st-empty{padding:40px 16px;text-align:center;color:var(--st-muted);background:#fff;border:1px dashed var(--st-line);border-radius:14px}
@media (max-width:820px){
  .st-product,.st-form .row{grid-template-columns:1fr}
  .st-top-inner{flex-direction:column;align-items:flex-start}
}

/* ويدجت الصفحة الرئيسية */
.ldz-store-home{margin:0 0 22px}
.ldz-store-home .notice{
  background:linear-gradient(90deg,#fff8e1,#e8f5e9);border:1px solid #e6d7a8;
  border-radius:12px;padding:14px 16px;margin-bottom:12px;font-weight:700;color:#3d4a2f
}
.ldz-store-home .teacher-banner{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;
  background:linear-gradient(120deg,#0b3d73,#1a73e8);color:#fff;border-radius:14px;padding:16px 18px;
  text-decoration:none;box-shadow:0 10px 24px rgba(26,115,232,.18)
}
.ldz-store-home .teacher-banner strong{display:block;font-size:1.05rem;margin-bottom:4px}
.ldz-store-home .teacher-banner span{opacity:.92;font-size:.9rem}
.ldz-store-home .cta{background:#fff;color:#1557b0;border-radius:10px;padding:10px 14px;font-weight:800;white-space:nowrap}
.ldz-store-home .paid-strip{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ldz-store-home .paid-strip a{background:#fff;border:1px solid #d2e3fc;border-radius:10px;padding:8px 12px;text-decoration:none;color:#1557b0;font-weight:700;font-size:.88rem}
