.modal-content,.top-bar{padding:1rem}.button.primary,body{color:#fff}.counter,.preview-text{font-weight:700}*{margin:0;padding:0;box-sizing:border-box;font-family:Arial,sans-serif}body{background-color:#1a1a1a;min-height:100vh;transition:.3s;overflow:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:rgba(255,255,255,.1);border-radius:10px}::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.5)}body.white-theme{color:#000}.top-bar{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;z-index:10}.icon-button{background:0 0;border:none;color:inherit;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .3s}.button.secondary,.icon-button:hover{background-color:rgba(128,128,128,.2)}.counter-display{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.counter{font-size:8rem;margin-bottom:1rem;user-select:none}.color-grid,.setting-group{margin-bottom:1.5rem}.limit-message,.tap-message{font-size:1.5rem;animation:1.5s infinite pulse}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}.modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);align-items:center;justify-content:center;z-index:100;opacity:0;transition:opacity .3s}.modal-content,.modal-content-settings{background-color:#2a2a2a;width:90%;max-width:400px;max-height:80vh;transition:.3s;transform:scale(.9);overflow-y:auto;scrollbar-width:none;border-radius:10px;position:relative}.modal.active{opacity:1}.modal-content-wrapper{padding:2rem;border-radius:10px}.modal.active .modal-content{transform:scale(1)}.modal-header{display:flex;height:60px;justify-content:center;align-items:center;position:relative;position:sticky;top:0;background-color:inherit;z-index:10}.modal-title{font-size:1.5rem;text-align:center}.modal-close{position:absolute;right:10px;top:10px;font-size:1.2rem}.custom-color-input,.number-input{padding:.5rem;font-size:16px;background-color:rgba(128,128,128,.2);color:inherit}.color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.color-option{width:40px;height:40px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .2s}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:currentColor}.custom-color-option{width:100%;display:flex;gap:1rem;align-items:center;margin-top:.5rem}.custom-color-preview{width:40px;height:40px;border-radius:50%;border:2px solid transparent}.custom-color-input{width:60%;border:none;border-radius:5px}.setting-group label{display:block;margin-bottom:.5rem}.number-input{width:100%;border:none;border-radius:5px}.toggle-switch{position:relative;display:inline-block;width:60px;height:34px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:rgba(128,128,128,.2);transition:.4s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:currentColor;transition:.4s;border-radius:50%}.button.primary,input:checked+.toggle-slider{background-color:#4caf50}input:checked+.toggle-slider:before{transform:translateX(26px)}.button-group{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.button{padding:.5rem 1rem;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s;color:inherit}.button:hover{opacity:.9}.credits-link{color:#4caf50;text-decoration:none}.preview-icon,.preview-text{color:var(--preview-color,#fff)}.credits-link:hover{text-decoration:underline}.color-picker{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.color-slider{width:100%;height:40px;border-radius:5px;cursor:crosshair;background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);position:relative;user-select:none;touch-action:none}.color-picker-indicator{position:absolute;width:10px;height:40px;background-color:rgba(255,255,255,.5);border:1px solid #fff;pointer-events:none;display:none}.theme-preview{display:flex;gap:1rem;align-items:center;margin-top:1rem;padding:1rem;border-radius:5px;background-color:var(--preview-bg,#1a1a1a)}.preview-icon{font-size:1.5rem}@media (max-width:768px){.icon-button{width:50px;height:50px;font-size:1.3rem}input,select,textarea{font-size:16px}}