#root{text-align:center;max-width:1220px;margin:0 auto;padding:3.6rem 2rem 6rem}.bold{font-weight:900}.app-header{text-align:left;max-width:1100px;margin:0 auto 2.2rem}.app-header__eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--checkbox-color);margin-bottom:.8rem;font-size:1.2rem;font-weight:800}.app-header h1{letter-spacing:-.04em;max-width:11ch;color:var(--color-text);margin-bottom:1rem;font-size:clamp(3.8rem,5vw,6.2rem);line-height:.95}.app-header__description{max-width:58rem;color:var(--color-text-light);font-size:1.8rem;line-height:1.6}.app-shell{background:var(--color-background-secondary);border:1px solid var(--glass-line);width:100%;max-width:1100px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(28px)saturate(150%);border-radius:3.2rem;grid-template-columns:minmax(0,1.1fr) minmax(28rem,34rem);gap:2.2rem;margin:0 auto;padding:2.2rem;display:grid;position:relative;overflow:hidden}.app-shell:before{content:"";background:linear-gradient(135deg, var(--glass-highlight), transparent 36%), linear-gradient(180deg, #ffffff1f, transparent 48%);pointer-events:none;position:absolute;inset:0}.app-generator,.app-sidebar{z-index:1;position:relative}.app-generator{min-width:0}.app-sidebar{border-left:1px solid var(--glass-line);min-width:0;padding-left:2rem}.sidebar-stack{flex-direction:column;gap:1.2rem;width:100%;display:flex}.sidebar-card{text-align:left;border:1px solid var(--glass-line);background:linear-gradient(#ffffff1f,#ffffff0a),#ffffff0d;border-radius:2.4rem;width:100%;padding:1.6rem;box-shadow:inset 0 1px #ffffff29}.sidebar-card h2{color:var(--color-text);letter-spacing:-.03em;font-size:2rem;line-height:1.05}.sidebar-card__header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.sidebar-card__eyebrow{color:var(--checkbox-color);letter-spacing:.16em;text-transform:uppercase;margin-bottom:.45rem;font-size:1.15rem;font-weight:800}.sidebar-card__badge{min-width:3.2rem;min-height:3.2rem;color:var(--color-text);border:1px solid var(--glass-line);background:#ffffff29;border-radius:999px;justify-content:center;align-items:center;padding:.4rem .9rem;font-size:1.2rem;font-weight:800;line-height:1;display:inline-flex}.sidebar-toggle{color:var(--btn-color);border:1px solid var(--glass-line);background:#ffffff1f;border-radius:999px;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:1.35rem;font-weight:700;display:inline-flex}.sidebar-toggle svg{width:1.6rem;height:1.6rem}.sidebar-overview{flex-wrap:wrap;gap:.6rem;display:flex}.sidebar-overview__item{color:var(--color-text-light);border:1px solid var(--glass-line);background:#ffffff1f;border-radius:999px;align-items:center;padding:.45rem .9rem;font-size:1.2rem;font-weight:700;display:inline-flex}.sidebar-controls{margin-top:1.1rem}.sidebar-control{border-top:1px solid var(--glass-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.2rem;padding:1.2rem 0;display:grid}.sidebar-control:first-child{border-top:none}.sidebar-control--stacked{grid-template-columns:1fr}.sidebar-control__content h3{color:var(--color-text);margin-bottom:.35rem;font-size:1.8rem;line-height:1.1}.sidebar-control__content p,.sidebar-footnote,.sidebar-empty span{color:var(--color-text-light);font-size:1.36rem;line-height:1.58}.sidebar-footnote{margin-top:.9rem}.sidebar-select-label{color:var(--color-text-light);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.5rem;font-size:1.2rem;font-weight:700}.sidebar-select{width:100%;color:var(--color-text);font-family:var(--font-sans);border:1px solid var(--glass-line);appearance:none;background:#ffffff26;border-radius:1.4rem;padding:1.05rem 1.1rem;font-size:1.45rem}.sidebar-switch{border:1px solid var(--glass-line);background:#ffffff29;border-radius:999px;justify-content:flex-start;width:5.6rem;height:3.2rem;padding:.35rem}.sidebar-switch.is-active{background:linear-gradient(180deg, color-mix(in srgb, var(--checkbox-color) 92%, white 8%), var(--checkbox-color));border-color:#0000}.sidebar-switch__thumb{background:#f6faf8;border-radius:50%;width:2.4rem;height:2.4rem;transition:transform .18s;transform:translate(0);box-shadow:0 .5rem 1rem #0000001f}.sidebar-switch.is-active .sidebar-switch__thumb{transform:translate(2.4rem)}.history-list{flex-direction:column;gap:.95rem;display:flex}.history-item{border:1px solid var(--glass-line);background:#ffffff1f;border-radius:1.8rem;padding:1.2rem 1.3rem}.history-item__top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.history-item__value{color:var(--color-text);font-family:var(--font-mono);letter-spacing:-.03em;overflow-wrap:anywhere;margin-bottom:.8rem;font-size:1.8rem;font-weight:700;line-height:1.2}.history-item__remove{color:var(--btn-color);border:1px solid var(--glass-line);background:#ffffff1f;border-radius:999px;flex-shrink:0;padding:.45rem .85rem;font-size:1.2rem;font-weight:700}.history-item__meta{color:var(--color-text-light);flex-wrap:wrap;gap:.7rem 1.1rem;font-size:1.3rem;font-weight:700;display:flex}.history-item__strength{padding-left:1rem;position:relative}.history-item__strength:before{content:"";background:currentColor;border-radius:50%;width:.45rem;height:.45rem;position:absolute;top:50%;left:0;transform:translateY(-50%)}.history-item__strength--strong{color:var(--checkbox-color)}.history-item__strength--medium{color:var(--color-text-light)}.history-item__strength--weak{color:#842a2a}.sidebar-empty{border:1px dashed var(--glass-line);background:#ffffff1f;border-radius:1.8rem;padding:1.4rem}.sidebar-empty h3{color:var(--color-text);margin-bottom:.45rem;font-size:1.55rem;font-weight:800}.sidebar-empty p{color:var(--color-text-light);font-size:1.45rem}.sidebar-burn{width:100%;color:var(--btn-color);border:1px solid var(--glass-line);background:#ffffff1f;border-radius:1.5rem;margin-top:.95rem;padding:1.15rem 1.4rem;font-size:1.5rem;font-weight:800}.sidebar-burn:disabled{opacity:.5;cursor:not-allowed}.app-background{z-index:-1;width:100%;height:100vh;position:fixed;inset:0}.app-background:after{content:"";background:var(--app-overlay);position:absolute;inset:0}.app-background img{object-fit:cover;filter:saturate(105%);width:100%;height:100%;transform:scale(1.04)}.password__types{border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff1f;border-radius:999px;justify-content:center;align-items:center;width:fit-content;max-width:100%;margin:0 0 1.6rem;padding:.35rem;display:inline-flex}.password__types button{min-width:14rem;color:var(--color-text);border:none;border-radius:999px;padding:1rem 1.5rem;font-size:1.5rem;font-weight:700}.password__types button.active{color:#f7fbf8;background:linear-gradient(180deg, color-mix(in srgb, var(--checkbox-color) 92%, white 8%), var(--checkbox-color));box-shadow:inset 0 1px #ffffff38}form{flex-direction:column;gap:1rem;width:100%;max-width:none;margin:1.8rem 0 0;display:flex}.form__intro{text-align:left;max-width:56rem}.form__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--checkbox-color);margin-bottom:.45rem;font-size:1.15rem;font-weight:800}.form__title{letter-spacing:-.03em;margin-bottom:.55rem;font-size:2.1rem;line-height:1.1}.form__subtitle{max-width:52ch;color:var(--color-text-light);font-size:1.45rem;line-height:1.55}.settings-group{border:1px solid var(--glass-line);background:linear-gradient(#ffffff1f,#ffffff0a),#ffffff0d;border-radius:2.4rem;width:100%;padding:0 1.6rem;box-shadow:inset 0 1px #ffffff29}.form__field{text-align:left;border-bottom:1px solid var(--glass-line);width:100%;padding:1.3rem 0}.form__field:last-child{border-bottom:none}.form__field--range{padding-top:1.5rem;padding-bottom:1.5rem}.form__field--stacked{flex-direction:column;gap:.85rem;display:flex}.form__field-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.form__label{font-size:1.55rem;font-weight:700}.form__value{color:var(--checkbox-color);flex-shrink:0;font-size:1.45rem;font-weight:700}.theme{position:fixed;bottom:1.4rem;right:1.4rem}.theme button{border:1px solid var(--glass-strong-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff2e;border-radius:50%;width:4.8rem;height:4.8rem;padding:0}input[type=checkbox]{display:none}.label__checkbox{cursor:pointer;min-height:2.2rem;color:var(--color-text);flex-wrap:wrap;align-items:center;gap:.75rem;padding-left:3.4rem;font-weight:650;line-height:1.45;display:flex;position:relative}.field__example{border:1px solid color-mix(in srgb, var(--glass-line) 85%, transparent);color:var(--color-text-light);background:#ffffff14;border-radius:999px;padding:.3rem .75rem;font-size:1.25rem;font-weight:700;text-decoration:line-through}.field__example.tachado{-webkit-text-decoration:unset;text-decoration:unset}.label__checkbox:before{content:"";border:1px solid var(--glass-strong-line);background:#ffffff14;border-radius:.6rem;width:2rem;height:2rem;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:inset 0 1px #ffffff29}.label__checkbox:after{content:"✓";color:#fff;place-content:center;width:2rem;height:2rem;font-size:1.5rem;font-weight:800;display:none;position:absolute;top:50%;left:0;transform:translateY(-50%)}input[type=checkbox]:checked+.label__checkbox:before{background:linear-gradient(180deg, color-mix(in srgb, var(--checkbox-color) 92%, white 8%), var(--checkbox-color));border-color:#0000}input[type=checkbox]:checked+.label__checkbox:after{display:grid}input[type=checkbox]:checked+.label__checkbox .field__example{-webkit-text-decoration:unset;text-decoration:unset}input[type=checkbox]:checked+.label__checkbox .field__example.tachado{text-decoration:line-through}.password__container{text-align:left;width:100%;font-family:var(--font-mono);color:#18211b;background:var(--password-background);border:1px solid var(--glass-strong-line);border-radius:2rem;grid-template-columns:minmax(0,1fr) 4rem 4rem;align-items:start;gap:.55rem;margin:0 auto;padding:.2rem .8rem;display:grid;position:relative;box-shadow:inset 0 1px #ffffff80,0 10px 24px #1b261f14}.password__container button{background:#ffffff5c;border:1px solid #0000;border-radius:1.4rem;align-self:start;width:4rem;height:4rem;padding:0;overflow:visible}.password__container>button{margin-top:.6rem}.password__text{letter-spacing:-.03em;flex-wrap:wrap;align-items:center;min-height:5.6rem;padding:.45rem .75rem .45rem .35rem;font-size:clamp(1.5rem,1.8vw,2rem);line-height:1.24;display:flex}.password__text span{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-khtml-user-select:none;display:inline-block}.password__text span.to-select{white-space:normal;word-wrap:break-word;overflow-wrap:break-word;color:#0000;-webkit-touch-callout:unset;width:calc(100% - 10.8rem);-webkit-user-select:unset;-khtml-user-select:unset;-moz-user-select:unset;-ms-user-select:unset;user-select:unset;display:block;position:absolute}.copy-button{place-items:center;transition:transform .18s,background-color .18s,box-shadow .18s,border-color .18s;display:grid}.copy-button__icon{grid-area:1/1;place-items:center;transition:opacity .18s,transform .22s cubic-bezier(.22,1,.36,1);display:grid}.copy-button__icon svg{display:block}.copy-button__icon--copy{opacity:1;transform:translateY(0)scale(1)}.copy-button__icon--check{opacity:0;transform:translateY(.4rem)scale(.82)}.copy-button.is-copied{border-color:color-mix(in srgb, var(--checkbox-color) 36%, transparent);background-color:color-mix(in srgb, var(--btn-color-hover) 92%, white 8%);box-shadow:0 0 0 .2rem color-mix(in srgb, var(--checkbox-color) 10%, transparent)}.copy-button.is-copied .copy-button__icon--copy{opacity:0;transform:translateY(-.4rem)scale(.82)}.copy-button.is-copied .copy-button__icon--check{opacity:1;transform:translateY(0)scale(1)}.char__letter{color:#70f}.char__number{color:#da3eda}.char__symbol{color:#248f44}.error{text-align:left;color:#842a2a;background:#a93e3e1a;border:1px solid #a93e3e33;border-radius:1.6rem;width:100%;margin:1rem 0 0;padding:1rem 1.2rem}.error strong{margin-bottom:.3rem;font-size:1.4rem;display:block}.error p{font-size:1.35rem;line-height:1.5}.form__text-input{border:1px solid var(--glass-line);width:100%;color:var(--color-text);font-family:var(--font-mono);background:#ffffff26;border-radius:1.4rem;padding:1.05rem 1.1rem;font-size:1.5rem}.form__text-input::placeholder{color:color-mix(in srgb, var(--color-text-light) 82%, white 18%)}.form__help{max-width:52ch;color:var(--color-text-light);font-size:1.3rem;line-height:1.55}input[type=range]{appearance:none}.custom-range-container{grid-template-columns:3rem minmax(0,1fr) 3rem;align-items:center;gap:.9rem;margin-top:1rem;display:grid}.custom-range-container button{border:1px solid var(--glass-line);background:#ffffff29;border-radius:999px;width:3rem;height:3rem;padding:0}.custom-range-container button svg{width:1.8rem;height:1.8rem}.custom-range-slider{opacity:.92;border-radius:999px;outline:none;width:100%;max-width:none;height:.55rem}.custom-range-slider:hover{opacity:1}.custom-range-slider::-webkit-slider-thumb{appearance:none;background:var(--checkbox-color);cursor:pointer;width:1.9rem;height:1.9rem;box-shadow:0 0 0 .32rem color-mix(in srgb, var(--checkbox-color) 16%, transparent);border-radius:50%}.custom-range-slider::-moz-range-thumb{background:var(--checkbox-color);cursor:pointer;border:none;border-radius:50%;width:1.9rem;height:1.9rem}.range-value{text-align:center;min-width:4rem}@keyframes rotateX{0%{transform:rotateX(0)}to{transform:rotateX(360deg)}}span.rotateX{animation:rotateX var(--speed) linear infinite}@media screen and (width<=980px){.app-shell{grid-template-columns:1fr;gap:1.8rem}.app-sidebar{border-top:1px solid var(--glass-line);border-left:none;padding-top:1.8rem;padding-left:0}}@media screen and (width<=768px){#root{padding:2rem 1.2rem 5.2rem}.app-header{margin-bottom:1.6rem}.app-header__description{font-size:1.6rem}.app-shell{border-radius:2.4rem;padding:1.4rem}.sidebar-card{border-radius:2rem;padding:1.5rem}.sidebar-control{grid-template-columns:1fr}.password__types{width:100%;display:flex}.password__types button{flex:1;min-width:0;padding:.95rem 1rem}.settings-group{border-radius:2rem;padding:0 1.2rem}.form__field-head{flex-direction:column;align-items:flex-start}.password__container{border-radius:1.8rem;grid-template-columns:minmax(0,1fr) 3.8rem 3.8rem;padding:.65rem}.password__container button{border-radius:1.2rem;width:3.8rem;height:3.8rem}.password__text{min-height:5.1rem;font-size:clamp(1.8rem,6vw,2.3rem)}.password__text span.to-select{width:calc(100% - 9.8rem)}.sidebar-card h2{font-size:2rem}.history-item__value{font-size:1.65rem}}:root{--font-sans:"Mulish", "Avenir Next", "Trebuchet MS", "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", "JetBrains Mono", "Consolas", "Liberation Mono", monospace;font-family:var(--font-sans);font-optical-sizing:auto;letter-spacing:.2px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-background:#dbe7de;--color-background-secondary:#f2f7f36b;--password-background:#f8fbf8b8;--color-text:#1f2a22;--color-text-light:#617065;--btn-color:#30493a;--btn-color-hover:#5576631f;--checkbox-color:#53888a;--glass-line:#4d6c5829;--glass-strong-line:#4d6c583d;--glass-highlight:#ffffff8f;--glass-shadow:0 3rem 8rem #18231c2e;--app-overlay:linear-gradient(180deg, #f3f8f438, #dde9e0bd);font-style:normal;font-weight:400;line-height:1.5}[data-theme=dark]{--color-background:#101712;--color-background-secondary:#121b1670;--password-background:#ecf2edd1;--color-text:#edf4ef;--color-text-light:#a8b7ad;--btn-color:#deebe2;--btn-color-hover:#8fb49c1f;--checkbox-color:#8fb49c;--glass-line:#d3e7da24;--glass-strong-line:#d3e7da38;--glass-highlight:#ffffff24;--glass-shadow:0 3rem 8rem #0000006b;--app-overlay:linear-gradient(180deg, #090e0b42, #0c120ed1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{scroll-behavior:smooth;font-size:62.5%}body{background-color:var(--color-background);color:var(--color-text);font-size:2rem}@media screen and (width<=768px){body{font-size:1.6rem}h1{line-height:1.2}}a{color:unset;text-decoration:none}img,a,label{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-khtml-user-select:none}button{color:var(--btn-color);font-family:var(--font-sans);font-optical-sizing:auto;letter-spacing:.2px;font-synthesis:none;text-rendering:optimizelegibility;border:1px solid var(--btn-color);background-color:unset;border-radius:2rem;place-content:center;padding:.5rem 1rem;font-size:1.6rem;font-style:normal;font-weight:400;line-height:1.5;display:grid}button:hover{background-color:var(--btn-color-hover);cursor:pointer}button,input,label{transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s}button:focus-visible,input:focus-visible{box-shadow:0 0 0 .3rem color-mix(in srgb, var(--checkbox-color) 22%, transparent);outline:none}
