:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%}body{background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{min-height:100vh;display:flex;align-items:center;justify-content:center}.background-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;opacity:0;pointer-events:none;transition:opacity .3s ease}.background-canvas.active{opacity:1;pointer-events:auto;cursor:crosshair;z-index:100}.app{width:100%;display:flex;align-items:center;justify-content:center;padding:clamp(12px,4vw,40px);min-height:100vh;position:relative;z-index:2}.container{width:100%;max-width:min(90vw,480px)}.color-picker-card{background:#fff;border-radius:clamp(16px,4vw,20px);padding:clamp(16px,3vw,24px);box-shadow:0 10px 40px #0000001a;display:flex;flex-direction:column;gap:clamp(12px,2vw,16px);width:100%;overflow:hidden}.color-canvas{width:100%;aspect-ratio:380 / 340;max-width:100%;border-radius:clamp(10px,2vw,12px);cursor:crosshair;display:block;background:linear-gradient(135deg,#fff,#f0f);touch-action:none;-webkit-user-select:none;user-select:none}.color-selector{width:clamp(24px,6vw,32px);height:clamp(24px,6vw,32px);border:3px solid white;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #0000004d,0 2px 8px #0003;pointer-events:none;z-index:10}.hue-slider-wrapper{position:relative;height:clamp(16px,4vw,22px)}.hue-slider{width:100%;height:clamp(8px,2vw,12px);-webkit-appearance:none;appearance:none;background:linear-gradient(to right,red,#ff8000,#ff0,#80ff00,#0f0,#00ff80,#0ff,#0080ff,#00f,#7f00ff,#f0f,#ff0080,red);border-radius:clamp(4px,1vw,6px);outline:none;cursor:pointer;box-shadow:0 2px 8px #0000001a;margin:0;padding:0}.hue-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:clamp(16px,4vw,22px);height:clamp(16px,4vw,22px);border-radius:50%;background:#fff;border:3px solid rgba(0,0,0,.2);cursor:pointer;box-shadow:0 2px 6px #0000004d}.hue-slider::-moz-range-thumb{width:clamp(16px,4vw,22px);height:clamp(16px,4vw,22px);border-radius:50%;background:#fff;border:3px solid rgba(0,0,0,.2);cursor:pointer;box-shadow:0 2px 6px #0000004d}.hue-slider::-moz-range-track{background:transparent;border:none}.hue-selector{position:absolute;width:clamp(16px,4vw,22px);height:clamp(16px,4vw,22px);top:50%;transform:translate(-50%,-50%);border:3px solid white;border-radius:50%;box-shadow:0 2px 6px #0000004d;pointer-events:none;z-index:-1}.controls-section{display:flex;align-items:center;gap:clamp(8px,2vw,12px);flex-wrap:wrap}.picker-button{width:clamp(44px,10vw,50px);height:clamp(44px,10vw,50px);border-radius:clamp(8px,2vw,10px);background:linear-gradient(135deg,#7c3aed,#a855f7);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #7c3aed4d;transition:all .2s;touch-action:manipulation}.picker-button:hover{transform:scale(1.05)}.picker-button.active{background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 4px 12px #10b98180,0 0 0 3px #10b98133;transform:scale(1.1)}.picker-icon{font-size:clamp(16px,4vw,20px)}.preset-section{display:flex;align-items:center;gap:clamp(8px,2vw,12px);flex:1}.preset-colors{display:flex;gap:clamp(6px,1.5vw,8px);flex:1;flex-wrap:wrap;align-items:center}.preset-dot{width:clamp(28px,6vw,32px);height:clamp(28px,6vw,32px);border-radius:50%;cursor:pointer;border:2px solid #e5e5e5;transition:transform .2s;flex-shrink:0;touch-action:manipulation}.preset-dot:hover,.preset-dot:active{transform:scale(1.1)}.refresh-button{width:clamp(40px,9vw,48px);height:clamp(40px,9vw,48px);border-radius:clamp(8px,2vw,12px);background:linear-gradient(135deg,#06b6d4,#0891b2);border:2px solid transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 6px 20px #06b6d466,inset 0 1px #fff3;transition:all .3s cubic-bezier(.34,1.56,.64,1);touch-action:manipulation;position:relative;overflow:hidden}.refresh-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.refresh-button:hover:before{left:100%}.refresh-button:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 8px 28px #06b6d480,inset 0 1px #ffffff4d;border-color:#fff3}.refresh-button:active{transform:scale(.96) translateY(1px);box-shadow:0 2px 8px #06b6d44d,inset 0 1px #ffffff1a}.refresh-icon{font-size:clamp(18px,4vw,22px);transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.refresh-button:hover .refresh-icon{transform:rotate(180deg)}.refresh-button:active .refresh-icon{transform:rotate(360deg)}.color-values{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:clamp(6px,1.5vw,10px);padding-top:clamp(12px,2vw,15px);border-top:1px solid #e5e5e5;width:100%;overflow:hidden}.value-group{display:flex;flex-direction:column;gap:clamp(3px,.8vw,5px);min-width:0}.value-group label{font-size:clamp(9px,1.8vw,11px);font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.value-group input{padding:clamp(5px,1.2vw,7px);border:2px solid #e5e5e5;border-radius:clamp(4px,.8vw,5px);font-size:clamp(11px,2vw,13px);font-weight:500;text-align:center;background:#fafafa;color:#333;font-family:Monaco,Menlo,monospace;min-height:clamp(28px,6vw,34px);width:100%;overflow:hidden;text-overflow:ellipsis;transition:all .2s ease}.value-group input:hover{border-color:#d0d0d0;background:#fff}.value-group input:focus{outline:none;border-color:#7c3aed;background:#fff;box-shadow:0 0 0 3px #7c3aed1a}.value-group input.error{border-color:#ef4444;background:#fef2f2}.value-group input.error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #ef44441a}.value-group input[type=number]::-webkit-outer-spin-button,.value-group input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.value-group input[type=number]{-moz-appearance:textfield}@media(max-width:360px){.color-picker-card{padding:clamp(12px,3vw,16px);gap:clamp(10px,2vw,12px)}.controls-section{gap:clamp(6px,1.5vw,8px)}}@media(max-height:600px)and (orientation:landscape){.app{padding:clamp(8px,2vw,20px)}.color-picker-card{padding:clamp(12px,2vw,16px);gap:clamp(8px,1.5vw,12px)}.color-canvas{aspect-ratio:380 / 220}}
