/* Scoped consumer only. Shell/header/footer remain owned by the host. */
.p4-vault{color:var(--p4-text,var(--on-surface,#f4ede2));font:inherit;min-inline-size:0;overflow-wrap:anywhere;margin-block:16px;padding:16px;border-radius:20px;background:var(--p4-card,var(--surface-c-low,#202022));border:1px solid var(--p4-line,var(--outline-var,#514a3f))}
.p4-vault *{box-sizing:border-box}.p4-vault h2{font-size:20px;line-height:1.25;margin:0 0 12px}.p4-vault h3{font-size:16px;line-height:1.4;margin:0 0 8px}.p4-vault p{line-height:1.5;margin:0 0 12px}.p4-vault .p4-v-note{font-size:12px;color:var(--p4-muted,var(--on-surface-var,#c9c1b5))}.p4-vault .p4-v-warning{padding:12px;border:1px solid #d6ba8255;border-radius:12px;color:var(--p4-gold,var(--primary,#d6ba82));font-size:13px}.p4-vault .p4-v-state{font-size:14px}.p4-vault form{display:grid;gap:12px;margin-block:14px}.p4-vault label{display:grid;gap:7px;font-size:13px;min-inline-size:0;line-height:1.45}.p4-vault input{inline-size:100%;min-inline-size:0;min-block-size:48px;padding:10px 12px;color:inherit;background:var(--surface,#0e0e0f);border:1px solid var(--p4-line,var(--outline-var,#514a3f));border-radius:12px;font:inherit;font-size:16px}.p4-vault input[type=file]{font-size:12px;padding:8px;overflow:hidden}.p4-vault input::file-selector-button{min-block-size:32px;max-inline-size:100%;font:inherit;white-space:normal}.p4-vault button{font:inherit;min-block-size:48px;min-inline-size:48px;max-inline-size:100%;border:0;border-radius:14px;padding:10px 14px;font-size:14px;font-weight:600;line-height:1.35;background:var(--p4-gold,var(--primary,#d6ba82));color:var(--on-primary,#251d10);cursor:pointer;touch-action:manipulation}.p4-vault button.secondary{background:var(--surface-c-high,#2e2e31);color:inherit;border:1px solid var(--p4-line,var(--outline-var,#514a3f))}.p4-vault button:disabled{opacity:.48;cursor:default}.p4-vault :focus-visible{outline:2px solid var(--p4-gold,var(--primary,#d6ba82));outline-offset:3px}.p4-vault .p4-v-actions{display:flex;flex-wrap:wrap;gap:8px}.p4-vault .p4-v-actions>button{flex:1 1 120px}.p4-vault .p4-v-check{display:flex;align-items:flex-start;gap:10px;min-block-size:48px;padding-block:8px}.p4-vault .p4-v-check input{inline-size:22px;min-inline-size:22px;block-size:22px;min-block-size:22px;padding:0;margin:0;accent-color:var(--primary,#d6ba82)}.p4-vault .p4-v-list{list-style:none;display:grid;gap:12px;margin:12px 0;padding:0}.p4-vault .p4-v-list li{padding-block:12px;border-block-end:1px solid var(--p4-line,var(--outline-var,#514a3f));min-inline-size:0}.p4-vault bdi{overflow-wrap:anywhere}.p4-vault .p4-v-filename{display:block;margin-block-end:6px}.p4-vault .p4-v-size{font-size:12px;color:var(--p4-muted,#c9c1b5);margin-block-end:10px;display:block}.p4-vault .p4-v-preview{display:block;max-inline-size:100%;max-block-size:160px;object-fit:contain;border-radius:10px;margin-block:12px}.p4-vault .p4-v-confirm,.p4-vault .p4-v-artifact{padding:12px;margin-block:14px;border:1px solid var(--primary,#d6ba82);border-radius:14px}.p4-vault [role=status]{font-size:13px;line-height:1.5;margin-block-start:12px}.p4-vault [hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.p4-vault *{transition:none!important;scroll-behavior:auto!important}}
