/* 官网应用管理界面（appmgmt-ui.js）的样式：只用 app.css 的设计令牌，不写死颜色。 */
#am-root { position: relative; z-index: 50; }

.am-consent {
  position: fixed; left: var(--sp-base); right: var(--sp-base); bottom: var(--sp-base);
  max-width: 54rem; margin: 0 auto; padding: var(--sp-base) var(--sp-lg);
  background: var(--bg-elevated); color: var(--text-primary);
  border: 1px solid var(--divider); border-radius: var(--r-md); box-shadow: var(--shadow);
  display: flex; flex-wrap: wrap; gap: var(--sp-md); align-items: center; justify-content: space-between;
}
.am-consent-text { margin: 0; flex: 1 1 24rem; line-height: 1.7; font-size: 14px; color: var(--text-secondary); }
.am-consent-text a { color: var(--brand-break); }
.am-consent-actions, .am-actions { display: flex; flex-wrap: wrap; gap: var(--sp-sm); align-items: center; }
.am-btn-secondary { background: var(--bg-surface); color: var(--text-primary); border: 1px solid var(--divider); }

.am-ann, .am-maint-banner {
  display: flex; flex-wrap: wrap; gap: var(--sp-md); align-items: center; justify-content: space-between;
  padding: var(--sp-md) var(--sp-lg); border-bottom: 1px solid var(--divider);
  background: var(--info-bg); color: var(--info-text);
}
.am-ann-warning, .am-maint-banner { background: var(--warn-bg); color: var(--warn-text); }
.am-ann-critical { background: var(--danger-bg); color: var(--danger-fg); }
.am-ann-main { flex: 1 1 20rem; display: flex; flex-direction: column; gap: 2px; }
.am-ann-body { line-height: 1.6; overflow-wrap: anywhere; }

.am-modal {
  position: fixed; inset: 0; background: var(--scrim); display: flex; align-items: center; justify-content: center;
  padding: var(--sp-base); z-index: 60;
}
.am-modal-card {
  width: min(32rem, 100%); max-height: 90vh; overflow: auto; padding: var(--sp-xl);
  background: var(--bg-elevated); color: var(--text-primary); border-radius: var(--r-lg); box-shadow: var(--shadow);
}
.am-modal-card h2 { margin-top: 0; }
.am-tag { margin: 0 0 var(--sp-sm); font-size: 13px; color: var(--text-secondary); }

.am-dl { display: grid; grid-template-columns: max-content 1fr; gap: var(--sp-sm) var(--sp-lg); }
.am-dl dt { color: var(--text-secondary); }
.am-dl dd { margin: 0; overflow-wrap: anywhere; }
.am-list { padding-left: 1.2rem; }
.am-list li { margin: var(--sp-sm) 0; line-height: 1.7; overflow-wrap: anywhere; }
.am-section { margin: var(--sp-xl) 0; }
.am-ok { color: var(--success-text); }
.am-error { color: var(--danger-fg); }

.am-form { display: flex; flex-direction: column; gap: var(--sp-sm); max-width: 40rem; }
.am-form input[type="text"], .am-form select, .am-form textarea {
  font: inherit; padding: var(--sp-sm) var(--sp-md); color: var(--text-primary);
  background: var(--bg-surface); border: 1px solid var(--divider); border-radius: var(--r-sm);
}
.am-switch { display: flex; gap: var(--sp-sm); align-items: flex-start; line-height: 1.6; }
.am-thread { list-style: none; padding: 0; }
.am-msg { padding: var(--sp-md); margin: var(--sp-sm) 0; background: var(--bg-surface); border: 1px solid var(--divider); border-radius: var(--r-sm); }
.am-msg p { margin: var(--sp-sm) 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.am-msg-support { background: var(--info-bg); }

@media (max-width: 640px) {
  .am-dl { grid-template-columns: 1fr; }
  .am-consent { left: var(--sp-sm); right: var(--sp-sm); bottom: var(--sp-sm); }
}
