﻿:root {
  --bg: #f7f6ef;
  --ink: #1f2a2f;
  --muted: #5e6a70;
  --card: #ffffff;
  --line: #d9dde0;
  --accent: #126782;
  --accent-2: #0a8aa1;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  color: var(--ink);
  background:
    radial-gradient(circle at 15% 10%, #e8efe6 0%, transparent 36%),
    radial-gradient(circle at 85% 0%, #e2edf8 0%, transparent 34%),
    var(--bg);
  font-family: "Verdana", "Segoe UI", sans-serif;
}

.hero { padding: 44px 20px 26px; }
.hero__content { max-width: 1200px; margin: 0 auto; }
.eyebrow { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); }
h1 { margin: 10px 0 8px; font-size: clamp(2rem, 4.6vw, 3rem); }
.subtitle { margin: 0; color: var(--muted); }

.layout {
  max-width: 1200px;
  margin: 0 auto 30px;
  padding: 0 20px 20px;
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(12, 1fr);
}

.card, .ad-slot {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 18px;
  box-shadow: 0 10px 22px rgba(20, 32, 40, 0.06);
}

.ad-slot {
  display: grid;
  place-items: center;
  color: #64757d;
  font-weight: 600;
  text-align: center;
  border-style: dashed;
  background: linear-gradient(135deg, #fcfeff, #f2f6f8);
}

.ad-slot--top { grid-column: span 12; min-height: 94px; }
.ad-slot--side { grid-column: span 4; min-height: 320px; }

#pdf-word-card, #pdf-excel-card, #pdf-image-card { grid-column: span 4; }
#image-resizer-card { grid-column: span 8; }

h2 { margin: 0 0 8px; }
.muted { margin: 0 0 12px; color: var(--muted); font-size: .94rem; }

input[type="file"], input[type="number"], button {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px 12px;
  font-size: .95rem;
  background: #fff;
}

.grid2, .row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 12px;
}

label { color: var(--muted); font-size: .9rem; }
.checkbox-row { display: flex; align-items: center; gap: 8px; margin-top: 12px; }
.checkbox-row input { width: auto; }

button { cursor: pointer; transition: transform .08s ease, box-shadow .15s ease; margin-top: 12px; }
button:hover { transform: translateY(-1px); box-shadow: 0 7px 12px rgba(0,0,0,.08); }
button.accent { border: none; color: #fff; background: linear-gradient(135deg, var(--accent), var(--accent-2)); }

canvas {
  display: block;
  width: 100%;
  max-height: 300px;
  margin-top: 10px;
  border: 1px dashed var(--line);
  border-radius: 10px;
  background: #fbfdff;
}

.msg { margin: 10px 0 0; color: #953737; font-size: .9rem; min-height: 20px; }

@media (max-width: 1000px) {
  #pdf-word-card, #pdf-excel-card, #pdf-image-card, #image-resizer-card, .ad-slot--side { grid-column: span 12; }
}
