/* css/views/audview_drawer.css — 解密抽屉样式,owner: W20 audit-views agent。
 * 只许 W20 写;选择器前缀 .v-audview-drawer;颜色/间距用 var(--*)。
 * 设计注:DESIGN.md 无抽屉规格 —— 按 §4 Modal 体系外推:同 scrim、同 z=100、
 * Floating 阴影、头部标题+关闭×;右缘全高面板。无滑入动画(§7:过渡只用于
 * hover/focus)——抽屉即现即隐。
 * .v-audview-hidden = audview 分组共享类(同义重复定义,文件自包含)。 */

.v-audview-hidden { display: none; }

/* 遮罩:与 modal 同层(z=100)、同 scrim;面板靠右 */
.v-audview-drawer-overlay {
  position: fixed;
  inset: 0;
  background: var(--color-scrim);
  z-index: 100;
  display: flex;
  justify-content: flex-end;
}

/* 面板:Surface White、左缘发丝线 + Floating 阴影、全高纵向布局 */
.v-audview-drawer {
  width: 480px;
  max-width: 92vw;
  height: 100%;
  background: var(--color-surface);
  border-left: 1px solid var(--color-border);
  box-shadow: var(--shadow-floating);
  display: flex;
  flex-direction: column;
}

.v-audview-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border);
}
.v-audview-drawer-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text);
}

.v-audview-drawer-body {
  flex: 1;
  overflow-y: auto;
  padding: var(--space-4);
}

.v-audview-drawer-subtitle {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-secondary);
  margin-bottom: var(--space-2);
}

/* 元数据 kv 网格 */
.v-audview-drawer-kv {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-2) var(--space-3);
  font-size: 13px;
  margin-bottom: var(--space-3);
}
.v-audview-drawer-kv-label { color: var(--color-text-secondary); white-space: nowrap; }
.v-audview-drawer-sha { word-break: break-all; }

/* 红线说明行 */
.v-audview-drawer-note {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-bottom: var(--space-3);
}

/* 鉴权表单与正文之间留白 */
.v-audview-drawer-form { margin-bottom: var(--space-4); }

/* 错误态:契约四态文案;默认 danger 系,429 切 warn 系 */
.v-audview-drawer-err {
  background: var(--color-danger-tint);
  border: 1px solid var(--color-danger);
  border-radius: var(--radius-surface);
  padding: var(--space-3);
  margin-bottom: var(--space-3);
}
.v-audview-drawer-err-text {
  font-size: 13px;
  color: var(--color-danger);
}
.v-audview-drawer-err .trace-id { margin-top: var(--space-2); }
.v-audview-drawer-err-warn {
  background: var(--color-warning-tint);
  border-color: var(--color-warning);
}
.v-audview-drawer-err-warn .v-audview-drawer-err-text { color: var(--color-warning); }

/* 解密中提示 */
.v-audview-drawer-loading {
  font-size: 13px;
  color: var(--color-text-muted);
}

/* 明文区:等宽、保留换行、限高滚动;只活在抽屉 DOM,关闭即销毁 */
.v-audview-drawer-result-head {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
  margin-bottom: var(--space-2);
}
.v-audview-drawer-plain {
  font-family: var(--font-mono);
  font-size: 12px;
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
  background: var(--color-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  padding: var(--space-3);
  max-height: 55vh;
  overflow-y: auto;
  margin-bottom: var(--space-3);
  user-select: text;
}

/* Base64 无损导出区(FU-DECRYPT-B64):连续长串,任意断行 */
.v-audview-drawer-plain-b64 { word-break: break-all; }

/* 非 UTF-8 取证声明(plaintext_valid_utf8=false):warning 色系说明块,非错误态 */
.v-audview-drawer-b64note {
  background: var(--color-warning-tint);
  border: 1px solid var(--color-warning);
  border-radius: var(--radius-surface);
  padding: var(--space-3);
  margin-bottom: var(--space-3);
}
.v-audview-drawer-b64note-text {
  font-size: 13px;
  color: var(--color-warning);
}
