*,body{margin:0}.container,.header{box-shadow:var(--shadow);width:100%}*,.input-group input{box-sizing:border-box}.header,button{background-color:var(--primary-color)}.header h1,button{font-weight:500;letter-spacing:.5px}#result,.container h2,.header{text-align:center}#result,.input-group input,body{background-color:var(--bg-light)}#countdown,#totp{margin-bottom:16px}:root{--primary-color:#4285F4;--primary-hover:#3367D6;--secondary-color:#34A853;--accent-color:#FBBC05;--danger-color:#EA4335;--text-dark:#202124;--text-light:#5f6368;--bg-light:#f8f9fa;--bg-white:#ffffff;--shadow:0 2px 10px rgba(0, 0, 0, 0.1)}*{padding:0}body{font-family:'Google Sans','Segoe UI',Roboto,Arial,sans-serif;display:flex;flex-direction:column;min-height:100vh;color:var(--text-dark);line-height:1.5;-webkit-text-size-adjust:100%}.header{color:#fff;padding:24px 16px;position:relative;z-index:10}.header h1{margin:0;font-size:26px}.container{background-color:var(--bg-white);padding:32px;border-radius:16px;max-width:450px;margin:30px auto;flex:1;transition:transform .2s,box-shadow .2s}.container:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.12)}.container h2{margin-top:0;margin-bottom:24px;font-size:24px;font-weight:500;color:var(--primary-color)}.input-group{margin-bottom:24px;width:100%}.input-group label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:var(--text-light)}.input-group input,button{padding:14px;font-size:16px;-webkit-appearance:none;transition:.3s;width:100%}.input-group input{border:1px solid #dadce0;border-radius:8px;color:var(--text-dark)}.input-group input:focus{border-color:var(--primary-color);outline:0;box-shadow:0 0 0 2px rgba(66,133,244,.2);background-color:var(--bg-white)}button{color:#fff;border:none;border-radius:8px;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.15);-webkit-tap-highlight-color:transparent}button:hover{background-color:var(--primary-hover);box-shadow:0 4px 8px rgba(0,0,0,.2)}button:active{transform:translateY(1px);box-shadow:0 1px 3px rgba(0,0,0,.1)}#result{margin-top:30px;display:none;padding:24px;border-radius:12px;border:1px solid #dadce0;transition:.3s;width:100%}#result.visible{animation:.5s fadeIn}#totp{font-size:40px;font-weight:600;color:var(--text-dark);letter-spacing:3px;font-family:'Roboto Mono',monospace}#countdown,#error,.footer a{font-weight:500}#countdown{font-size:16px;color:var(--text-light)}#error,.footer{text-align:center;font-size:14px;width:100%}#copy-btn{margin-top:16px;background-color:var(--secondary-color);display:none}#copy-btn:hover{background-color:#2e9748}.progress-bar{width:100%;height:10px;background-color:#e0e0e0;border-radius:6px;margin-top:20px;overflow:hidden;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}.progress{height:100%;background:linear-gradient(90deg,var(--secondary-color),var(--primary-color));border-radius:6px;transition:width .1s linear}#error{color:var(--danger-color);margin-top:16px;padding:8px;border-radius:8px;max-width:100%;opacity:0;transition:opacity .3s}#error:not(:empty){opacity:1;background-color:rgba(234,67,53,.1)}.footer{background-color:var(--text-dark);color:#fff;padding:20px;margin-top:auto}.footer a{color:var(--accent-color);text-decoration:none;transition:color .3s}.footer a:hover{color:#fff;text-decoration:underline}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:600px){.container h2,.header h1{font-size:20px}.container{padding:20px;margin:16px auto;width:calc(100% - 32px);border-radius:12px;max-width:100%}.container h2,.input-group{margin-bottom:20px}#totp{font-size:32px;letter-spacing:2px}.input-group input,button{padding:12px;font-size:16px}#result{padding:20px;margin-top:24px}.progress-bar{height:8px}}@media (max-width:350px){.container{padding:16px;margin:10px auto}.header h1{font-size:18px}#totp{font-size:28px;letter-spacing:1px}.input-group input,button{padding:10px}}