*{box-sizing: border-box}
body{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;margin:0;padding:0;background-color:#F8F8F8}
.painter{display:flex;flex-direction:column;align-items:center;margin-top:1rem;width:100%}
#canvas{display:block;margin-left:auto;margin-right:auto;border:1px solid #CCCCCC;max-width:100%}
@media(min-width:768px){.painter{max-width:699px;margin-left:auto;margin-right:auto}}
h1{margin-top:0;text-align:center;padding:1rem;font-size:2rem;color:#333333}
canvas{display:block;margin-left:auto;margin-right:auto;border: 1px solid #CCCCCC}
.controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:1rem;margin-bottom:1rem}
label{margin-right:0.5rem;color:#666666;font-size:1.1rem}
input[type='range']{width:150px;margin-right:0.5rem;-webkit-appearance:none}
input[type='range']:focus{outline:none}
input[type='range']::-webkit-slider-runnable-track{width:100%;height:5px;background:#CCCCCC;border-radius: 3px}
input[type='range']::-webkit-slider-thumb{-webkit-appearance:none;height:20px;width:20px;border-radius:50%;background-color:#AAAAAA;margin-top:-8px;cursor:pointer}
input[type='color']{padding:0;margin-right:0.5rem;height:25px;width:30px;border:none;border-radius:2px;cursor:pointer;vertical-align:middle}
button{background-color:#4CAF50;color:white;border:none;border-radius:3px;padding:10px 15px;margin-right:0.5rem;font-size:1.1rem;cursor:pointer;transition:background-color 0.3s ease}
button:hover{background-color:#3E8E41}
button:focus{outline:none}
@media(max-width:450px){input[type='range']{width:auto}}