*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.header{width:100%;max-width:800px;margin-bottom:2rem}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-title{text-align:left}.header-title h1{font-size:3rem;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.user-info{display:flex;align-items:center;gap:1rem;background:#ffffff26;padding:.75rem 1.25rem;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.user-name{font-size:.95rem;opacity:.95}.logout-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;font-size:.85rem;border-radius:6px;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:#ffffff4d}.subtitle{font-size:1.2rem;opacity:.9;margin-top:.5rem}.main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;max-width:800px;width:100%}.welcome-card{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:3rem 4rem;text-align:center;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.2)}.welcome-card h2{margin:0 0 1rem;font-size:2rem;font-weight:600}.welcome-card p{margin:0;font-size:1.1rem;opacity:.9}.footer{margin-top:2rem;opacity:.8;font-size:.9rem}.loading-container{justify-content:center}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.review-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.review-header{text-align:center;color:#fff;margin-bottom:2rem}.review-header h1{margin:0;font-size:2rem;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.review-header p{margin:.5rem 0 0;opacity:.9}.review-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(max-width:900px){.review-content{grid-template-columns:1fr}}.review-form{background:#fffffff2;border-radius:16px;padding:2rem;box-shadow:0 20px 60px #0003}.form-section{margin-bottom:1.5rem}.form-section label{display:block;margin-bottom:.5rem;font-size:14px;font-weight:500;color:#333}.form-section select{width:100%;padding:12px 16px;font-size:15px;border:2px solid #e0e0e0;border-radius:10px;outline:none;background:#f8f9fa;cursor:pointer;transition:all .3s ease}.form-section select:focus{border-color:#667eea;background:#fff;box-shadow:0 0 0 4px #667eea1a}.form-section select:disabled{background:#f0f0f0;cursor:not-allowed}.upload-area{border:2px dashed #d0d0d0;border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:#fafafa}.upload-area:hover{border-color:#667eea;background:#f5f7ff}.upload-icon{color:#999;margin-bottom:1rem}.upload-area p{margin:0;font-size:16px;color:#333}.upload-area span{display:block;margin-top:.5rem;font-size:13px;color:#999}.image-preview{position:relative;border-radius:12px;overflow:hidden;background:#f0f0f0}.image-preview img{width:100%;max-height:400px;object-fit:contain;display:block}.remove-btn{position:absolute;top:10px;right:10px;width:32px;height:32px;border:none;border-radius:50%;background:#0009;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.remove-btn:hover:not(:disabled){background:#ff4d4fe6}.remove-btn:disabled{opacity:.5;cursor:not-allowed}.error-message{background:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f;padding:12px 16px;border-radius:8px;margin-bottom:1rem;font-size:14px;text-align:center}.submit-btn{width:100%;padding:14px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.review-result{background:#fffffff2;border-radius:16px;padding:2rem;box-shadow:0 20px 60px #0003}.review-result h2{margin:0 0 1.5rem;font-size:1.25rem;color:#333;padding-bottom:1rem;border-bottom:1px solid #eee}.loading-state{text-align:center;padding:3rem 0}.loading-state .loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}.loading-state p{color:#666;margin:0}.markdown-content{line-height:1.8;color:#333}.markdown-content h1{font-size:1.5rem;margin:1.5rem 0 1rem;color:#222}.markdown-content h2{font-size:1.25rem;margin:1.25rem 0 .75rem;color:#333}.markdown-content h3{font-size:1.1rem;margin:1rem 0 .5rem;color:#444}.markdown-content p,.markdown-content br+br{margin:.75rem 0}.markdown-content strong{color:#222}.markdown-content ul{padding-left:1.5rem;margin:.75rem 0}.markdown-content li{margin:.5rem 0}.markdown-content code{background:#f5f5f5;padding:.2rem .4rem;border-radius:4px;font-family:Fira Code,monospace;font-size:.9em}.markdown-content pre{background:#f5f5f5;padding:1rem;border-radius:8px;overflow-x:auto}.markdown-content pre code{background:none;padding:0}.markdown-content hr{border:none;border-top:1px solid #eee;margin:1.5rem 0}.markdown-content a{color:#667eea;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-box{width:100%;max-width:420px;background:#fffffff2;border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.login-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 30px;text-align:center;color:#fff}.login-header h1{margin:0;font-size:2rem;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.login-header p{margin:10px 0 0;font-size:1rem;opacity:.9}.login-form{padding:40px 30px}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.form-group input{width:100%;padding:14px 16px;font-size:15px;border:2px solid #e0e0e0;border-radius:10px;outline:none;transition:all .3s ease;background:#f8f9fa}.form-group input:focus{border-color:#667eea;background:#fff;box-shadow:0 0 0 4px #667eea1a}.form-group input::placeholder{color:#aaa}.form-group input:disabled{background:#f0f0f0;cursor:not-allowed}.slider-track{position:relative;height:44px;background:#f5f5f5;border:2px solid #e0e0e0;border-radius:10px;overflow:hidden;-webkit-user-select:none;user-select:none;transition:all .3s ease}.slider-track.verified{border-color:#52c41a;background:#f6ffed}.slider-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);opacity:.2;transition:width 0s}.slider-track.verified .slider-fill{background:#52c41a;opacity:.2}.slider-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:14px;color:#999;white-space:nowrap;pointer-events:none}.slider-track.verified .slider-text{color:#52c41a;font-weight:500}.slider-thumb{position:absolute;top:2px;left:0;width:40px;height:36px;background:#fff;border-radius:6px;box-shadow:0 2px 8px #00000026;display:flex;align-items:center;justify-content:center;cursor:grab;transition:box-shadow .3s ease;color:#667eea}.slider-thumb:hover{box-shadow:0 4px 12px #0003}.slider-thumb.dragging{cursor:grabbing;box-shadow:0 4px 16px #00000040}.slider-thumb.verified{background:#52c41a;color:#fff;cursor:default}.error-message{background:#fff2f0;border:1px solid #ffccc7;color:#ff4d4f;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;text-align:center}.login-button{width:100%;padding:16px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-footer{padding:20px 30px;text-align:center;border-top:1px solid #eee;background:#fafafa}.login-footer p{margin:0;font-size:13px;color:#999}@media(max-width:480px){.login-box{max-width:100%;border-radius:12px}.login-header{padding:30px 20px}.login-header h1{font-size:1.6rem}.login-form{padding:30px 20px}.form-group input{padding:12px 14px}.login-button{padding:14px}}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
