:root{--font-family:"Cairo", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--bg-main:#0f172a;--bg-card:#1e293bb3;--bg-input:#1e293b;--border-color:#94a3b81a;--border-focus:#0d9488;--primary:#0d9488;--primary-hover:#0f766e;--primary-glow:#0d948866;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--success:#10b981;--success-bg:#10b9811a;--error:#ef4444;--error-bg:#ef44441a;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-glow:0 0 20px var(--primary-glow);--transition:all .25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;font-family:var(--font-family);-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{background:radial-gradient(circle at top left, #1e1b4b, var(--bg-main) 50%);color:var(--text-primary);justify-content:center;align-items:center;min-height:100vh;line-height:1.6;display:flex;overflow-x:hidden}#root{width:100%;max-width:500px;padding:20px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--bg-input);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1,h2,h3{color:var(--text-primary);font-weight:700;line-height:1.3}h1{text-align:center;background:linear-gradient(135deg,#2dd4bf,#0d9488);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:1.8rem}h2{text-align:center;color:var(--text-secondary);margin-bottom:24px;font-size:1.4rem}p{color:var(--text-secondary);text-align:center;margin-bottom:24px;font-size:.95rem}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:32px 24px;animation:.4s ease-out fadeIn;position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg, #2dd4bf, var(--primary));width:100%;height:4px;position:absolute;top:0;left:0}.form-group{flex-direction:column;margin-bottom:20px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}label{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:8px;font-size:.9rem;font-weight:600;display:flex}input,select,textarea{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);transition:var(--transition);outline:none;width:100%;padding:12px 16px;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #0d948826}select{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:16px;background-repeat:no-repeat;background-size:16px;padding-left:40px}textarea{resize:vertical;min-height:120px}.btn{color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);width:100%;box-shadow:var(--shadow-glow);background:linear-gradient(135deg,#0d9488,#0f766e);border:none;justify-content:center;align-items:center;gap:10px;margin-top:10px;padding:14px 24px;font-size:1rem;font-weight:700;display:flex}.btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 20px #0d948880}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{background:var(--text-muted);cursor:not-allowed;box-shadow:none;opacity:.6}.file-upload-container{border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:var(--transition);background:#1e293b66;border:2px dashed #94a3b833;padding:20px;position:relative}.file-upload-container:hover{border-color:var(--primary);background:#0d94880d}.file-upload-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.file-upload-text{color:var(--text-secondary);font-size:.85rem}.file-upload-icon{color:var(--primary);margin-bottom:6px;font-size:1.5rem}.file-preview{color:var(--success);justify-content:center;align-items:center;gap:8px;margin-top:10px;font-size:.85rem;display:flex}.file-remove{color:var(--error);cursor:pointer;background:0 0;border:none;font-weight:700}.alert{border-radius:var(--radius-md);align-items:center;gap:12px;margin-bottom:20px;padding:14px 16px;font-size:.9rem;animation:.3s ease-out slideIn;display:flex}.alert-success{background:var(--success-bg);color:var(--success);border:1px solid #10b98133}.alert-error{background:var(--error-bg);color:var(--error);border:1px solid #ef444433}.user-profile{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:28px;padding-bottom:16px;display:flex}.user-info{flex-direction:column;display:flex}.user-info-title{color:var(--text-muted);font-size:.75rem}.user-info-code{color:var(--primary);font-size:.95rem;font-weight:700}.btn-logout{color:var(--error);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);background:#ef44441a;border:1px solid #ef444433;padding:6px 12px;font-size:.8rem}.btn-logout:hover{background:var(--error);color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.spinner{border:3px solid #ffffff1a;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=480px){#root{padding:10px}.card{padding:24px 16px}.form-row{grid-template-columns:1fr;gap:0}}.contact-section{border-top:1px solid var(--border-color);text-align:center;margin-top:24px;padding-top:20px}.contact-divider{text-align:center;align-items:center;margin-bottom:16px;display:flex}.contact-divider:before,.contact-divider:after{content:"";border-bottom:1px solid var(--border-color);flex:1}.contact-divider span{color:var(--text-muted);padding:0 12px;font-size:.8rem;font-weight:500}.btn-whatsapp{color:#25d366;border-radius:var(--radius-md);width:100%;transition:var(--transition);background:#25d3661f;border:1px solid #25d3664d;justify-content:center;align-items:center;gap:10px;padding:14px 18px;font-size:.95rem;font-weight:600;line-height:1.4;text-decoration:none;display:flex;box-shadow:0 4px 12px #25d3661a}.btn-whatsapp:hover{color:#fff;background:#25d366;border-color:#25d366;transform:translateY(-2px);box-shadow:0 6px 20px #25d36659}.btn-whatsapp:active{transform:translateY(0)}.whatsapp-icon{flex-shrink:0;width:24px;height:24px}.auth-tabs{background:var(--bg-input);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:24px;padding:4px;display:flex}.tab-btn{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);background:0 0;border:none;flex:1;padding:10px 16px;font-size:.95rem;font-weight:600}.tab-btn.active{background:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.tab-btn:hover:not(.active){color:var(--text-primary)}.review-notice{border:1px solid var(--primary);border-radius:var(--radius-md);text-align:center;background:#0d948826;margin-bottom:20px;padding:20px;animation:.4s ease-out fadeIn}.review-notice-icon{margin-bottom:10px;font-size:2.5rem}.review-notice-text{color:var(--text-primary);font-size:1.05rem;font-weight:600;line-height:1.6}.auth-switch-prompt{text-align:center;color:var(--text-secondary);margin-top:20px;font-size:.95rem}.auth-switch-btn{color:var(--primary-light);cursor:pointer;transition:var(--transition);background:0 0;border:none;margin-right:6px;font-size:.95rem;font-weight:700;text-decoration:underline}.auth-switch-btn:hover{color:var(--primary)}.requests-container{flex-direction:column;gap:24px;display:flex}.section-title-box{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.requests-section-title{color:var(--text-primary);align-items:center;gap:8px;font-size:1.15rem;font-weight:700;display:flex}.badge-tag{border-radius:20px;padding:3px 8px;font-size:.75rem;font-weight:600}.badge-standard{color:#2dd4bf;background:#0d948833;border:1px solid #2dd4bf4d}.badge-additional{color:#fbbf24;background:#f59e0b33;border:1px solid #fbbf244d}.requests-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}@media (width<=480px){.requests-grid{grid-template-columns:repeat(2,1fr);gap:10px}}.request-card{border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:var(--transition);background:#1e293b99;flex-direction:column;justify-content:center;align-items:center;padding:16px 12px;display:flex;position:relative;overflow:hidden}.request-card:hover{border-color:var(--primary);background:#1e293be6;transform:translateY(-4px);box-shadow:0 8px 24px #0d948840}.request-card:active{transform:translateY(-1px)}.request-card-icon{filter:drop-shadow(0 2px 8px #0000004d);margin-bottom:8px;font-size:2.2rem}.request-card-title{color:var(--text-primary);font-size:.95rem;font-weight:700}.accordion-toggle-btn{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;transition:var(--transition);background:#1e293bcc;justify-content:space-between;align-items:center;padding:14px 18px;font-size:1rem;font-weight:700;display:flex}.accordion-toggle-btn:hover{background:#1e293b;border-color:#f59e0b80}.accordion-content{border-radius:var(--radius-md);border:1px solid var(--border-color);background:#0f172a80;margin-top:14px;padding:16px;animation:.3s ease-out fadeIn}.subproblem-card{border:1px solid var(--primary);border-radius:var(--radius-md);background:#1e293be6;margin-top:16px;padding:20px;animation:.3s ease-out fadeIn}.subproblem-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:10px;display:flex}.subproblem-title{color:var(--text-primary);align-items:center;gap:8px;font-size:1.1rem;font-weight:700;display:flex}.subproblem-options-grid{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.option-chip{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;text-align:right;transition:var(--transition);justify-content:space-between;align-items:center;padding:12px 16px;font-size:.95rem;font-weight:600;display:flex}.option-chip:hover{border-color:var(--primary);background:#0d94881a}.option-chip.selected{border-color:var(--primary);color:#fff;background:#0d948840;box-shadow:0 0 10px #0d948833}.elevator-question-box{text-align:center;padding:16px 0}.elevator-question-text{color:#f8fafc;margin-bottom:18px;font-size:1.15rem;font-weight:700}.elevator-buttons{grid-template-columns:1fr 1fr;gap:16px;display:grid}.btn-emergency-yes{color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);background:linear-gradient(135deg,#ef4444,#dc2626);border:none;padding:14px;font-size:1.1rem;font-weight:700;box-shadow:0 4px 15px #ef444466}.btn-emergency-yes:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef444499}.btn-emergency-no{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);padding:14px;font-size:1.1rem;font-weight:700}.btn-emergency-no:hover{border-color:var(--primary);background:#0d948826}.emergency-alert-banner{border-radius:var(--radius-md);text-align:center;background:#dc262626;border:2px solid #ef4444;margin-top:16px;padding:20px;animation:.4s ease-out fadeIn}.emergency-alert-icon{margin-bottom:10px;font-size:3rem;animation:1.5s infinite pulse}.emergency-alert-title{color:#fca5a5;margin-bottom:8px;font-size:1.2rem;font-weight:800}.emergency-alert-desc{color:#fff;font-size:1.05rem;font-weight:600;line-height:1.6}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.user-requests-history{border-top:1px solid var(--border-color);margin-top:24px;padding-top:16px}.request-item-card{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:10px;padding:14px;display:flex}.req-status-pending{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.req-status-assigned{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f64d}.req-status-completed{color:#34d399;background:#10b98126;border:1px solid #10b9814d}
