.rule-share-dialog { display: grid; gap: 16px; }
.rule-share-dialog .notes,.rule-share-dialog .tiny-note { margin: 0; }
.rule-share-dialog .field { margin: 0; }
.rule-share-code { display: block; width: 100%; min-height: 138px; resize: vertical; font: 12px/1.7 ui-monospace,Consolas,monospace; overflow-wrap: anywhere; word-break: break-all; }
.rule-share-summary { padding: 18px; border: 1px solid var(--accent-line); border-radius: 14px; background: var(--accent-soft); }
.rule-share-summary>strong { display: block; font-size: 17px; line-height: 1.5; color: var(--ink); overflow-wrap: anywhere; }
.rule-share-summary>div { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 10px; color: var(--sub); font-size: 12px; }
.rule-share-summary>p { color: var(--sub); font-size: 12px; margin: 10px 0 0; }
.rule-share-warning { border: 1px solid var(--accent-line); border-radius: 10px; padding: 12px; background: var(--surface-alt); color: var(--ink); line-height: 1.7; font-size: 12px; }
.rule-share-error { margin: 0; color: var(--red); font-size: 12px; line-height: 1.7; overflow-wrap: anywhere; }
.rule-share-error:empty { display: none; }
.rule-share-inspect { display: flex; flex-wrap: wrap; gap: 10px; }
.rule-share-file { position: relative; overflow: hidden; }
.rule-share-file input { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; }
.rule-share-confirm { display: grid; gap: 16px; border-top: 1px solid var(--line); padding-top: 16px; }
.rule-share-confirm[hidden] { display: none; }
.rule-share-dialog .modal-footer { flex-wrap: wrap; margin: 0; }
@media(max-width:560px) { .rule-share-dialog .modal-footer>.btn { flex: 1 1 100%; } .rule-share-code { min-height: 150px; } }
