.bc.ds .ds-password{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--bc-space-4);color:var(--bc-text)}
.bc.ds .ds-password [hidden]{display:none!important}
.bc.ds .ds-password__answer,.bc.ds .ds-password__options{min-width:0;padding:var(--bc-space-4);border:var(--bc-line) solid var(--bc-border);border-radius:var(--bc-radius-card);background:var(--bc-surface)}
.bc.ds .ds-password__answer{border-width:2px;border-color:var(--bc-brand)}
.bc.ds .ds-password__answer-top,.bc.ds .ds-password__length-top{display:flex;align-items:center;justify-content:space-between;gap:var(--bc-space-2)}
.bc.ds .ds-password__caption{font-weight:700;color:var(--bc-muted)}
.bc.ds .ds-password__remake{min-height:var(--bc-target);padding-inline:var(--bc-space-2);border:0;border-radius:var(--bc-radius-input);background:transparent;color:var(--bc-brand);font:inherit;font-weight:700;cursor:pointer}
.bc.ds .ds-password__value{display:block;min-width:0;margin:var(--bc-space-3) 0;overflow-wrap:anywhere;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:clamp(1.5rem,6.5vw,2rem);font-weight:700;line-height:1.45;letter-spacing:.025em;color:var(--bc-text)}
.bc.ds .ds-password__copy{width:100%;min-height:var(--bc-target);font-size:var(--ds-text-body)}
.bc.ds .ds-password__strength{margin-top:var(--bc-space-4)}
.bc.ds .ds-password__meter{height:.45rem;overflow:hidden;border-radius:var(--bc-radius-input);background:var(--bc-border)}
.bc.ds .ds-password__meter span{display:block;width:0;height:100%;border-radius:inherit;background:var(--bc-brand)}
.bc.ds .ds-password__strength[data-level="1"] .ds-password__meter span{width:25%}
.bc.ds .ds-password__strength[data-level="2"] .ds-password__meter span{width:50%}
.bc.ds .ds-password__strength[data-level="3"] .ds-password__meter span{width:75%}
.bc.ds .ds-password__strength[data-level="4"] .ds-password__meter span{width:100%}
.bc.ds .ds-password__strength p{margin:var(--bc-space-2) 0 0;word-break:keep-all;overflow-wrap:anywhere;font-weight:700;color:var(--bc-brand-strong)}
.bc.ds .ds-password__privacy,.bc.ds .ds-password__hint{margin:var(--bc-space-3) 0 0;color:var(--bc-muted);font-size:var(--ds-text-small);line-height:1.6}
.bc.ds .ds-password__message{margin:var(--bc-space-2) 0 0;color:var(--bc-caution-text)}
.bc.ds .ds-password__toast{position:fixed;z-index:1000;inset:auto var(--bc-space-4) var(--bc-space-4);width:max-content;max-width:calc(100% - 2 * var(--bc-space-4));margin:auto;padding:var(--bc-space-3) var(--bc-space-4);border-radius:var(--bc-radius-card);background:var(--bc-text);color:var(--bc-bg);pointer-events:none}
.bc.ds .ds-password__toast:empty{display:none}
.bc.ds .ds-password__options h2,.bc.ds .ds-password__batch h2{margin:0 0 var(--bc-space-3);padding:0;border:0;background:none;color:var(--bc-brand);font-size:var(--ds-text-body)}
.bc.ds .ds-password__field{min-width:0;margin:0 0 var(--bc-space-4);padding:0;border:0}
.bc.ds .ds-password__field legend,.bc.ds .ds-password__length-top{font-weight:700}
.bc.ds .ds-password__length-top output{font-size:var(--ds-text-answer);font-variant-numeric:tabular-nums;color:var(--bc-brand)}
.bc.ds .ds-password__length-top span{white-space:nowrap}
.bc.ds .ds-password__options input[type=range]{display:block;width:100%;min-height:var(--bc-target);margin:0;accent-color:var(--bc-brand)}
.bc.ds .ds-password__chips{display:flex;flex-wrap:wrap;gap:var(--bc-space-2)}
.bc.ds .ds-password__chip{flex:1 1 3rem;min-width:3rem;min-height:var(--bc-target);padding:var(--bc-space-1) var(--bc-space-2);border:var(--bc-line) solid var(--bc-border);border-radius:var(--bc-radius-input);background:var(--bc-bg);color:var(--bc-text);font:inherit;white-space:nowrap;cursor:pointer}
.bc.ds .ds-password__chip[aria-pressed=true]{border-color:var(--bc-brand);background:var(--bc-brand);color:var(--bc-bg);font-weight:700}
.bc.ds .ds-password__symbols{display:block;margin-top:var(--bc-space-3);font-weight:700}
.bc.ds .ds-password__symbols input{display:block;width:100%;min-width:0;min-height:var(--bc-target);margin-top:var(--bc-space-1);padding:var(--bc-space-2);border:var(--bc-line) solid var(--bc-border);border-radius:var(--bc-radius-input);background:var(--bc-bg);color:var(--bc-text);font:inherit;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.bc.ds .ds-password__check{display:flex;align-items:center;gap:var(--bc-space-2);min-height:var(--bc-target);cursor:pointer}
.bc.ds .ds-password__check input{flex:0 0 1.2rem;width:1.2rem;height:1.2rem;margin:0;accent-color:var(--bc-brand)}
.bc.ds .ds-password__count{margin-bottom:0}
.bc.ds .ds-password__segment{display:flex;overflow:hidden;border:var(--bc-line) solid var(--bc-border);border-radius:var(--bc-radius-input)}
.bc.ds .ds-password__segment button{flex:1;min-width:0;min-height:var(--bc-target);padding:var(--bc-space-1);border:0;border-left:var(--bc-line) solid var(--bc-border);background:var(--bc-bg);color:var(--bc-text);font:inherit;cursor:pointer}
.bc.ds .ds-password__segment button:first-child{border-left:0}
.bc.ds .ds-password__segment button[aria-pressed=true]{background:var(--bc-surface);color:var(--bc-brand-strong);font-weight:700}
.bc.ds .ds-password__batch{grid-column:1/-1}
.bc.ds .ds-password__batch ul{display:grid;gap:var(--bc-space-2);margin:0;padding:0;list-style:none}
.bc.ds .ds-password__batch li{display:flex;align-items:center;gap:var(--bc-space-2);min-width:0;padding:var(--bc-space-2);border:var(--bc-line) solid var(--bc-border);border-radius:var(--bc-radius-card);background:var(--bc-surface)}
.bc.ds .ds-password__batch li output{flex:1;min-width:0;overflow-wrap:anywhere;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.bc.ds .ds-password__batch li button{min-width:4rem;min-height:var(--bc-target);border:var(--bc-line) solid var(--bc-border);border-radius:var(--bc-radius-input);background:var(--bc-bg);color:var(--bc-brand);font:inherit;font-weight:700}
.bc.ds .ds-password :focus-visible{outline:var(--bc-line) solid var(--bc-brand);outline-offset:var(--bc-space-1)}
@media(min-width:48rem){.bc.ds .ds-password{grid-template-columns:minmax(0,1.2fr) minmax(16rem,.8fr);align-items:start}.bc.ds .ds-password__answer,.bc.ds .ds-password__options{padding:var(--bc-space-5)}.bc.ds .ds-password__value{font-size:clamp(1.75rem,3vw,2.2rem)}}
@media(max-width:23.5rem){.bc.ds .ds-password__answer,.bc.ds .ds-password__options{padding:var(--bc-space-3)}.bc.ds .ds-password__chip{flex-basis:2.7rem;min-width:2.7rem}}
