:root {
  color-scheme: light;
  font: 16px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif;
  background: #eef2f5;
  color: #17212b;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 24px; }
main { width: min(680px, 100%); }
header { margin-bottom: 24px; }
.eyebrow { margin: 0 0 8px; color: #0b7285; font-size: .78rem; font-weight: 700; letter-spacing: .08em; }
h1 { margin: 0 0 8px; font-size: clamp(1.8rem, 5vw, 2.5rem); letter-spacing: 0; }
p { margin: 8px 0; }
a { color: #087f8c; }
.muted { margin: 0; color: #52606d; }
.panel { background: #fff; border: 1px solid #d9e2ec; border-radius: 8px; padding: 24px; box-shadow: 0 8px 24px rgba(23, 33, 43, .08); }
label { display: block; margin: 16px 0 6px; font-weight: 650; }
label:first-child { margin-top: 0; }
input, textarea { width: 100%; border: 1px solid #bcccdc; border-radius: 6px; padding: 10px 12px; font: inherit; color: inherit; }
textarea { resize: vertical; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.license-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.license-list { display: grid; gap: 8px; margin-top: 18px; }
.license-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid #d9e2ec; }
.license-row strong, .license-row span { display: block; overflow-wrap: anywhere; }
.license-row span { color: #52606d; font-size: .9rem; }
.toolbar { display: flex; gap: 8px; margin-top: 18px; }
button { border: 0; border-radius: 6px; padding: 11px 16px; background: #0b7285; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
button.secondary { background: #52606d; }
button:disabled { cursor: wait; opacity: .65; }
pre { min-height: 96px; margin: 18px 0 0; padding: 14px; overflow: auto; background: #102a43; color: #d9f0f2; border-radius: 6px; white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 480px) { .license-fields { grid-template-columns: 1fr; } .license-row { align-items: flex-start; flex-direction: column; } }
