/* (C) SSoft 2026 z-print@bk.ru */
:root { font-family: Inter, Segoe UI, Arial, sans-serif; color:#20242a; background:#f3f5f7; }
* { box-sizing:border-box; }
body { margin:0; }
.wrap { max-width:900px; margin:0 auto; padding:32px 18px 50px; }
header { margin-bottom:22px; } h1 { margin:0; font-size:32px; } header p { margin:5px 0 0; color:#667085; }
.card { background:white; border:1px solid #e3e7ec; border-radius:14px; padding:22px; margin:0 0 18px; box-shadow:0 2px 8px rgba(0,0,0,.035); }
.card h2 { margin:0 0 18px; font-size:20px; }.card h3 { margin:3px 0 14px; font-size:16px; }
.disabled { pointer-events:none; opacity:.48; }
.upload { display:flex; flex-direction:column; align-items:center; gap:7px; padding:30px; border:2px dashed #c9d0d9; border-radius:12px; cursor:pointer; text-align:center; }
.upload:hover { border-color:#7e8996; }.upload input { display:none; }.upload span,.note { color:#667085; font-size:13px; }
.progress-box { margin-top:16px; }.progress-label { display:flex; justify-content:space-between; gap:15px; margin-bottom:7px; font-size:14px; }
.progress { height:12px; background:#e8ecf0; border-radius:999px; overflow:hidden; }.progress div { height:100%; width:0; background:#2f6fed; transition:width .25s ease; }.processing div { transition:width .7s ease; }
.file-info { display:flex; justify-content:space-between; gap:15px; margin-top:14px; padding:13px 15px; background:#f6f8fa; border-radius:9px; }.file-info span { color:#667085; }
.mode-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-bottom:20px; }.mode-tabs input { display:none; }.mode-tabs span { display:block; text-align:center; padding:11px; border:1px solid #d3d9e0; border-radius:9px; cursor:pointer; }.mode-tabs input:checked + span { border-color:#2f6fed; background:#eef4ff; color:#174ea6; font-weight:600; }
.grid { display:grid; gap:14px; }.grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }label { display:flex; flex-direction:column; gap:6px; font-size:14px; }input[type=text],input[type=number] { width:100%; padding:10px 11px; border:1px solid #ccd3dc; border-radius:8px; font:inherit; }
.mode-options { border-top:1px solid #edf0f3; margin-top:19px; padding-top:17px; }.check { flex-direction:row; align-items:center; margin:10px 0; }details { margin:18px 0; border-top:1px solid #edf0f3; padding-top:15px; }summary { cursor:pointer; font-weight:600; }.details-grid { margin-top:15px; }
.primary { display:inline-block; border:0; background:#2f6fed; color:white; border-radius:9px; padding:11px 17px; font-weight:600; cursor:pointer; text-decoration:none; font-size:14px; }.primary:hover { filter:brightness(.96); }.button { margin-top:12px; }
.message { padding:13px 15px; border-radius:9px; margin:0 0 18px; }.message.error { background:#fff0f0; color:#a32121; border:1px solid #f0caca; }.message.ok { background:#effaf3; color:#176b35; }.hidden { display:none !important; }footer { text-align:center; color:#88919c; font-size:12px; margin-top:25px; }
@media(max-width:650px){.grid.two,.mode-tabs{grid-template-columns:1fr}.file-info{flex-direction:column}}


/* (C) SSoft 2026 z-print@bk.ru */
hr {
  border: 0;
  border-top: 1px solid #d9dde5;
  margin: 24px 0;
}

/* (C) SSoft 2026 z-print@bk.ru */
.upload.dragover {
  outline: 2px dashed currentColor;
  outline-offset: 4px;
  transform: translateY(-1px);
}

/* (C) SSoft 2026 z-print@bk.ru */
.disabled-fields { opacity: 0.55; }
.choice-row { display:flex; gap:18px; flex-wrap:wrap; }
