:root { font-family: Inter, system-ui, sans-serif; color: #172c43; background: #f1f6fb; }
* { box-sizing: border-box; }
[hidden] { display: none !important; }
body { margin: 0; }
header, main { max-width: 1140px; margin: auto; padding-inline: clamp(16px, 5vw, 56px); }
header { display: flex; align-items: center; justify-content: space-between; min-height: 72px; }
header a { display: inline-flex; align-items: center; gap: 8px; color: inherit; font-weight: 700; text-decoration: none; }
header img { object-fit: contain; }
main { padding-block: 18px 70px; }
h1 { margin: 0 0 12px; font-size: clamp(31px, 5vw, 48px); letter-spacing: -.04em; }
h2 { margin: 0 0 16px; }
#status { color: #3d566e; min-height: 1.5em; }
#workspace { display: grid; grid-template-columns: minmax(200px, 1fr) minmax(0, 3fr); gap: 16px; align-items: start; }
aside, form { padding: clamp(16px, 4vw, 30px); background: white; border-radius: 25px; }
#login { max-width: 440px; }
fieldset { padding: 0; border: 0; margin: 0; min-width: 0; }
legend { position: absolute; clip-path: inset(50%); }
label { display: grid; gap: 6px; margin-bottom: 16px; font-weight: 650; }
small { color: #405872; font-weight: 400; }
input, textarea, button { font: inherit; color: inherit; border: 1px solid transparent; border-radius: 12px; padding: 10px 12px; background: #edf3f9; }
input, textarea { width: 100%; }
textarea { resize: vertical; }
button { cursor: pointer; font-weight: 650; }
button:disabled { opacity: .6; cursor: default; }
.primary { color: white; background: #075acd; }
.actions { display: flex; gap: 10px; flex-wrap: wrap; }
#library { display: grid; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
#library button { width: 100%; text-align: left; overflow-wrap: anywhere; }
#library small { display: block; margin-top: 4px; }
@media(max-width: 700px) { #workspace { grid-template-columns: 1fr; } }
