.light-theme .container{animation-duration:15s}.dark-theme .container{animation-duration:10s}.floating-shapes{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.floating-circle{background:radial-gradient(circle, var(--white1-transp) 0%, transparent 70%);border-radius:50%;animation:6s ease-in-out infinite float;position:absolute}.floating-circle-1{width:120px;height:120px;animation-duration:8s;animation-delay:0s;top:20%;left:10%}.floating-circle-2{width:80px;height:80px;animation-duration:10s;animation-delay:-2s;top:60%;right:15%}.floating-circle-3{width:150px;height:150px;animation-duration:12s;animation-delay:-4s;bottom:20%;left:60%}@keyframes float{0%,to{opacity:.3;transform:translateY(0)rotate(0)}33%{opacity:.6;transform:translateY(-20px)rotate(120deg)}66%{opacity:.4;transform:translateY(-10px)rotate(240deg)}}.section-tile{font-family:CutiveMono-Regular;font-weight:calc(var(--nav-size)*5);text-align:center;z-index:2;flex-grow:1;position:relative}.hero-section{margin-top:calc(var(--nav-size) * 2);position:relative}.hero-section:before{content:"";background:radial-gradient(circle, var(--bg-page-transp) 0%, transparent 70%);z-index:-1;width:200%;height:200%;animation:4s ease-in-out infinite pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes pulse{0%,to{opacity:.3;transform:translate(-50%,-50%)scale(1)}50%{opacity:.6;transform:translate(-50%,-50%)scale(1.1)}}#content-tile{padding:0 calc(var(--nav-size)*.2);padding-top:calc(var(--nav-size)*1);font-size:calc(var(--nav-size)*.4);color:var(--text-color);word-wrap:break-word;text-align:left;font-weight:700}#text-title{text-align:center;font-weight:bolder;font-size:calc(var(--nav-size)*.5);padding:calc(var(--nav-size)*.1);text-shadow:calc(var(--nav-size)*.025) calc(var(--nav-size)*.02) var(--border);margin-top:calc(var(--nav-size)*2);margin-bottom:calc(var(--nav-size)*2);position:relative;overflow:hidden}.typewriter{white-space:nowrap;display:inline-block}.cursor{color:var(--text-color);font-weight:400;animation:1s infinite blink;display:inline}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.fade-in-up{opacity:0;transition:all .6s;transform:translateY(30px)}.fade-in-up.visible{opacity:1;transform:translateY(0)}#text-body{font-size:calc(var(--nav-size)*.3);padding:calc(var(--nav-size)*.15);text-shadow:calc(var(--nav-size)*.025) calc(var(--nav-size)*.02) var(--border)}#text-subtext{font-size:calc(var(--nav-size)*.28);padding:calc(var(--nav-size)*.15);text-shadow:calc(var(--nav-size)*.025) calc(var(--nav-size)*.02) var(--border)}.calculator-section{animation:1s ease-out .5s both fadeInSection}@keyframes fadeInSection{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.passgen-calculator{background:linear-gradient(135deg, var(--white1-transp), var(--grey2-transp));border:1px solid var(--text-color);border-radius:calc(var(--nav-size) * .2);padding:calc(var(--nav-size) * .4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:600px;box-shadow:0 8px 25px var(--grey3-transp), inset 0 0 20px var(--white1-transp);margin:0 auto}.animate-in{opacity:0;animation:.8s forwards slideInUp;transform:translateY(20px)}@keyframes slideInUp{to{opacity:1;transform:translateY(0)}}.passgen-calculator-slider{margin-bottom:calc(var(--nav-size) * .4);text-align:center}#passgen-calculator-label{font-size:calc(var(--nav-size)*.3);color:var(--text-color);margin-bottom:calc(var(--nav-size) * .2);text-shadow:calc(var(--nav-size)*.025) calc(var(--nav-size)*.02) var(--border);font-weight:700;display:block}#passgen-calculator-slider{width:80%;height:calc(var(--nav-size)*.15);background:linear-gradient(90deg, var(--fg-blue), var(--fg-pink));border-radius:calc(var(--nav-size) * .1);cursor:pointer;outline:none;transition:all .3s}#passgen-calculator-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:calc(var(--nav-size)*.4);height:calc(var(--nav-size)*.4);background:linear-gradient(45deg, var(--fg-orange), var(--fg-mint));cursor:pointer;border-radius:50%;transition:all .3s;box-shadow:0 4px 12px #0000004d}#passgen-calculator-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 6px 16px #0006}.passgen-options-grid{gap:calc(var(--nav-size) * .3);margin-bottom:calc(var(--nav-size) * .4);grid-template-columns:repeat(2,1fr);display:grid}.passgen-calculator-checkholder{padding:calc(var(--nav-size) * .15);background:linear-gradient(45deg, var(--white1-transp), var(--grey1-transp));border:1px solid var(--text-color);border-radius:calc(var(--nav-size) * .1);justify-content:space-between;align-items:center;transition:all .3s;animation-delay:.1s;display:flex}.passgen-calculator-checkholder:hover{box-shadow:0 4px 12px var(--grey3-transp);transform:translateY(-2px)}.passgen-calculator-checkbox{-webkit-appearance:none;appearance:none;width:calc(var(--nav-size)*.35);height:calc(var(--nav-size)*.35);background:linear-gradient(45deg, var(--bg), var(--grey1));border:2px solid var(--fg-blue);border-radius:calc(var(--nav-size) * .05);cursor:pointer;transition:all .3s;position:relative}.passgen-calculator-checkbox:checked{background:linear-gradient(45deg, var(--fg-blue), var(--fg-mint));border-color:var(--fg-orange);transform:scale(1.1)}.passgen-calculator-checkbox:after{content:"✓";color:#fff;font-size:calc(var(--nav-size) * .2);opacity:0;font-weight:700;transition:opacity .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.passgen-calculator-checkbox:checked:after{opacity:1}.passgen-buttons{gap:calc(var(--nav-size) * .2);margin-bottom:calc(var(--nav-size) * .4);justify-content:center;display:flex}.primary-btn,.secondary-btn{padding:calc(var(--nav-size) * .2) calc(var(--nav-size) * .4);border-radius:calc(var(--nav-size) * .15);font-family:CutiveMono-Regular;font-size:calc(var(--nav-size) * .25);cursor:pointer;align-items:center;gap:calc(var(--nav-size) * .1);text-shadow:1px 1px 2px #0003;border:none;font-weight:700;transition:all .3s cubic-bezier(.25,.46,.45,.94);display:flex}.primary-btn{background:linear-gradient(45deg, var(--fg-blue), var(--fg-mint));color:#fff}.primary-btn:hover{background:linear-gradient(45deg, var(--fg-mint), var(--fg-blue));transform:translateY(-3px);box-shadow:0 8px 20px #007bff4d}.secondary-btn{background:linear-gradient(45deg, var(--fg-orange), var(--fg-pink));color:#fff}.secondary-btn:hover:not(:disabled){background:linear-gradient(45deg, var(--fg-pink), var(--fg-orange));transform:translateY(-3px);box-shadow:0 8px 20px #ff6c374d}.secondary-btn:disabled{background:var(--grey2);color:var(--grey4);cursor:not-allowed;transform:none}.passgen-output-section{text-align:center}#passgen-calculator-output{width:100%;height:calc(var(--nav-size) * 1.5);padding:calc(var(--nav-size) * .2);font-family:CutiveMono-Regular,monospace;font-size:calc(var(--nav-size) * .25);border:2px solid var(--fg-blue);border-radius:calc(var(--nav-size) * .1);background:linear-gradient(135deg, var(--bg), var(--white1-transp));color:var(--text-color);resize:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);word-break:break-all;outline:none;line-height:1.4;transition:all .3s}#passgen-calculator-output:focus{border-color:var(--fg-orange);box-shadow:0 0 15px var(--fg-blue-transp);transform:scale(1.02)}#passgen-calculator-output::placeholder{color:var(--grey3);font-style:italic}#passgen-calculator-outcome{margin-top:calc(var(--nav-size) * .3);font-size:calc(var(--nav-size) * .25);padding:calc(var(--nav-size) * .15);border-radius:calc(var(--nav-size) * .1);min-height:calc(var(--nav-size) * .6);justify-content:center;align-items:center;font-weight:700;transition:all .3s;display:flex}#passgen-calculator-outcome.success{background:linear-gradient(45deg, var(--fg-mint), var(--fg-blue));color:#fff;animation:.6s successPulse}#passgen-calculator-outcome.error{background:linear-gradient(45deg, var(--fg-orange), var(--fg-pink));color:#fff;animation:.6s errorShake}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes errorShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.source-section{margin-top:calc(var(--nav-size) * .5)}.source-link{text-decoration:none}.source-btn{background:linear-gradient(45deg, var(--text-color), var(--grey3));color:var(--text-color-inv);border:2px solid var(--text-color);border-radius:calc(var(--nav-size) * .15);padding:calc(var(--nav-size) * .2) calc(var(--nav-size) * .4);font-family:CutiveMono-Regular;font-size:calc(var(--nav-size) * .22);cursor:pointer;align-items:center;gap:calc(var(--nav-size) * .1);margin:0 auto;font-weight:700;transition:all .3s cubic-bezier(.25,.46,.45,.94);display:flex}.source-btn:hover{box-shadow:0 8px 20px var(--grey3-transp);filter:brightness(1.2);transform:translateY(-3px)scale(1.05)}.source-btn:active{transition-duration:.1s;transform:translateY(-1px)scale(1.02)}.source-icon{font-size:calc(var(--nav-size) * .25);animation:2s infinite bounce}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-1px)}}@media (orientation:landscape){#content-tile{text-align:left;padding:0 calc(var(--nav-size)*3);padding-top:calc(var(--nav-size)*1)}#text-title{text-align:left;padding-left:20%}.typewriter{text-align:left;display:inline-block}#text-body,#text-subtext{padding-left:20%}.floating-circle-1{animation-duration:12s;left:5%}.floating-circle-2{animation-duration:14s;right:10%}.floating-circle-3{animation-duration:16s;left:70%}}@media (max-width:768px){.floating-circle,.hero-section:before{display:none}.passgen-options-grid{grid-template-columns:1fr}.passgen-buttons{flex-direction:column;align-items:center}.primary-btn,.secondary-btn{width:100%;max-width:300px}.container{animation-duration:20s}}@media (max-width:480px){.passgen-calculator{margin:0 calc(var(--nav-size) * .2);padding:calc(var(--nav-size) * .3)}#passgen-calculator-slider{width:90%}.passgen-calculator-checkholder{gap:calc(var(--nav-size) * .1);text-align:center;flex-direction:column}}@media (prefers-reduced-motion:reduce){.container,.floating-circle{animation:none}.typewriter{border-right:none;animation:none}.cursor,.source-icon,.hero-section:before{animation:none}}.passgen-calculator-checkbox:focus{outline:2px solid var(--fg-orange);outline-offset:2px}.primary-btn:focus,.secondary-btn:focus,.source-btn:focus{outline:2px solid var(--text-color);outline-offset:2px}
