*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{background:#fff;border-radius:16px;box-shadow:0 10px 30px #00000014;padding:24px;max-width:900px;width:100%;display:flex;flex-direction:column;min-height:600px;margin:0 auto}header{text-align:center;margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.header-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:10px}.logo{display:flex;align-items:center;justify-content:center;gap:10px;grid-column:2}.logo-icon{font-size:2em;animation:pulse 2s infinite}.logo-text{font-size:2em;font-weight:700;background:linear-gradient(45deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.tagline{color:#6b7280;font-size:.95em}.btn-switch-page{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;text-decoration:none;border-radius:12px;font-weight:600;font-size:.9em;box-shadow:0 4px 12px #10b9814d;transition:all .3s cubic-bezier(.4,0,.2,1);justify-self:end;grid-column:3}.btn-switch-page:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.main-content{display:flex;flex-direction:column;gap:20px;flex:1}.input-section{background:#f8f9fa;padding:20px;border-radius:12px;border:1px solid #e9ecef}.input-section label{display:flex;align-items:center;gap:8px;font-weight:600;color:#374151;margin-bottom:10px}.label-icon{font-size:1.2em}.textarea-wrapper{display:flex;border:2px solid #e5e7eb;border-radius:10px;overflow:hidden;transition:all .3s;min-height:120px}.textarea-wrapper:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.line-numbers{background:#f3f4f6;color:#9ca3af;padding:12px 8px;text-align:right;font-family:SF Mono,Monaco,monospace;font-size:14px;line-height:1.428571;-webkit-user-select:none;user-select:none;min-width:35px;overflow-y:hidden}.line-numbers .line-num{padding:0 4px;line-height:1.428571}textarea{flex:1;padding:12px;border:none;font-family:SF Mono,Monaco,monospace;font-size:14px;resize:none;line-height:1.428571;background:transparent}textarea:focus{outline:none}.action-buttons{display:flex;gap:8px;margin-top:16px}.btn-generate,.btn-clear{padding:12px 24px;border:none;border-radius:10px;font-size:.95em;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.btn-generate{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex:1;box-shadow:0 2px 8px #667eea33}.btn-generate:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-generate:disabled{opacity:.6;cursor:not-allowed}.btn-clear{background:#fef2f2;color:#dc2626;width:90px}.btn-clear:hover{background:#fee2e2;transform:translateY(-1px)}.codes-display{background:#fafafa;border-radius:12px;padding:16px;border:1px solid #e5e7eb;flex:1}.codes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.codes-header h3{color:#1f2937;font-size:1.05em;font-weight:700}.timer{display:flex;align-items:center;gap:5px;color:#6b7280;font-size:.9em}.timer-icon{animation:rotate 30s linear infinite}.codes-list{display:flex;flex-direction:column;gap:10px}.code-item{background:#fff;padding:12px 16px 12px 48px;border-radius:10px;border:1px solid #e5e7eb;display:flex;align-items:center;gap:0;transition:all .3s ease;position:relative;min-height:56px}.code-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f;transform:translateY(-1px)}.code-value{transition:all .2s ease}.line-number{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#6b7280;font-weight:600;padding:3px 6px;border-radius:6px;font-size:.75em;min-width:26px;text-align:center;position:absolute;left:10px;top:50%;transform:translateY(-50%)}.code-info{display:flex;align-items:center;gap:16px;flex:1;min-width:0;justify-content:space-between}.code-secret{font-family:Courier New,monospace;font-size:.8em;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:120px;max-width:300px}.code-value{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:Courier New,monospace;font-size:1.4em;font-weight:800;letter-spacing:2px;line-height:1;flex-shrink:0;white-space:nowrap;min-width:90px;transition:opacity .2s ease}.copy-single{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #e5e7eb;border-radius:8px;padding:6px 14px;font-size:.85em;font-weight:600;color:#6b7280;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:5px;height:32px;white-space:nowrap;flex-shrink:0;margin-left:12px}.copy-single:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent;transform:translateY(-1px)}.copy-single.copied{background:#10b981;color:#fff;border-color:transparent}.empty-message{text-align:center;padding:80px 40px;color:#9ca3af;display:flex;flex-direction:column;align-items:center}.empty-message p{max-width:400px;line-height:1.6;font-size:1.05em;color:#6b7280}.empty-icon{font-size:4em;display:block;margin-bottom:20px;opacity:.7}.settings-section{margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.toggle-group{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.toggle-label{display:flex;align-items:center;gap:8px;cursor:pointer}.toggle-slider{width:44px;height:24px;background:#e5e7eb;border-radius:24px;position:relative;transition:background .3s}.toggle-slider:after{content:"";position:absolute;width:18px;height:18px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .3s}input[type=checkbox]:checked+.toggle-slider{background:#667eea}input[type=checkbox]:checked+.toggle-slider:after{transform:translate(20px)}input[type=checkbox]{display:none}.toggle-text{color:#6b7280;font-size:.85em;font-weight:500}.toast-notification{position:fixed;bottom:24px;right:24px;background:#10b981f2;color:#fff;padding:12px 20px;border-radius:12px;font-size:.9em;font-weight:600;box-shadow:0 4px 12px #00000026;z-index:1000;opacity:0;transform:translateY(20px);transition:all .3s}.toast-notification.show{opacity:1;transform:translateY(0)}.toast-notification.toast-error{background:#dc2626f2}.toast-notification.toast-info{background:#3b82f6f2}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}body.horizontal-layout .main-content{display:grid;grid-template-columns:minmax(340px,380px) 1fr;gap:20px;align-items:start}body.horizontal-layout .codes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:12px}body.dark-mode{background:linear-gradient(180deg,#0f172a,#1e293b)}body.dark-mode .container{background:#1e293bf2;border-color:#4755694d}body.dark-mode header{border-bottom-color:#4755694d}body.dark-mode .input-section,body.dark-mode .codes-display{background:linear-gradient(135deg,#1e293bcc,#0f172acc);border-color:#4755694d}body.dark-mode .code-item{background:#1e293be6;border-color:#4755694d}body.dark-mode .code-item:hover{border-color:#667eea80}body.dark-mode .line-number{background:#4755694d;color:#94a3b8}body.dark-mode .code-secret,body.dark-mode .toggle-text,body.dark-mode .tagline{color:#94a3b8}body.dark-mode textarea{background:#1e293b80;color:#e2e8f0}body.dark-mode .line-numbers{background:#4755694d;color:#64748b}body.dark-mode label{color:#cbd5e1}body.dark-mode h3{color:#e2e8f0}body.dark-mode .copy-single{background:linear-gradient(135deg,#47556980,#33415580);border-color:#47556980;color:#cbd5e1}body.dark-mode .btn-clear{background:#dc26261a;color:#f87171}body.dark-mode .settings-section{border-top-color:#4755694d}@media (max-width: 768px){.container{padding:20px}.header-top{grid-template-columns:1fr;gap:15px}.logo{grid-column:1}.btn-switch-page{grid-column:1;justify-self:center}.logo-text{font-size:1.5em}.code-item{padding:10px 14px 10px 42px}.code-secret{font-size:.7em;min-width:100px}.code-value{font-size:1.25em}body.horizontal-layout .main-content{grid-template-columns:1fr}}
