:root { color: #3c3c3c; font-family: ui-rounded, "Avenir Next", system-ui, sans-serif; background: #f4fbfb; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 85% 0%, #ffe2e3 0, transparent 32rem), radial-gradient(circle at 0 100%, #c8edf0 0, transparent 34rem), #f4fbfb; }
.shell { margin: 0 auto; max-width: 38rem; padding: 12vh 1.5rem 4rem; }
.eyebrow { color: #c1839f; font-size: .72rem; font-weight: 800; letter-spacing: .16em; margin: 0 0 .55rem; }
h1 { font-size: clamp(2.8rem, 10vw, 4.5rem); letter-spacing: -.07em; line-height: .92; margin: 0; }
h1 em { color: #087e8b; font-family: Georgia, serif; font-weight: 400; }
.intro { color: #666; font-size: 1.05rem; line-height: 1.5; margin: 1.4rem 0 2rem; max-width: 28rem; }
.card { backdrop-filter: blur(18px); background: rgba(255,255,255,.68); border: 1px solid rgba(255,255,255,.9); border-radius: 1.5rem; box-shadow: 0 1.2rem 3rem rgba(8,126,139,.12); padding: 1.4rem; }
h2 { font-size: 1.3rem; margin: 0; }
form { display: grid; gap: 1rem; margin-top: 1.25rem; }
label { color: #666; display: grid; font-size: .8rem; font-weight: 700; gap: .4rem; }
input { background: rgba(255,255,255,.8); border: 1px solid #d5e6e7; border-radius: .75rem; color: #3c3c3c; font: inherit; padding: .85rem; }
button { background: #ff5a5f; border: 0; border-radius: .85rem; color: #3c3c3c; cursor: pointer; font: inherit; font-weight: 800; min-height: 3rem; padding: .75rem 1rem; }
button:disabled { cursor: wait; opacity: .65; }
.release-head { align-items: flex-start; display: flex; justify-content: space-between; }
.text-button { background: transparent; color: #087e8b; min-height: auto; padding: 0; }
.muted, .hint { color: #777; font-size: .82rem; line-height: 1.45; }
.changelog { line-height: 1.5; white-space: pre-line; }
.hint { margin-bottom: 0; }
.error { color: #b42318; line-height: 1.4; margin: 1rem 0; }
