:root{font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;color:#182435;background:#f5f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #7c9aff;outline-offset:4px}header{height:88px;border-bottom:1px solid #e3e7ef;display:flex;align-items:center;justify-content:space-between;max-width:1240px;margin:auto;padding:0 40px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:#182435;font-size:14px;font-weight:800;letter-spacing:1px}.logo{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#2345ee;color:white;font-size:27px}.header-note{font-size:14px;color:#7b8493}main{max-width:1160px;margin:auto;padding:52px 40px 0}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;color:#2345ee}h1{font-size:40px;letter-spacing:-1.5px;margin:13px 0}h1 span{color:#2345ee}.heading>p{font-size:16px;color:#6e7887;margin:0 0 34px}.workspace{display:grid;grid-template-columns:1.16fr 1fr;gap:24px;align-items:start}.result-panel,.options-panel{border:1px solid #e0e6ef;border-radius:20px;background:white;padding:30px}.result-panel{background:#111f39;color:white;position:sticky;top:24px;min-height:418px;border-color:#111f39}.panel-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;color:#c2cada}.private-label{font-size:12px;border:1px solid #35435d;padding:6px 10px;border-radius:30px;color:#bdc8db}.password-box{display:flex;align-items:center;gap:16px;margin-top:43px;padding-bottom:28px;min-height:92px;border-bottom:1px solid #34415a}#password{flex:1;min-width:0;font:26px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;letter-spacing:.8px}.icon-button{flex-shrink:0;background:#293850;border:0;border-radius:10px;color:#d3ddf0;width:42px;height:42px;font-size:26px}.strength{margin:25px 0}.strength-top{display:flex;justify-content:space-between;font-size:14px;color:#a5b2c9}.strength-top strong{color:#a5e9c9}.meter{height:5px;background:#34415a;border-radius:5px;margin:12px 0;overflow:hidden}.meter span{display:block;height:100%;border-radius:5px;transition:width .25s}#strength-note{font-size:13px;color:#9eabc1;line-height:1.6;margin:0}.copy-button{display:flex;justify-content:center;gap:12px;background:#3559ff;color:#fff;border:0;border-radius:10px;width:100%;padding:16px;font-weight:700;font-size:16px}.copy-button:hover{background:#4667ff}.result-bottom{display:flex;justify-content:space-between;gap:12px;color:#8d9bb4;font-size:12px;margin-top:20px}.options-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8ecf2;padding-bottom:22px;margin-bottom:24px}h2{font-size:18px;margin:0}.options-heading>span{font-size:11px;letter-spacing:1px;color:#98a1af}.length-heading{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:600}.stepper{display:flex;align-items:center;border:1px solid #dfe4ec;border-radius:8px;height:36px}.stepper button{border:0;background:transparent;width:28px;color:#778297}.stepper input{appearance:textfield;border:0;width:40px;text-align:center;font-weight:700;background:transparent;color:#2345ee}.stepper input::-webkit-inner-spin-button{appearance:none}input[type=range]{width:100%;margin:22px 0 6px;accent-color:#2345ee;cursor:pointer}.range-label{display:flex;justify-content:space-between;font-size:12px;color:#939cab}.option-title{margin:26px 0 12px;font-weight:600;font-size:14px}.char-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.char-options label{border:1px solid #e1e6ee;border-radius:9px;display:flex;align-items:center;padding:13px 10px;gap:9px;cursor:pointer;font-size:14px}.char-options label:has(input:checked){background:#f2f5ff;border-color:#cdd7ff}.char-options small{font-size:12px;color:#858fa0;margin-left:3px}.char-options input{accent-color:#2345ee;width:16px;height:16px;margin:0;flex-shrink:0}.exclude{border-bottom:1px solid #e8ecf2;padding:20px 0 10px}.exclude label{display:flex;align-items:center;justify-content:space-between;cursor:pointer;margin-bottom:15px;font-size:14px}.exclude small{display:block;color:#8b95a5;font-size:12px;margin-top:5px}input[role=switch]{appearance:none;width:36px;height:21px;background:#ccd3df;border-radius:20px;position:relative;cursor:pointer;transition:background .2s}input[role=switch]:before{content:"";position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:white;transition:transform .2s}input[role=switch]:checked{background:#2345ee}input[role=switch]:checked:before{transform:translateX(15px)}.count-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;margin:20px 0}.count-row select{background:white;border:1px solid #dfe4ec;border-radius:8px;padding:8px 24px 8px 12px;color:#354158}.generate-button{background:#edf1ff;color:#2345ee;border:0;border-radius:10px;padding:15px;width:100%;font-weight:700;font-size:15px;display:flex;justify-content:center;gap:12px}.generate-button:hover{background:#e0e7ff}.tips{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:28px;padding:48px 0}.tip-intro h2{font-size:20px;line-height:1.65;margin-top:12px;letter-spacing:-.5px}.tip-num{color:#8b9ab2;font-size:12px;font-weight:700}h3{font-size:15px;margin:12px 0 8px}.tips p{font-size:14px;line-height:1.8;color:#7b8493;margin:0}footer{border-top:1px solid #e0e6ef;display:flex;justify-content:space-between;padding:23px 0;font-size:12px;color:#8b95a5}footer span:first-child{letter-spacing:1px;font-weight:700}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);padding:14px 24px;background:#182435;color:white;border-radius:12px;opacity:0;pointer-events:none;transition:.2s;max-width:90%;font-size:14px}#toast.show{opacity:1;transform:translate(-50%,0)}#error{font-size:14px;color:#c02e40}#batch{margin-top:30px;border-top:1px solid #34415a;padding-top:20px}.batch-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.batch-heading h2{font-size:15px}.batch-heading button,.batch-row button{border:0;border-radius:6px;padding:7px 10px;background:#293850;color:#dae3f3;font-size:13px}.batch-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #293850}.batch-row code{flex:1;min-width:0;overflow-wrap:anywhere;font-size:15px;line-height:1.6}@media(min-width:1100px){.heading{margin-top:8px}}@media(max-width:800px){header{height:70px;padding:0 24px}main{padding:34px 24px 0}.workspace{grid-template-columns:1fr}.result-panel{position:static;min-height:0}.password-box{margin-top:24px}.tips{grid-template-columns:1fr 1fr}.tip-intro h2 br{display:none}.tip-intro{grid-column:1/-1}.header-note{display:none}}@media(max-width:450px){main{padding:28px 16px 0}header{padding:0 16px}h1{font-size:32px}.result-panel,.options-panel{padding:23px 20px;border-radius:16px}.panel-top{flex-wrap:wrap}#password{font-size:23px}.tips{gap:22px;padding:34px 4px}.tips article:last-child{grid-column:1/-1}.result-bottom{flex-wrap:wrap}.char-options small{display:block;margin-left:0;margin-top:3px}footer{gap:18px;flex-wrap:wrap}}
