:root{--color-primary:#533afd;--color-primary-hover:#665efd;--color-primary-active:#422ed4;--color-background:#fff;--color-surface:#f8fafd;--color-surface-accent:#e5edf5;--color-text-primary:#061b31;--color-text-body:#000;--color-text-muted:#50617a;--color-text-inverse:#fff;--color-border:#e5edf5;--color-accent-green:#15be53;--color-accent-orange:#ff6118;--color-accent-pink:#ffe0ef;--font-sans:sohne-var,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-full:100px;--shadow-card:hsla(0,0%,9%,.06) 0 3px 6px 0;--shadow-hover:hsla(0,0%,9%,.08) 0 15px 35px 0;--shadow-modal:rgba(50,50,93,.12) 0 16px 32px 0;--shadow-focus:rgba(99,91,255,.1) 0 0 0 3px;--container-width:1280px;--header-height:72px}*,:after,:before{box-sizing:border-box}html{min-width:320px;background:var(--color-background);color:var(--color-text-body);font-family:var(--font-sans);font-size:16px;line-height:1.4;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;background:radial-gradient(circle at 16% 0,rgba(255,224,239,.9),transparent 28rem),radial-gradient(circle at 88% 8%,rgba(83,58,253,.12),transparent 24rem),var(--color-background)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}::-moz-selection{background:#533afd2e;color:var(--color-text-primary)}::selection{background:#533afd2e;color:var(--color-text-primary)}:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.site-shell{display:flex;min-height:100vh;flex-direction:column}.site-main{flex:1}.container{width:min(100% - 32px,var(--container-width));margin-inline:auto}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(229,237,245,.82);background:#ffffffdb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.site-header__inner{display:flex;min-height:var(--header-height);align-items:center;justify-content:space-between;gap:var(--space-6)}.brand-link{display:inline-flex;min-height:44px;align-items:center;gap:var(--space-3);color:var(--color-text-primary);font-size:16px;font-weight:400}.brand-mark{display:grid;width:36px;height:36px;place-items:center;border-radius:var(--radius-md);background:var(--color-background);box-shadow:var(--shadow-card);overflow:hidden}.brand-mark img{display:block;width:100%;height:100%}.site-nav{display:flex;align-items:center;gap:var(--space-2)}.nav-link{display:inline-flex;min-height:44px;align-items:center;border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;padding:var(--space-3) var(--space-4);transition:background-color .2s ease-out,color .2s ease-out}.nav-link:hover,.nav-link[aria-current=page]{background:var(--color-surface);color:var(--color-primary)}.hero{position:relative;overflow:hidden;padding:var(--space-16) 0 var(--space-12)}.hero:before{position:absolute;inset:0 0 auto;height:240px;content:"";background:linear-gradient(105deg,#ff611842,#ffe0efe6 42%,#533afd3d);transform:skewY(-6deg) translateY(-112px);transform-origin:top left;z-index:-1}.hero__content{display:grid;max-width:760px;gap:var(--space-6)}.eyebrow{color:var(--color-primary);font-size:14px;line-height:1.3}.error-page h1,.hero h1{margin:0;color:var(--color-text-primary);font-size:clamp(32px,7vw,48px);font-weight:300;letter-spacing:0;line-height:1.03}.error-page p,.hero p{margin:0;max-width:640px;color:var(--color-text-muted);font-size:18px;line-height:1.4}.tools-section{padding:var(--space-16) 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-8)}.section-heading h2{margin:0;color:var(--color-text-primary);font-size:26px;font-weight:400;line-height:1.2}.section-heading p{margin:0;color:var(--color-text-muted);font-size:14px;line-height:1.3}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4)}.tool-card{display:flex;min-height:88px;align-items:center;gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);box-shadow:var(--shadow-card);color:var(--color-text-primary);padding:var(--space-4);transition:border-color .2s ease-out,box-shadow .25s ease-out,color .2s ease-out,transform .25s ease-out}.tool-card:hover{border-color:#533afd4d;box-shadow:var(--shadow-hover);color:var(--color-primary);transform:translateY(-2px)}.tool-card__icon{display:inline-grid;flex:0 0 auto;width:44px;height:44px;place-items:center;border-radius:var(--radius-md);background:linear-gradient(135deg,#ff611821,#533afd1f);color:var(--color-primary);font-size:24px}.tool-card__content{min-width:0}.tool-card__name{display:block;min-width:0;font-size:15px;line-height:1.3}.tool-card__description{display:block;margin-top:var(--space-1);color:var(--color-text-muted);font-size:13px;line-height:1.3}.tool-card__index{display:inline-grid;flex:0 0 auto;margin-left:auto;width:34px;height:34px;place-items:center;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:12px}.site-footer,.tool-card__index{background:var(--color-surface);color:var(--color-text-muted)}.site-footer{border-top:1px solid var(--color-border)}.site-footer__inner{display:flex;min-height:96px;align-items:center;justify-content:space-between;gap:var(--space-6);font-size:14px}.site-footer__links{display:flex;flex-wrap:wrap;gap:var(--space-4)}.site-footer a{color:var(--color-text-primary);transition:color .2s ease-out}.site-footer a:hover{color:var(--color-primary)}.button-primary,.button-secondary{display:inline-flex;min-height:44px;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:16px;transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out,transform .1s ease-out}.button-primary:disabled,.button-secondary:disabled{border-color:var(--color-border);background:var(--color-surface-accent);color:#95a4ba;cursor:not-allowed;transform:none}.button-primary{border:0;background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-4) var(--space-6)}.button-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.button-secondary{border:1px solid var(--color-border);background:transparent;color:var(--color-primary);padding:var(--space-3) var(--space-5)}.button-secondary:hover{border-color:#533afd4d;background:#533afd0d}.hds-link{width:-moz-max-content;width:max-content;color:var(--color-primary);font-size:14px;transition:text-decoration-color .2s ease-out}.hds-link:hover{text-decoration:underline;text-decoration-color:#533afd80}.tool-page{padding:var(--space-16) 0}.tool-page__grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(360px,1fr);align-items:start;gap:var(--space-8)}.tool-intro{display:grid;gap:var(--space-5);padding-top:var(--space-6)}.tool-intro h1{margin:0;color:var(--color-text-primary);font-size:clamp(32px,7vw,48px);font-weight:300;letter-spacing:0;line-height:1.03}.tool-intro p{margin:0;max-width:560px;color:var(--color-text-muted);font-size:18px;line-height:1.4}.generator-card{display:grid;gap:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#ffffffeb;box-shadow:var(--shadow-card);padding:var(--space-6)}.password-output{min-height:88px;overflow-wrap:anywhere;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-family:var(--font-mono);font-size:18px;line-height:1.4;padding:var(--space-5)}.password-output__empty{color:var(--color-text-muted)}.generator-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.control-group{display:grid;gap:var(--space-4);margin:0;border:0;padding:0}.control-group legend,.control-row label{color:var(--color-text-primary);font-size:14px}.control-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.control-row span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:13px}.range-input{width:100%;accent-color:var(--color-primary)}.character-options{grid-template-columns:repeat(2,minmax(0,1fr))}.character-options legend{grid-column:1/-1}.check-option{display:flex;min-height:58px;align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text-primary);cursor:pointer;padding:var(--space-3);transition:border-color .2s ease-out,box-shadow .2s ease-out}.check-option:hover{border-color:#533afd4d}.check-option input{width:18px;height:18px;accent-color:var(--color-primary)}.check-option span span{display:block;font-size:14px}.check-option small{display:block;color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px;line-height:1.3}.strength-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);border-radius:var(--radius-md);background:linear-gradient(90deg,#15be531f,#533afd14);color:var(--color-text-muted);font-size:14px;padding:var(--space-4)}.strength-bar strong{color:var(--color-text-primary);font-weight:400}.error-page{display:grid;min-height:calc(100vh - var(--header-height));place-items:center;padding:var(--space-16) 0}.error-page__panel{display:grid;max-width:640px;gap:var(--space-6)}.error-page__code{width:-moz-max-content;width:max-content;border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-primary);font-family:var(--font-mono);font-size:14px;padding:var(--space-2) var(--space-4)}.error-page__actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}@media(max-width:639px){.container{width:min(100% - 24px,var(--container-width))}.section-heading,.site-footer__inner,.site-header__inner{align-items:flex-start;flex-direction:column}.site-header__inner{gap:var(--space-2);padding:var(--space-3) 0}.site-nav{width:100%;justify-content:space-between}.nav-link{padding-inline:var(--space-3)}.hero{padding:var(--space-12) 0 var(--space-8)}.error-page p,.hero p{font-size:16px}.tools-section{padding:var(--space-12) 0}.tools-grid{grid-template-columns:1fr}.tool-page{padding:var(--space-12) 0}.tool-page__grid{grid-template-columns:1fr}.tool-intro{padding-top:0}.tool-intro p{font-size:16px}.generator-card{padding:var(--space-4)}.password-output{font-size:15px}.generator-actions,.generator-actions .button-primary,.generator-actions .button-secondary{width:100%}.character-options{grid-template-columns:1fr}.site-footer__inner{padding:var(--space-6) 0}}
