: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}}#root{max-width:480px;margin:0 auto;padding:2rem}.container{display:flex;flex-direction:column;align-items:center}.title{font-size:2rem;font-weight:700;color:inherit;margin-bottom:.5rem}.subtitle{color:#808080e6;margin-bottom:2rem}@media(prefers-color-scheme:light){.subtitle{color:#666}}.form{width:100%;display:flex;flex-direction:column;gap:1.5rem}.photo-section{display:flex;justify-content:center;margin-bottom:1rem}.photo-upload{width:180px;height:180px;border-radius:50%;border:3px dashed #555;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:border-color .3s,transform .2s;background-color:#333}@media(prefers-color-scheme:light){.photo-upload{border-color:#ccc;background-color:#f9f9f9}}.photo-upload:hover{border-color:#646cff;transform:scale(1.02)}.photo-upload.dragging{border-color:#646cff;border-style:solid;background-color:#646cff1a;transform:scale(1.05)}.photo-preview{width:100%;height:100%;object-fit:cover}.photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#aaa}@media(prefers-color-scheme:light){.photo-placeholder{color:#888}}.photo-icon{font-size:2.5rem}.photo-text{font-size:.9rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{font-weight:600;color:inherit;font-size:.95rem}.input-group input{padding:1rem;border:2px solid #444;border-radius:12px;font-size:1rem;transition:border-color .3s,box-shadow .3s;background-color:#333;color:inherit}@media(prefers-color-scheme:light){.input-group input{border-color:#e0e0e0;background-color:#fff}}.input-group input:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 3px #646cff1a}.input-group input::placeholder{color:#888}@media(prefers-color-scheme:light){.input-group input::placeholder{color:#bbb}}.submit-button{margin-top:1rem;padding:1rem 2rem;background:linear-gradient(135deg,#646cff,#535bf2);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.submit-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #646cff66}.submit-button:active{transform:translateY(0)}.submit-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.report{width:100%;background-color:#333;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;text-align:left;line-height:1.8}.report p{margin:.5rem 0;color:inherit}@media(prefers-color-scheme:light){.report{background-color:#f9f9f9}}.report p:empty{height:.5rem}.hairstyles-section{width:100%;margin-bottom:1.5rem}.hairstyles-title{font-size:1.3rem;font-weight:600;margin-bottom:1rem;color:inherit}.hairstyles-grid{display:flex;flex-direction:column;gap:1rem}.hairstyle-card{background-color:#333;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}@media(prefers-color-scheme:light){.hairstyle-card{background-color:#f9f9f9}}.hairstyle-image{width:100%;height:200px;object-fit:cover}.hairstyle-image-placeholder{width:100%;height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);gap:.5rem}.hairstyle-icon{font-size:3rem}.hairstyle-keyword{font-size:.85rem;color:#ffffffe6;text-transform:capitalize}.hairstyle-info{padding:1rem}.hairstyle-name{font-size:1.1rem;font-weight:600;margin:0 0 .5rem;color:inherit}.hairstyle-description{font-size:.9rem;color:#aaa;margin:0;line-height:1.5}@media(prefers-color-scheme:light){.hairstyle-description{color:#666}}
