/* Simplex Print — Light, modern UI */
:root{
  --bg:#f7f8fa;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --primary:#2563eb;
  --ring:#cbd5e1;
  --ring-strong:#94a3b8;
  --accent:#f1f5f9;
  --success:#0ea5e9;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; background:var(--bg); color:var(--text); }
a{ color:var(--primary); text-decoration:none; }
.container{ width: min(1100px, 92%); margin:0 auto; }

.header{ display:flex; align-items:center; justify-content:space-between; padding:18px 0; }
.brand{ display:flex; gap:12px; align-items:center; }
.logo{ width:42px; height:42px; border-radius:12px; background:linear-gradient(135deg, var(--primary), #60a5fa); color:#fff; display:grid; place-items:center; font-weight:800; }
.title h1{ font-size:20px; margin:0; }
.title p{ margin:2px 0 0; color:var(--muted); font-size:12px; }

.nav a{ padding:10px 14px; border-radius:10px; color:var(--text); }
.nav a.active, .nav a:hover{ background:var(--accent); }

.card{ background:var(--card); border:1px solid var(--ring); border-radius:16px; padding:22px; box-shadow: 0 10px 24px rgba(15,23,42,.05); }
.card h2{ margin:6px 0 4px; }
.muted{ color:var(--muted); }

.grid{ display:grid; grid-template-columns: 1fr 1fr; gap:16px; margin-top:16px; }
.field{ display:flex; flex-direction:column; gap:8px; }
.field input, .field select, .field textarea{
  width:100%; padding:12px 14px; border:1px solid var(--ring); border-radius:12px; background:#fff; outline:none;
}
.field input:focus, .field select:focus, .field textarea:focus{ border-color:var(--ring-strong); box-shadow:0 0 0 4px rgba(148,163,184,.2); }
.field label{ font-weight:600; font-size:14px; }
.req{ color:#ef4444; }

.span-2{ grid-column: span 2; }

.dropzone{ border:2px dashed var(--ring-strong); border-radius:16px; padding:18px; text-align:center; background: #fafbff; }
.dropzone input[type=file]{ display:none; }
.linklike{ background:none; border:none; color:var(--primary); font-weight:600; cursor:pointer; }
.file-list{ list-style:none; padding-left:0; text-align:left; margin:12px 0 0; }
.file-list li{ display:flex; justify-content:space-between; align-items:center; border:1px dashed var(--ring); padding:8px 10px; border-radius:10px; margin:6px 0; font-size:14px; }
.file-list li .remove{ cursor:pointer; }

.items{ border:1px dashed var(--ring); border-radius:12px; }
.items-head{ display:flex; justify-content:flex-end; padding:8px; }
.items-list{ list-style:none; margin:0; padding:8px; display:flex; flex-direction:column; gap:8px; }
.item{ background:#fff; border:1px solid var(--ring); border-radius:12px; padding:10px; display:grid; grid-template-columns: 1fr 120px 120px 40px; gap:8px; align-items:center; cursor:grab; }
.item input{ width:100%; padding:8px 10px; border-radius:10px; border:1px solid var(--ring); }
.item .handle{ cursor:grab; font-size:20px; text-align:center; color:var(--muted); }

.actions{ display:flex; gap:12px; margin-top:14px; }
.btn{ padding:10px 14px; border-radius:12px; background:var(--accent); border:1px solid var(--ring); cursor:pointer; }
.btn.ghost{ background:#fff; }
.btn.primary{ background:var(--primary); color:#fff; border-color:transparent; }
.btn:hover{ filter:brightness(0.98); }

.alert{ margin-top:14px; padding:12px; border:1px solid var(--ring); background:#fff; border-radius:12px; }
.alert.success{ border-color:#22c55e; box-shadow:0 0 0 4px rgba(34,197,94,.15); }
.hidden{ display:none; }

.table-wrap{ overflow:auto; border:1px solid var(--ring); border-radius:12px; }
table{ width:100%; border-collapse:collapse; min-width:900px; }
th, td{ border-bottom:1px solid var(--ring); padding:10px 12px; text-align:left; font-size:14px; }
th{ background:#f8fafc; }

.footer{ color:var(--muted); font-size:14px; text-align:center; padding:22px 0; }

@media (max-width: 820px){
  .grid{ grid-template-columns: 1fr; }
  .span-2{ grid-column: span 1; }
  .item{ grid-template-columns: 1fr 100px 100px 40px; }
}
