*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.app{max-width:1400px;margin:0 auto;padding:20px;min-height:100vh;display:flex;flex-direction:column}.app-header{text-align:center;color:#fff;margin-bottom:40px;animation:fadeInDown .8s ease}.app-header h1{font-size:2.5rem;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.app-header p{font-size:1.1rem;opacity:.9}.app-footer{text-align:center;color:#fff;margin-top:40px;padding:20px;font-size:.9rem;opacity:.8}.controls{display:flex;justify-content:center;gap:15px;margin-bottom:40px;flex-wrap:wrap;animation:fadeInUp .8s ease}.control-btn{padding:12px 24px;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;background:#fff;color:#667eea;box-shadow:0 2px 10px #0000001a}.control-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00000026}.control-btn:active{transform:translateY(0)}.generate-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.export-btn{background:#10b981;color:#fff}.import-btn{background:#3b82f6;color:#fff;position:relative}.file-input{display:none}.palette-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px;flex:1}.color-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0003;transition:all .3s ease;animation:fadeInScale .5s ease}.color-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #00000040}.color-preview{height:250px;cursor:pointer;transition:all .3s ease;position:relative;display:flex;align-items:center;justify-content:center}.color-preview:hover{filter:brightness(.95)}.copy-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;border-radius:12px 12px 0 0}.color-preview:hover .copy-overlay{opacity:1}.copy-text{color:#fff;font-size:1.2rem;font-weight:700;background:#000c;padding:10px 20px;border-radius:8px;pointer-events:none}.copy-notification{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000e6;color:#fff;padding:8px 16px;border-radius:6px;font-size:.9rem;font-weight:600;animation:fadeOut 2s ease;pointer-events:none;z-index:10}.color-info{padding:15px;background:#fff}.color-value{font-size:1.1rem;font-weight:600;color:#333;margin-bottom:10px;text-align:center;font-family:monospace}.color-input{width:100%;height:40px;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:border-color .3s ease}.color-input:hover{border-color:#667eea}.index-badge{position:absolute;top:10px;left:10px;background:#0009;color:#fff;padding:4px 8px;border-radius:6px;font-size:.8rem;font-weight:700;z-index:5}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes fadeOut{0%{opacity:1}70%{opacity:1}to{opacity:0}}@media (max-width: 768px){.app{padding:15px}.app-header h1{font-size:1.8rem}.app-header p{font-size:.9rem}.controls{gap:10px}.control-btn{padding:8px 16px;font-size:.9rem}.palette-container{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.color-preview{height:180px}.color-value{font-size:.9rem}}@media (max-width: 480px){.palette-container{grid-template-columns:1fr}.color-preview{height:200px}}
