@import url('/extra.css');
* { box-sizing: border-box; }
body { margin: 0; font: 15px/1.4 system-ui, sans-serif; background: #f4f5f7; color: #222; }
header { background: #1f2a44; color: #fff; display: flex; gap: 2rem; align-items: center; padding: .6rem 1.5rem; }
header h1 { font-size: 1.2rem; margin: 0; }
nav a { color: #cbd5e1; text-decoration: none; margin-right: 1rem; }
nav a.active { color: #fff; font-weight: 600; }
main { max-width: 960px; margin: 1.5rem auto; padding: 0 1rem; }
fieldset { background: #fff; border: 1px solid #d8dce3; border-radius: 6px; margin-bottom: 1rem; }
legend { font-weight: 600; padding: 0 .4rem; }
label { display: block; margin: .5rem 0; font-size: .85rem; color: #444; flex: 1; }
input, select, textarea { display: block; width: 100%; padding: .45rem; margin-top: .2rem; border: 1px solid #b9c0cc; border-radius: 4px; font: inherit; }
.row { display: flex; gap: 1rem; flex-wrap: wrap; align-items: flex-end; }
.row > label { min-width: 180px; }
button { padding: .5rem 1rem; border: 1px solid #1f2a44; background: #fff; border-radius: 4px; cursor: pointer; font: inherit; }
button.primary { background: #1f2a44; color: #fff; padding: .7rem 1.5rem; }
.drop { border: 2px dashed #9aa5b8; border-radius: 6px; padding: 1.2rem; text-align: center; margin-bottom: .5rem; }
.drop.over { background: #e8eefc; }
.urlrow button { margin-bottom: .5rem; }
.gallery { display: flex; flex-wrap: wrap; gap: .8rem; }
figure { margin: 0; position: relative; width: 150px; }
figure img { width: 150px; height: 150px; object-fit: contain; background: #eee; border: 1px solid #ccc; }
figcaption { font-size: .72rem; color: #555; text-align: center; }
figure button { position: absolute; top: 2px; right: 2px; padding: 0 .45rem; }
.msg { min-height: 1.2em; }
.msg.ok { color: #0a7a2f; font-weight: 600; }
.msg.err { color: #b00020; }
table { width: 100%; border-collapse: collapse; background: #fff; }
th, td { padding: .5rem; border-bottom: 1px solid #e2e5ea; text-align: left; }
