:root {
  --bg: #0c0d10;
  --panel: #15171c;
  --panel-2: #1b1e25;
  --text: #f4f6fb;
  --muted: #9aa3b2;
  --border: #2a2f39;
  --accent: #9bff6b;
  --accent-2: #73d4ff;
  --danger: #ff6b79;
  --shadow: 0 18px 50px rgba(0,0,0,.24);
}
* { box-sizing: border-box; }
body { margin: 0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, sans-serif; background: radial-gradient(circle at 20% 0%, #172019 0, transparent 28%), var(--bg); color: var(--text); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; border: 0; border-radius: 12px; padding: .8rem 1rem; font-weight: 750; background: var(--accent); color: #0a0b0d; }
button.ghost { background: transparent; color: var(--text); border: 1px solid var(--border); }
button.danger { background: transparent; color: #ffb2bb; border: 1px solid #5e2a32; }
.topbar { max-width: 1200px; margin: auto; padding: 3rem 1.25rem 1.5rem; display: flex; justify-content: space-between; gap: 1rem; align-items: start; }
h1 { margin: .1rem 0 .4rem; font-size: clamp(2.2rem, 6vw, 4rem); letter-spacing: -.05em; }
h2 { margin: .2rem 0; }
.eyebrow { margin: 0; color: var(--accent); font-size: .78rem; font-weight: 850; letter-spacing: .16em; }
.subtitle, .muted { color: var(--muted); }
.container { max-width: 1200px; margin: auto; padding: 0 1.25rem 4rem; }
.panel { background: rgba(21,23,28,.92); border: 1px solid var(--border); border-radius: 22px; padding: 1.25rem; box-shadow: var(--shadow); }
.search-main label, .filters label, .song-form label { display: block; margin-bottom: .45rem; font-size: .82rem; color: var(--muted); font-weight: 700; }
input, select, textarea { width: 100%; border: 1px solid var(--border); background: #0f1116; color: var(--text); border-radius: 12px; padding: .85rem .95rem; outline: none; }
input:focus, select:focus, textarea:focus { border-color: var(--accent-2); }
.search-main input { font-size: 1.05rem; padding: 1rem; }
.filters { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .8rem; margin-top: .9rem; }
.filter-actions { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-top: .9rem; }
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px,1fr)); gap: 1rem; margin-top: 1.1rem; }
.card { background: var(--panel); border: 1px solid var(--border); border-radius: 18px; overflow: hidden; transition: transform .18s ease, border-color .18s ease; }
.card:hover { transform: translateY(-3px); border-color: #404755; }
.cover { aspect-ratio: 1; width: 100%; object-fit: cover; background: linear-gradient(135deg, #242833, #101116); display: block; }
.cover-placeholder { aspect-ratio: 1; display: grid; place-items: center; font-size: 3rem; background: linear-gradient(135deg, #242833, #101116); }
.card-body { padding: 1rem; }
.card h3 { margin: 0 0 .25rem; font-size: 1.05rem; }
.artist { margin: 0 0 .8rem; color: var(--muted); }
.badges { display: flex; flex-wrap: wrap; gap: .45rem; }
.badge { display: inline-flex; padding: .38rem .58rem; border-radius: 999px; background: var(--panel-2); border: 1px solid var(--border); font-size: .78rem; }
.badge.key { color: var(--accent); }
.card-actions { display: flex; gap: .5rem; margin-top: .9rem; }
.card-actions button { flex: 1; padding: .65rem; }
.admin-panel { margin-top: 1.2rem; }
.admin-head { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.inline-form { display: grid; grid-template-columns: 1fr 1fr auto; gap: .65rem; }
.song-form { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .8rem; margin-top: 1rem; }
.wide { grid-column: 1 / -1; }
.form-actions { display: flex; gap: .6rem; }
.status { margin: 1rem 0; border: 1px solid var(--border); background: var(--panel); padding: .9rem 1rem; border-radius: 14px; }
.status.error { border-color: #5e2a32; color: #ffb2bb; }
.hidden { display: none !important; }
dialog { width: min(760px, calc(100% - 2rem)); max-height: 88vh; overflow: auto; border: 1px solid var(--border); border-radius: 22px; background: #111318; color: var(--text); padding: 0; box-shadow: 0 30px 90px rgba(0,0,0,.55); }
dialog::backdrop { background: rgba(0,0,0,.72); backdrop-filter: blur(4px); }
.dialog-close { position: sticky; float: right; top: .7rem; right: .7rem; z-index: 2; width: 40px; height: 40px; padding: 0; border-radius: 50%; background: #252a33; color: white; }
.detail { padding: 1.3rem; }
.detail-head { display: grid; grid-template-columns: 180px 1fr; gap: 1.2rem; align-items: start; }
.detail-head img, .detail-head .cover-placeholder { width: 180px; border-radius: 16px; }
.detail h2 { font-size: 2rem; margin: 0 0 .2rem; }
.match-list { display: grid; gap: .65rem; margin-top: .9rem; }
.match { display: grid; grid-template-columns: 1fr auto; gap: 1rem; align-items: center; padding: .8rem; border: 1px solid var(--border); border-radius: 14px; background: var(--panel); }
.match strong { display: block; }
.score { font-weight: 850; color: var(--accent); }
.empty { grid-column: 1/-1; padding: 3rem 1rem; text-align: center; color: var(--muted); }
@media (max-width: 760px) {
  .topbar { padding-top: 2rem; }
  .filters { grid-template-columns: 1fr 1fr; }
  .inline-form, .song-form { grid-template-columns: 1fr; }
  .wide { grid-column: auto; }
  .detail-head { grid-template-columns: 1fr; }
  .detail-head img, .detail-head .cover-placeholder { width: 100%; }
}

/* Importador CSV */
.section-divider { height: 1px; background: var(--border); margin: 1.4rem 0; }
.import-box h3 { margin: .2rem 0 .35rem; }
.import-head { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.button-link, .file-button { display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; padding: .8rem 1rem; font-weight: 750; text-decoration: none; cursor: pointer; white-space: nowrap; }
.ghost-link { background: transparent; color: var(--text); border: 1px solid var(--border); }
.file-button { background: var(--accent); color: #0a0b0d; }
.import-picker { display: flex; align-items: center; gap: .8rem; flex-wrap: wrap; margin-top: 1rem; }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.check-row { display: flex; align-items: flex-start; gap: .65rem; margin-top: .9rem; color: var(--muted); font-size: .9rem; }
.check-row input { width: auto; margin-top: .18rem; accent-color: var(--accent); }
.import-summary { margin-top: 1rem; display: flex; flex-wrap: wrap; gap: .55rem; }
.summary-pill { padding: .45rem .7rem; border-radius: 999px; border: 1px solid var(--border); background: var(--panel-2); font-size: .82rem; }
.summary-pill.ok { color: var(--accent); }
.summary-pill.warn { color: #ffd479; }
.summary-pill.bad { color: #ffb2bb; }
.import-preview { margin-top: .9rem; overflow-x: auto; border: 1px solid var(--border); border-radius: 14px; }
.import-table { width: 100%; border-collapse: collapse; min-width: 860px; font-size: .84rem; }
.import-table th, .import-table td { text-align: left; padding: .7rem .75rem; border-bottom: 1px solid var(--border); vertical-align: top; }
.import-table th { color: var(--muted); background: #111318; position: sticky; top: 0; }
.import-table tr:last-child td { border-bottom: 0; }
.import-table .row-error { color: #ffb2bb; }
.import-table .row-duplicate { color: #ffd479; }
.import-table .row-ok { color: var(--accent); }
.import-note { padding: .75rem; color: var(--muted); font-size: .82rem; border-top: 1px solid var(--border); }
#importControls { margin-top: .9rem; }
@media (max-width: 760px) {
  .import-head { flex-direction: column; }
  .button-link, .file-button { width: 100%; }
  .import-picker { align-items: stretch; }
}

/* V1.3 · Explorador armónico */
.filters { grid-template-columns: repeat(5, minmax(0,1fr)); }
select:disabled, button:disabled { opacity: .5; cursor: not-allowed; }

.harmonic-panel { margin-top: 1.2rem; overflow: hidden; }
.harmonic-head { display: flex; justify-content: space-between; align-items: start; gap: 1.2rem; }
.harmonic-head h2 { font-size: 1.65rem; margin-bottom: .3rem; }
.harmonic-head > div:first-child { max-width: 650px; }
.harmonic-controls { min-width: 390px; display: grid; grid-template-columns: 1.2fr .8fr; gap: .7rem; }
.harmonic-controls label { display: block; margin-bottom: .45rem; font-size: .82rem; color: var(--muted); font-weight: 700; }
.harmonic-layout { display: grid; grid-template-columns: minmax(340px, 470px) 1fr; align-items: center; gap: 2rem; margin-top: 1.2rem; }

.harmonic-wheel { position: relative; width: min(100%, 460px); aspect-ratio: 1; margin: 0 auto; border-radius: 50%; border: 1px solid #343a45; background:
  radial-gradient(circle, #111318 0 17%, transparent 17.5%),
  radial-gradient(circle, transparent 0 42%, rgba(115,212,255,.07) 42.5% 43.2%, transparent 43.7%),
  radial-gradient(circle, transparent 0 66%, rgba(155,255,107,.08) 66.5% 67.2%, transparent 67.7%),
  radial-gradient(circle at 50% 50%, #1a1d24, #111318 68%, #0e1014 100%);
  box-shadow: inset 0 0 70px rgba(0,0,0,.28);
}
.harmonic-wheel::before, .harmonic-wheel::after { content:""; position:absolute; inset: 13%; border:1px solid rgba(255,255,255,.055); border-radius:50%; pointer-events:none; }
.harmonic-wheel::after { inset: 31%; }
.wheel-center { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:31%; aspect-ratio:1; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:.65rem; border:1px solid var(--border); background:#0c0e12; z-index:3; box-shadow:0 12px 35px rgba(0,0,0,.25); }
.wheel-center span { color:var(--accent); font-size:1rem; font-weight:900; }
.wheel-center strong { margin-top:.15rem; font-size:clamp(.7rem,2vw,.9rem); }
.wheel-center small { color:var(--muted); font-size:.68rem; margin-top:.2rem; }
.wheel-key { position:absolute; transform:translate(-50%,-50%); z-index:4; min-width:58px; min-height:46px; padding:.35rem .45rem; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.05rem; border-radius:14px; background:#20242c; color:var(--text); border:1px solid #343a45; box-shadow:0 7px 20px rgba(0,0,0,.18); transition:transform .15s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease; }
.wheel-key:hover { transform:translate(-50%,-50%) scale(1.08); border-color:#606a79; }
.wheel-key.minor { min-width:50px; min-height:40px; border-radius:12px; background:#181b21; }
.wheel-key strong { font-size:.86rem; line-height:1; }
.wheel-key span { color:var(--muted); font-size:.64rem; font-weight:800; }
.wheel-key.is-current { background:var(--accent); color:#081006; border-color:var(--accent); box-shadow:0 0 0 4px rgba(155,255,107,.12), 0 8px 22px rgba(0,0,0,.25); }
.wheel-key.is-current span { color:#1b3810; }
.wheel-key.is-relative { border-color:#73d4ff; background:#172731; box-shadow:0 0 0 3px rgba(115,212,255,.08); }
.wheel-key.is-neighbor { border-color:#d6b8ff; background:#251d31; box-shadow:0 0 0 3px rgba(214,184,255,.07); }
.wheel-key.is-wide { border-color:#ffd479; background:#2f2819; box-shadow:0 0 0 3px rgba(255,212,121,.07); }

.harmonic-legend { display:flex; justify-content:center; gap:.9rem; flex-wrap:wrap; margin-top:.8rem; color:var(--muted); font-size:.78rem; }
.harmonic-legend span { display:inline-flex; align-items:center; gap:.35rem; }
.legend-dot { width:9px; height:9px; border-radius:50%; display:inline-block; border:1px solid transparent; }
.legend-dot.current { background:var(--accent); }
.legend-dot.relative { background:#73d4ff; }
.legend-dot.neighbor { background:#d6b8ff; }
.legend-dot.wide { background:#ffd479; }

.harmonic-info { min-width:0; }
.harmonic-intro { min-height:220px; display:grid; place-items:center; text-align:center; padding:2rem; border:1px dashed var(--border); border-radius:18px; color:var(--muted); }
.harmonic-selected { margin-bottom:.75rem; }
.harmonic-selected h3 { margin:.2rem 0 .3rem; font-size:1.5rem; }
.harmonic-summary { display:grid; gap:.65rem; }
.relation-card { display:grid; grid-template-columns:minmax(130px,.8fr) 1.5fr; gap:.8rem; align-items:center; padding:.75rem; border:1px solid var(--border); border-radius:15px; background:#111318; }
.relation-card > div:first-child { display:flex; flex-direction:column; gap:.15rem; }
.relation-card > div:first-child span { color:var(--muted); font-size:.78rem; }
.relation-exact { border-left:3px solid var(--accent); }
.relation-relative { border-left:3px solid #73d4ff; }
.relation-neighbor { border-left:3px solid #d6b8ff; }
.relation-wide { border-left:3px solid #ffd479; }
.relation-keys { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; }
.relation-keys .relation-key:only-child { grid-column:1/-1; }
.relation-key { text-align:left; display:flex; flex-direction:column; gap:.12rem; background:#1b1e25; color:var(--text); border:1px solid var(--border); padding:.6rem .7rem; }
.relation-key:hover { border-color:#5a6270; }
.relation-key small { color:var(--muted); font-weight:500; }
.harmonic-actions { display:flex; gap:.6rem; margin-top:.9rem; }

.explore-song { margin-top:1rem; background:transparent; color:var(--accent); border:1px solid #3e5a33; }
.detail-harmony { margin:1.25rem 0; padding:1rem; border:1px solid var(--border); border-radius:16px; background:#0e1014; }
.detail-harmony h3 { margin:.1rem 0 .25rem; }
.detail-relation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.6rem; margin-top:.8rem; }
.detail-relation { border:1px solid var(--border); border-left-width:3px; border-radius:13px; padding:.65rem; display:grid; gap:.45rem; }
.detail-relation > strong { font-size:.82rem; color:var(--muted); }
.detail-relation button { background:#191c22; color:var(--text); border:1px solid var(--border); padding:.55rem .65rem; text-align:left; display:flex; flex-direction:column; gap:.1rem; }
.detail-relation button small { color:var(--muted); font-weight:500; }
.detail-relation.relation-exact { border-left-color:var(--accent); }
.detail-relation.relation-relative { border-left-color:#73d4ff; }
.detail-relation.relation-neighbor { border-left-color:#d6b8ff; }
.detail-relation.relation-wide { border-left-color:#ffd479; }
.match > div { min-width:0; }
.match .muted { display:block; margin-top:.12rem; }
.match-reason { display:inline-block; margin-top:.35rem; font-size:.76rem; font-weight:750; }
.match-reason.exact { color:var(--accent); }
.match-reason.relative { color:#73d4ff; }
.match-reason.neighbor { color:#d6b8ff; }
.match-reason.wide { color:#ffd479; }
.score { white-space:nowrap; }

@media (max-width: 980px) {
  .filters { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .harmonic-head { flex-direction:column; }
  .harmonic-controls { min-width:0; width:100%; }
  .harmonic-layout { grid-template-columns:1fr; }
  .harmonic-wheel { width:min(100%,430px); }
}
@media (max-width: 760px) {
  .filters { grid-template-columns:1fr 1fr; }
  .harmonic-controls { grid-template-columns:1fr; }
  .harmonic-layout { gap:1rem; }
  .wheel-key { min-width:48px; min-height:39px; padding:.25rem .3rem; }
  .wheel-key.minor { min-width:43px; min-height:35px; }
  .wheel-key strong { font-size:.72rem; }
  .wheel-key span { font-size:.56rem; }
  .relation-card { grid-template-columns:1fr; }
  .detail-relation-grid { grid-template-columns:1fr; }
  .harmonic-actions { flex-direction:column; }
}
@media (max-width: 430px) {
  .harmonic-wheel { width:calc(100vw - 3rem); }
  .wheel-key { min-width:43px; min-height:35px; border-radius:10px; }
  .wheel-key.minor { min-width:38px; min-height:32px; }
  .wheel-key strong { font-size:.65rem; }
  .wheel-key span { font-size:.52rem; }
  .wheel-center { width:34%; padding:.45rem; }
}


/* V1.4 · Navegación por pestañas + paginación */
.view-tabs { display:flex; gap:.55rem; margin-top:1.35rem; flex-wrap:wrap; }
.view-tab { background:transparent; color:var(--muted); border:1px solid var(--border); padding:.7rem .95rem; }
.view-tab:hover { color:var(--text); border-color:#434a57; }
.view-tab.active { background:var(--accent); color:#091007; border-color:var(--accent); box-shadow:0 0 0 3px rgba(155,255,107,.08); }
.view-section { min-width:0; }

.pagination { margin-top:1.15rem; padding:1rem 0 .25rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.pagination-meta { display:flex; align-items:center; gap:1rem; flex-wrap:wrap; }
.pagination-meta label { display:flex; align-items:center; gap:.45rem; color:var(--muted); font-size:.84rem; }
.pagination-meta select { width:auto; min-width:72px; padding:.55rem .65rem; }
.page-buttons { display:flex; align-items:center; justify-content:flex-end; gap:.4rem; flex-wrap:wrap; }
.page-buttons button { min-width:40px; height:40px; padding:.45rem .65rem; border-radius:11px; background:var(--panel); color:var(--text); border:1px solid var(--border); }
.page-buttons button:hover:not(:disabled) { border-color:#596171; }
.page-buttons button.active { background:var(--accent); color:#091007; border-color:var(--accent); }
.page-buttons button:disabled { opacity:.38; }
.page-ellipsis { color:var(--muted); padding:0 .15rem; }

/* La rueda vive en su propia pestaña: no necesita margen extra al aparecer. */
#harmonicExplorer.view-section { margin-top:0; }

@media (max-width: 760px) {
  .topbar { flex-direction:column; }
  .topbar > button { align-self:flex-end; margin-top:-3.4rem; }
  .view-tabs { padding-right:0; }
  .view-tab { flex:1; min-width:150px; }
  .pagination { align-items:stretch; }
  .pagination-meta, .page-buttons { width:100%; justify-content:center; }
}

/* V1.5 · Autocompletado (dentro de Administrar) */
.metadata-box { padding-bottom: .2rem; }
.metadata-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.metadata-heading h3 { margin:.15rem 0 .3rem; font-size:1.2rem; }
.metadata-heading p { margin:.2rem 0; }
.metadata-credit { font-size:.82rem; white-space:nowrap; }
.metadata-query { display:grid; grid-template-columns: 1.2fr 1.2fr auto auto; align-items:end; gap:.55rem; margin-top:1rem; }
.metadata-query label { display:block; margin-bottom:.35rem; }
.metadata-query button { height:fit-content; min-height:46px; }
.metadata-message { margin:.7rem 0 0; font-size:.88rem; }
.metadata-error { color:#ffb2bb; }
.metadata-results { margin-top:.75rem; max-height:350px; overflow:auto; display:grid; gap:.45rem; }
.metadata-result { width:100%; display:flex; align-items:center; text-align:left; gap:.75rem; padding:.75rem; background:#15181d; color:var(--text); border:1px solid var(--border); }
.metadata-result:hover { border-color:var(--accent); background:#1d2420; }
.metadata-result-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:9px; background:#242c22; color:var(--accent); font-size:1.4rem; flex-shrink:0; }
.metadata-result > span:nth-child(2) { display:grid; gap:.15rem; flex:1; min-width:0; }
.metadata-result strong { overflow-wrap:anywhere; }
.metadata-result small { color:var(--muted); font-weight:400; }
.metadata-arrow { color:var(--accent); font-size:.78rem; flex-shrink:0; }
.metadata-review { margin-top:.9rem; border:1px solid #435a43; border-radius:16px; padding:1rem; background:#141a16; }
.metadata-review-head { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; }
.metadata-review-head h4 { margin:.1rem 0; font-size:1.2rem; }
.metadata-review-head p { margin:.1rem 0 .6rem; }
.metadata-review-body { display:grid; grid-template-columns:145px 1fr; align-items:start; gap:1rem; }
.metadata-art { width:145px; height:145px; border-radius:12px; background:#252b28; overflow:hidden; }
.metadata-art img { width:100%; height:100%; object-fit:cover; display:block; }
.metadata-art-placeholder { display:grid; width:100%; height:100%; place-items:center; font-size:3rem; color:var(--muted); }
.metadata-options { display:grid; gap:.4rem; min-width:0; }
.metadata-options label:not(.check-row) { display:block; }
.metadata-options p { margin:0; }
.metadata-options .check-row { margin:.35rem 0; }
.metadata-options button { justify-self:start; }
.metadata-small { font-size:.78rem; }
@media (max-width: 900px) {
  .metadata-query { grid-template-columns:1fr 1fr; }
}
@media (max-width: 580px) {
  .metadata-heading { flex-direction:column; }
  .metadata-query { grid-template-columns:1fr; }
  .metadata-review-body { grid-template-columns:1fr; }
  .metadata-art { margin:auto; }
}


/* V1.6 - Nuevos ingresos por defecto + donaciones opcionales, sin invadir portadas */
.topbar-actions { display:flex; gap:.6rem; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.support-pill, .support-footer-link { display:inline-flex; align-items:center; justify-content:center; gap:.3rem; text-decoration:none; font-weight:750; border-radius:12px; transition:background .15s ease, border-color .15s ease; }
.support-pill { padding:.78rem 1rem; border:1px solid #416647; background:rgba(155,255,107,.07); color:var(--accent); white-space:nowrap; }
.support-pill:hover { background:rgba(155,255,107,.15); border-color:var(--accent); }
.site-footer { max-width:1150px; margin:0 auto 2.5rem; padding:1.5rem 1.25rem; border-top:1px solid var(--border); color:var(--muted); display:flex; gap:1rem; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.site-footer p { margin:0; max-width:750px; font-size:.92rem; line-height:1.6; }
.site-footer strong { color:var(--text); }
.support-footer-link { padding:.65rem .95rem; border:1px solid var(--border); color:var(--text); white-space:nowrap; }
.support-footer-link:hover { border-color:var(--accent); color:var(--accent); }
@media (max-width:760px) {
  .topbar > .topbar-actions { align-self:stretch; justify-content:flex-start; margin-top:0; }
  .topbar-actions #adminToggle { margin-left:auto; }
  .site-footer { justify-content:center; text-align:center; }
}


/* V1.7 · Administración en ventana modal + títulos normalizados */
.field-hint { display:block; margin-top:.38rem; color:var(--muted); font-size:.74rem; line-height:1.35; }
.admin-dialog { width:min(1040px, calc(100% - 2rem)); max-height:92vh; overflow:auto; padding:0; }
.admin-dialog .admin-panel { margin:0; border:0; border-radius:0; box-shadow:none; background:#111318; padding:1.35rem; }
.admin-dialog .admin-head { padding-right:3rem; }
.admin-dialog-close { position:sticky; top:.7rem; margin:.7rem .7rem -3rem auto; display:block; float:none; }
.admin-dialog #adminStatus { margin:.9rem 0 0; }
.admin-dialog .metadata-box, .admin-dialog .import-box { scroll-margin-top:1rem; }
@media (max-width:760px) {
  .admin-dialog { width:calc(100% - 1rem); max-height:94vh; }
  .admin-dialog .admin-panel { padding:1rem; }
  .admin-dialog-close { margin:.5rem .5rem -2.8rem auto; }
}

/* V1.8 · sitio público: administración trasladada a la herramienta local. */
