*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-weight:400;line-height:1.6;color:#1a1a1a;background:linear-gradient(135deg,#f8fafc,#f1f5f9);min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:Inter,sans-serif;font-weight:700;line-height:1.2;letter-spacing:-.025em}:root{--primary: #0066cc;--primary-dark: #0052a3;--secondary: #64748b;--accent: #06b6d4;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--surface: #ffffff;--surface-elevated: #f8fafc;--border: #e2e8f0;--border-hover: #cbd5e1;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius: .5rem;--radius-lg: .75rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;line-height:1;border:none;border-radius:var(--radius);cursor:pointer;transition:all .2s ease-in-out;text-decoration:none;font-family:inherit}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface-elevated);border-color:var(--border-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent}.btn-ghost:hover{background:var(--surface-elevated);color:var(--text-primary)}.form-input{width:100%;padding:.75rem 1rem;font-size:.875rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);transition:all .2s ease-in-out;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0066cc1a}.form-input::placeholder{color:var(--text-muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .2s ease-in-out}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.font-medium{font-weight:500}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:1rem}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease-out}.image-modal-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:999999!important;margin:0!important;padding:0!important}.image-modal-backdrop{width:100%!important;height:100%!important;background:#000000f2!important;display:flex!important;align-items:center!important;justify-content:center!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;animation:modalBackdropFadeIn .3s ease-out!important}@keyframes modalBackdropFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.image-modal-content{position:relative!important;width:92vw!important;height:92vh!important;max-width:1400px!important;max-height:900px!important;background:var(--surface)!important;border-radius:var(--radius-lg)!important;padding:2rem!important;box-shadow:0 25px 50px #00000080!important;display:grid!important;grid-template-rows:auto 1fr auto auto!important;gap:1.5rem!important;overflow:hidden!important;margin:0!important;animation:modalContentSlideIn .3s ease-out!important}@keyframes modalContentSlideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.image-modal-overlay .modal-close{position:absolute!important;top:1rem!important;right:1rem!important;background:var(--surface)!important;color:var(--text-primary)!important;border:1px solid var(--border)!important;width:44px!important;height:44px!important;border-radius:50%!important;font-size:24px!important;cursor:pointer!important;z-index:1000000!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .2s ease-in-out!important;box-shadow:var(--shadow-md)!important;font-weight:700!important}.image-modal-overlay .modal-close:hover{background:var(--error)!important;color:#fff!important;border-color:var(--error)!important;transform:scale(1.1)!important}.image-modal-overlay .modal-main-image{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important;grid-row:2!important}.image-modal-overlay .modal-image{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain!important;border-radius:var(--radius)!important;box-shadow:var(--shadow-md)!important}.image-modal-overlay .modal-thumbnails{display:flex!important;gap:.75rem!important;justify-content:center!important;flex-wrap:wrap!important;max-height:80px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:.5rem 0!important;grid-row:3!important}.image-modal-overlay .thumbnail-container{flex-shrink:0!important}.image-modal-overlay .thumbnail{width:64px!important;height:64px!important;object-fit:cover!important;border-radius:var(--radius)!important;cursor:pointer!important;border:3px solid transparent!important;transition:border-color .2s ease!important;box-shadow:var(--shadow-sm)!important;flex-shrink:0!important}.image-modal-overlay .thumbnail:hover{border-color:var(--primary)!important}.image-modal-overlay .thumbnail.active{border-color:var(--primary)!important;box-shadow:0 0 8px #06c6!important}.image-modal-overlay .modal-navigation{display:flex!important;align-items:center!important;justify-content:center!important;gap:1.5rem!important;padding:1rem 0!important;grid-row:4!important}.image-modal-overlay .nav-btn{background:var(--primary)!important;color:#fff!important;border:none!important;width:44px!important;height:44px!important;border-radius:50%!important;font-size:20px!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .15s ease-in-out!important;box-shadow:var(--shadow-sm)!important;font-weight:700!important}.image-modal-overlay .nav-btn:hover:not(:disabled){background:var(--primary-dark)!important;transform:scale(1.05)!important;box-shadow:var(--shadow-md)!important}.image-modal-overlay .nav-btn:disabled{background:var(--secondary)!important;cursor:not-allowed!important;transform:none!important;opacity:.5!important}.image-modal-overlay .image-counter{font-weight:600!important;color:var(--text-primary)!important;min-width:80px!important;text-align:center!important;font-size:1rem!important;padding:.5rem 1rem!important;background:var(--surface-elevated)!important;border-radius:var(--radius)!important;border:1px solid var(--border)!important}.image-modal-overlay .modal-close:focus,.image-modal-overlay .nav-btn:focus,.image-modal-overlay .thumbnail:focus{outline:3px solid var(--primary)!important;outline-offset:2px!important}@media (max-width: 768px){.image-modal-content{width:95vw!important;height:95vh!important;padding:1.5rem!important;gap:1rem!important}.image-modal-overlay .modal-close{top:.5rem!important;right:.5rem!important;width:40px!important;height:40px!important;font-size:20px!important}.image-modal-overlay .modal-thumbnails{max-height:60px!important;gap:.5rem!important}.image-modal-overlay .thumbnail{width:50px!important;height:50px!important}.image-modal-overlay .nav-btn{width:38px!important;height:38px!important;font-size:18px!important}.image-modal-overlay .image-counter{min-width:60px!important;font-size:.875rem!important;padding:.375rem .75rem!important}}
