@media(max-width:768px){nav{flex-direction:column!important;align-items:stretch!important;gap:15px!important}nav>div:first-child{flex-direction:column;align-items:stretch!important;width:100%;gap:15px!important}nav>div:first-child>a{text-align:center}nav>div:first-child>div{justify-content:space-between;width:100%}nav>div:first-child>div>a{flex:1;text-align:center}nav>div:last-child{justify-content:space-between;width:100%}}.phone-screen-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.phone-screen-card{max-width:400px;width:100%;padding:40px;background-color:#fff;border-radius:12px;box-shadow:0 10px 40px #0003}.phone-screen-title{text-align:center;margin-bottom:10px;color:#333;font-size:28px}.phone-screen-subtitle{text-align:center;color:#666;margin-bottom:30px;font-size:14px}.phone-screen-error{padding:12px;margin-bottom:20px;background-color:#fee;color:#c00;border-radius:6px;font-size:14px;border:1px solid #fcc}.phone-field-container{margin-bottom:20px}.phone-field-label{display:block;margin-bottom:8px;color:#333;font-size:14px;font-weight:500}.phone-field-input{width:100%;padding:12px;border-radius:6px;font-size:16px;box-sizing:border-box}.phone-field-hint{color:#666;font-size:12px;margin-top:4px;display:block}.phone-field-error{color:#f44336;font-size:12px;margin-top:4px}.phone-submit-button{width:100%;padding:14px;background-color:#667eea;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;transition:all .2s}.phone-submit-button:disabled{cursor:not-allowed;opacity:.6}.phone-submit-button:not(:disabled){cursor:pointer;opacity:1}.otp-screen-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.otp-screen-card{max-width:400px;width:100%;padding:40px;background-color:#fff;border-radius:12px;box-shadow:0 10px 40px #0003}.otp-screen-title{text-align:center;margin-bottom:10px;color:#333;font-size:28px}.otp-screen-subtitle{text-align:center;color:#666;margin-bottom:30px;font-size:14px}.otp-screen-error{padding:12px;margin-bottom:20px;background-color:#fee;color:#c00;border-radius:6px;font-size:14px;border:1px solid #fcc}.otp-screen-success{padding:12px;margin-bottom:20px;background-color:#e8f5e9;color:#2e7d32;border-radius:6px;font-size:14px;border:1px solid #c8e6c9}.otp-field-container{margin-bottom:20px}.otp-field-label{display:block;margin-bottom:8px;color:#333;font-size:14px;font-weight:500}.otp-field-input{width:100%;padding:12px;border-radius:6px;font-size:24px;letter-spacing:8px;text-align:center;box-sizing:border-box}.otp-field-hint{color:#666;font-size:12px;margin-top:4px;display:block}.otp-field-error{color:#f44336;font-size:12px;margin-top:4px}.otp-submit-button{width:100%;padding:14px;background-color:#667eea;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;transition:all .2s;margin-bottom:12px}.otp-submit-button:disabled{cursor:not-allowed;opacity:.6}.otp-submit-button:not(:disabled){cursor:pointer;opacity:1}.otp-actions{display:flex;gap:8px}.otp-action-button{flex:1;padding:12px;background-color:#fff;color:#667eea;border:1px solid #667eea;border-radius:6px;font-size:14px;font-weight:500}.otp-action-button:disabled{cursor:not-allowed;opacity:.6}.otp-action-button:not(:disabled){cursor:pointer;opacity:1}.header{display:flex;align-items:center;gap:20px;padding:22px 24px;max-width:1200px;margin:0 auto;position:relative}.brand{display:flex;align-items:center;z-index:1001}.logo{font-size:1.5rem;font-weight:800;background:linear-gradient(45deg,var(--primary-color),var(--accent-happy));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.spacer{flex:1}.home-nav{display:flex;gap:28px;align-items:center;margin-left:auto}.home-nav a{color:var(--text-dim);text-decoration:none;font-weight:600;transition:opacity .2s ease}.home-nav a:hover{opacity:.7}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:1001}.hamburger span{display:block;width:25px;height:2px;background:var(--text-dark);transition:all .3s ease;border-radius:2px}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media(max-width:768px){.header{padding:16px 20px}.hamburger{display:flex;margin-left:auto}.spacer{display:none}.home-nav{position:fixed;top:0;right:-100%;height:100vh;width:280px;max-width:80vw;box-sizing:border-box;background:var(--bg-light);flex-direction:column;align-items:stretch;gap:0;padding:80px 24px 24px;box-shadow:-4px 0 20px #0000001a;transition:right .3s ease;z-index:1000}.home-nav.active{right:0}.nav-overlay{position:fixed;top:0;left:0;bottom:0;width:calc(100vw - min(280px,80vw));background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999}.home-nav a{padding:16px 12px;border-bottom:1px solid rgba(0,0,0,.1);font-size:16px;color:var(--text-dark)}.home-nav a:hover{background-color:#0000000d;opacity:1}}.hero{display:flex;align-items:center;justify-content:space-between;min-height:80vh;max-width:1200px;margin:0 auto;padding:0 2rem}.hero-content{flex:1;max-width:600px}.hero-title{font-size:4.5rem;line-height:1.1;font-weight:800;margin-bottom:1.5rem;color:var(--text-dark)}.highlight{color:var(--primary-color);position:relative;display:inline-block}.highlight:after{content:"";position:absolute;bottom:5px;left:0;width:100%;height:15px;background-color:#fd79a833;z-index:-1;transform:skew(-10deg)}.hero-subtitle{font-size:1.25rem;color:var(--text-dim);margin-bottom:2.5rem;line-height:1.6}.hero-buttons{display:flex;gap:1rem}.store-badge{display:inline-flex;align-items:center;gap:10px;background:#0e0e0e;color:#fff;padding:12px 20px;border-radius:12px;text-decoration:none;font-weight:700;font-size:.95rem;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 12px #00000026}.store-badge:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000040}.store-badge svg{width:20px;height:20px;fill:#fff}.mobile-cta{display:none}.hero-visual{flex:1;position:relative;height:400px;display:flex;justify-content:center;align-items:center}.floating-card{position:absolute;background:var(--bg-card);padding:1rem 1.5rem;border-radius:16px;display:flex;align-items:center;gap:.8rem;box-shadow:var(--shadow-lg);border:1px solid rgba(0,0,0,.05);font-weight:600;color:var(--text-dark);animation:float 6s ease-in-out infinite}.card-1{top:20%;right:10%;animation-delay:0s}.card-2{top:50%;left:10%;animation-delay:2s}.card-3{bottom:20%;right:20%;animation-delay:4s}.icon{font-size:1.5rem}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-20px)}to{transform:translateY(0)}}@media(max-width:768px){.mobile-cta{display:flex;flex-direction:column;gap:10px;padding:24px 12px 12px}.mobile-cta .store-badge{justify-content:center;width:100%}.hero{flex-direction:column;text-align:center;padding-top:2rem}.hero-buttons{justify-content:center}.hero-title{font-size:3rem}.hero-visual{display:none}}.press-quote{padding:4rem 2rem;background-color:var(--bg-subtle);display:flex;justify-content:center}.press-quote__card{max-width:720px;width:100%;background:var(--bg-card);border-radius:16px;box-shadow:var(--shadow-lg);padding:2.5rem 3rem;position:relative}.press-quote__mark{font-size:5rem;line-height:1;color:var(--primary-color);opacity:.15;position:absolute;top:1rem;left:2rem;font-family:Georgia,serif;-webkit-user-select:none;user-select:none}.press-quote__text{font-size:1.15rem;line-height:1.75;color:var(--text-dark);font-style:normal;margin:0 0 1.5rem;padding-top:1.5rem}.press-quote__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.06)}.press-quote__attribution{display:flex;flex-direction:column;gap:.2rem}.press-quote__author{font-size:.85rem;font-weight:600;color:var(--text-dark)}.press-quote__date{font-size:.78rem;color:var(--text-dim)}.press-quote__source{display:flex;align-items:center;text-decoration:none;opacity:.5;transition:opacity .2s ease;color:var(--text-dark)}.press-quote__source:hover{opacity:.85}.press-quote__ajn-logo{display:block;height:28px;width:auto;object-fit:contain}.press-quote__read-more{display:inline-block;margin-top:1rem;margin-bottom:1.5rem;font-size:.82rem;font-weight:600;color:var(--primary-color);text-decoration:none;transition:opacity .2s ease}.press-quote__read-more:hover{opacity:.75}@media(max-width:600px){.press-quote__card{padding:2rem 1.5rem}.press-quote__text{font-size:1rem}.press-quote__footer{flex-direction:column;align-items:flex-start}.press-quote__date{display:none}}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:4rem auto;padding:0 2rem}.feature-card{background:var(--bg-card);padding:2.5rem;border-radius:24px;border:1px solid rgba(0,0,0,.05);transition:transform .3s,box-shadow .3s;box-shadow:var(--shadow-sm)}.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.feature-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--primary-color)}.feature-card p{color:var(--text-dim);line-height:1.6}.footer{text-align:center;padding:4rem 2rem;border-top:1px solid rgba(0,0,0,.05);margin-top:4rem;background-color:var(--bg-subtle)}.footer p{color:var(--text-dim);margin-bottom:1.5rem}.footer-links{display:flex;justify-content:center;gap:2rem}.footer-links a,.footer-links span{color:var(--text-dim);text-decoration:none;font-size:.9rem;cursor:pointer;transition:color .3s}.footer-links a:hover,.footer-links span:hover{color:var(--primary-color)}:root{--primary-color: #6c63ff;--primary-hover: #5a52d5;--bg-light: #ffffff;--bg-subtle: #f8f9fc;--bg-card: #ffffff;--text-dark: #2d3436;--text-dim: #636e72;--accent-happy: #fd79a8;--shadow-sm: 0 4px 6px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .1)}.home-container{min-height:100vh;background-color:var(--bg-light);color:var(--text-dark);font-family:Inter,system-ui,-apple-system,sans-serif;overflow-x:hidden;background-image:radial-gradient(circle at 10% 20%,rgba(108,99,255,.08) 0%,transparent 25%),radial-gradient(circle at 90% 80%,rgba(253,121,168,.1) 0%,transparent 25%)}.btn{padding:.8rem 2rem;border-radius:50px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--primary-color);color:#fff;box-shadow:0 4px 15px #6c63ff4d}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 6px 20px #6c63ff80}.btn-secondary{background-color:var(--bg-subtle);color:var(--text-dark);border:1px solid rgba(0,0,0,.05)}.btn-secondary:hover{background-color:#eef1f6;border-color:#0000001a}.delete-container{min-height:100vh;background-color:var(--bg-light);color:var(--text-dark);display:flex;flex-direction:column}.delete-content{flex:1;max-width:500px;margin:4rem auto;padding:2rem;width:100%}.delete-content h1{font-size:2.5rem;margin-bottom:1rem;text-align:center}.delete-form{display:flex;flex-direction:column;gap:1.5rem;background:var(--bg-card);padding:2rem;border-radius:16px;border:1px solid rgba(0,0,0,.05);box-shadow:var(--shadow-lg)}.form-group input{padding:.8rem 1rem;background:var(--bg-subtle);border:1px solid rgba(0,0,0,.1);border-radius:8px;color:var(--text-dark);font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--primary-color);background:#fff}.captcha-group{align-items:center;margin:1rem 0;display:flex;justify-content:center}.btn-danger{background-color:#ff4757;color:#fff;width:100%;border:none;cursor:pointer;padding:.8rem;border-radius:8px;font-weight:600;font-size:1rem;transition:background-color .2s,transform .1s}.btn-danger:hover{background-color:#ff6b81}.btn-danger:active{transform:scale(.98)}.btn-danger:disabled{opacity:.7;cursor:not-allowed;transform:none}@media(max-width:768px){.event-detail-header{flex-direction:column!important;align-items:stretch!important;gap:15px!important}.event-detail-header>div{justify-content:space-between;width:100%}.event-detail-header button{flex:1;justify-content:center}form>div[style*=grid-template-columns]{grid-template-columns:1fr!important}form>div:last-child{flex-direction:column-reverse;align-items:stretch}form>div:last-child button{width:100%;padding:12px!important}}@media(max-width:768px){.event-form-header{flex-direction:column!important;align-items:stretch!important;gap:15px!important}.event-form-header button{justify-content:center;width:100%}form>div[style*=grid-template-columns]{grid-template-columns:1fr!important}form>div:last-child{flex-direction:column-reverse;align-items:stretch}form>div:last-child button{width:100%;padding:12px!important;justify-content:center}}.select-images-step{display:flex;flex-direction:column}.select-images-step .info-banner{padding:16px;background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;margin-bottom:20px}.select-images-step .error-message{margin-top:15px;padding:12px;background-color:#fee;color:#c00;border-radius:4px;border:1px solid #fcc}.select-images-step .actions{margin-top:20px;display:flex;justify-content:flex-end}.select-images-step .btn-primary{padding:10px 24px;background-color:#4285f4;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:700}.select-images-step .btn-disabled{padding:10px 24px;background-color:#ccc;color:#fff;border:none;border-radius:4px;cursor:not-allowed;font-size:16px;font-weight:700}.upload-step{display:flex;flex-direction:column}.upload-step .info-banner{padding:16px;background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;margin-bottom:20px}.upload-step .error-message{margin-bottom:15px;padding:12px;background-color:#fee;color:#c00;border-radius:4px;border:1px solid #fcc}.upload-step .error-actions{display:flex;gap:12px;margin-top:12px}.upload-step .btn-restart,.upload-step .btn-retry{padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.upload-step .btn-restart{background-color:#fff;color:#333;border:1px solid #ccc}.upload-step .btn-restart:hover{background-color:#f5f5f5}.upload-step .btn-retry{background-color:#4285f4;color:#fff;border:none}.upload-step .btn-retry:hover{background-color:#3367d6}.upload-step .upload-summary{margin-bottom:20px}.upload-step .summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;color:#666}.upload-step .upload-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:20px}.upload-step .upload-item{border:1px solid #ccc;border-radius:8px;padding:12px;background-color:#f9f9f9}.upload-step .file-name{font-size:13px;font-weight:700;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-step .progress-bar-container{width:100%;height:20px;background-color:#e0e0e0;border-radius:10px;overflow:hidden;margin-bottom:8px}.upload-step .progress-bar{height:100%;transition:width .3s ease;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700}.upload-step .progress-bar.pending,.upload-step .progress-bar.uploading{background-color:#4285f4}.upload-step .progress-bar.completed{background-color:#4caf50}.upload-step .progress-bar.failed{background-color:#f44336}.upload-step .status-indicator{display:flex;align-items:center;gap:8px;font-size:12px}.upload-step .status-icon{font-size:16px}.upload-step .status-icon.success{color:#4caf50}.upload-step .status-icon.error{color:#f44336}.upload-step .status-text{font-size:12px}.upload-step .status-text.pending{color:#999}.upload-step .status-text.uploading{color:#2196f3}.upload-step .status-text.success{color:#4caf50}.upload-step .status-text.error{color:#f44336}.upload-step .error-detail{margin-top:8px;font-size:11px;color:#f44336;background-color:#fee;padding:6px;border-radius:4px}.upload-step .actions{margin-top:20px;display:flex;justify-content:space-between}.upload-step .btn-back{padding:10px 24px;background-color:#fff;color:#333;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:16px}.spinner-small{width:16px;height:16px;border:2px solid #e0e0e0;border-top:2px solid #4285f4;border-radius:50%;animation:spin 1s linear infinite}.processing-step{display:flex;flex-direction:column}.processing-step .info-banner{padding:16px;background-color:#fff3e0;border-left:4px solid #ff9800;border-radius:4px;margin-bottom:20px}.processing-step .progress-section{margin-bottom:20px}.processing-step .progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;color:#666}.processing-step .progress-stats{display:flex;align-items:center;gap:16px}.processing-step .next-update-badge{background-color:#e3f2fd;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:700;color:#1976d2}.processing-step .progress-bar-container{width:100%;height:24px;background-color:#e0e0e0;border-radius:12px;overflow:hidden;position:relative}.processing-step .progress-bar{height:100%;background-color:#4285f4;transition:width .3s ease;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700}.processing-step .status-badges{display:flex;gap:16px;margin-top:8px;font-size:13px}.processing-step .badge{padding:4px 12px;border-radius:12px;font-weight:500}.processing-step .badge.in-progress{color:#ff9800;background-color:#fff3e0}.processing-step .badge.failed{color:#f44336;background-color:#ffebee}.processing-step .badge.completed{color:#4caf50;background-color:#e8f5e9}.processing-step .images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-top:20px}.processing-step .image-item{border:1px solid #ccc;border-radius:8px;padding:12px;background-color:#f9f9f9}.processing-step .image-filename{font-size:13px;font-weight:700;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.processing-step .image-status{display:flex;align-items:center;gap:8px;font-size:13px}.processing-step .status-icon{font-size:16px;color:#999}.processing-step .status-icon.success{color:#4caf50}.processing-step .status-icon.error{color:#f44336}.processing-step .status-text{font-size:13px}.processing-step .status-text.pending{color:#999}.processing-step .status-text.uploading,.processing-step .status-text.processing{color:#ff9800}.processing-step .status-text.success{color:#4caf50}.processing-step .status-text.error{color:#f44336}.processing-step .error-message{margin-top:8px;font-size:11px;color:#f44336;background-color:#fee;padding:6px;border-radius:4px}.processing-step .extracted-preview{margin-top:8px;font-size:11px;color:#4caf50;background-color:#e8f5e9;padding:6px;border-radius:4px}.processing-step .all-failed-banner{display:flex;align-items:center;gap:16px;padding:20px;background-color:#fff3e0;border:1px solid #ffcc80;border-radius:8px;margin-bottom:20px}.processing-step .all-failed-icon{font-size:32px}.processing-step .all-failed-content{flex:1}.processing-step .all-failed-content strong{display:block;margin-bottom:8px;font-size:16px;color:#e65100}.processing-step .all-failed-content p{margin:0;color:#666;font-size:14px}.processing-step .all-failed-actions{display:flex;gap:12px}.processing-step .failed-images-list{margin-top:16px;padding:12px;background-color:#ffebee;border-radius:4px}.processing-step .failed-images-list ul{margin:8px 0 0;padding-left:20px}.processing-step .failed-images-list li{color:#c62828;font-size:13px;margin-bottom:4px}.processing-step .btn-restart{padding:10px 20px;background-color:#fff;color:#333;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.processing-step .btn-restart:hover{background-color:#f5f5f5}.processing-step .actions{margin-top:20px;display:flex;justify-content:space-between}.processing-step .btn-back{padding:10px 24px;background-color:#fff;color:#333;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:16px}.processing-step .btn-continue{padding:10px 24px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:500}.processing-step .btn-continue:hover{background-color:#43a047}.spinner-small{width:16px;height:16px;border:2px solid #e0e0e0;border-top:2px solid #ff9800;border-radius:50%;animation:spin 1s linear infinite}.text-override-step{padding:1.5rem}.override-tabs{display:flex;gap:1rem;margin-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.tab-btn{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;color:#718096;font-weight:600;cursor:pointer;margin-bottom:-2px;transition:all .2s}.tab-btn:hover{color:#4a5568}.tab-btn.active{color:#667eea;border-bottom-color:#667eea}.text-paste-area{width:100%;min-height:200px;padding:1rem;border:2px solid #ccc;border-radius:12px;font-family:inherit;font-size:.9rem;line-height:1.5;resize:vertical;margin-bottom:1.5rem;transition:all .2s}.text-paste-area:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.drop-zone{border:2px dashed #ccc;border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .2s ease;background:#fafafa;margin-bottom:1.5rem}.drop-zone:hover{border-color:#667eea;background:#f0f4ff}.drop-zone.dragging{border-color:#667eea;background:#e8edff;border-style:solid}.drop-zone.has-file{border-style:solid;border-color:#28a745;background:#f0fff4;cursor:default;padding:1.5rem}.drop-zone-content .drop-icon{font-size:3rem;margin-bottom:1rem}.drop-zone-content p{color:#666;margin:.5rem 0}.or-divider{color:#999;font-size:.85rem}.browse-btn{margin-top:.5rem;padding:.5rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .2s}.browse-btn:hover{background:#5a6fd1}.file-info{display:flex;align-items:center;gap:1rem}.file-icon{font-size:2.5rem}.file-details{flex:1;text-align:left}.file-name{display:block;font-weight:600;color:#333}.file-size{color:#666;font-size:.85rem}.remove-file-btn{background:#dc3545;color:#fff;border:none;border-radius:50%;width:28px;height:28px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center}.remove-file-btn:hover{background:#c82333}.error-message{background:#fff5f5;border:1px solid #feb2b2;color:#c53030;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.error-icon{font-size:1.1rem}.parse-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.parse-btn:hover{opacity:.9}.parsing-status{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem;color:#667eea}.spinner{width:24px;height:24px;border:3px solid #e0e7ff;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.parse-results{margin-bottom:1.5rem}.results-header{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#f0fff4;border:1px solid #9ae6b4;border-radius:8px;margin-bottom:1rem;color:#276749;font-weight:600}.success-icon{background:#28a745;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem}.events-preview{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto;margin-bottom:1rem}.event-preview-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.event-number{font-size:.75rem;color:#a0aec0;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.event-title{font-weight:600;color:#2d3748;margin-bottom:.5rem}.event-title em{color:#a0aec0;font-weight:400}.event-date,.event-location{font-size:.85rem;color:#718096;margin-bottom:.25rem}.raw-text-details{margin-top:.75rem}.raw-text-details summary{cursor:pointer;font-size:.8rem;color:#667eea}.raw-text-details summary:hover{text-decoration:underline}.raw-text{background:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;padding:.75rem;margin-top:.5rem;font-size:.8rem;white-space:pre-wrap;word-wrap:break-word;max-height:150px;overflow-y:auto;color:#4a5568}.change-file-btn{background:transparent;border:1px solid #667eea;color:#667eea;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem}.change-file-btn:hover{background:#f0f4ff}.actions{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:1px solid #e2e8f0;margin-top:1rem}.action-buttons{display:flex;gap:.75rem}.btn-back:hover:not(:disabled){background:#f5f5f5}.btn-back:disabled{opacity:.5;cursor:not-allowed}.btn-skip{background:#f5f5f5;border:1px solid #ddd;color:#666;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.95rem}.btn-skip:hover:not(:disabled){background:#eee}.btn-skip:disabled{opacity:.5;cursor:not-allowed}.matching-step{padding:1.5rem}.info-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 1.5rem;border-radius:12px;margin-bottom:1.5rem}.info-banner strong{display:block;font-size:1.1rem;margin-bottom:.5rem}.info-banner p{margin:0;opacity:.9;font-size:.9rem;line-height:1.4}.info-banner .desktop-hint{display:block}.info-banner .mobile-hint{display:none}@media(max-width:768px){.info-banner .desktop-hint{display:none}.info-banner .mobile-hint{display:block}}.matching-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.stat{display:flex;flex-direction:column;align-items:center;background:#f5f7fa;padding:.75rem 1.5rem;border-radius:8px;flex:1;min-width:80px}.stat-value{font-size:1.5rem;font-weight:700;color:#667eea}.stat-label{font-size:.7rem;color:#718096;text-transform:uppercase;letter-spacing:.05em;text-align:center}.mobile-tabs{display:none;gap:0;margin-bottom:1rem;border-radius:10px;overflow:hidden;border:2px solid #667eea}.tab-btn{flex:1;padding:.875rem 1rem;border:none;background:#fff;color:#667eea;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;position:relative}.tab-btn.active{background:#667eea;color:#fff}.tab-btn:first-child{border-right:1px solid #667eea}.selection-indicator{display:block;font-size:.7rem;font-weight:500;margin-top:.25rem;opacity:.8}.tab-btn.active .selection-indicator{color:gold}.mobile-tab-content{display:none}.mobile-panel{background:#f8fafc;border-radius:12px;padding:1rem}.mobile-panel h3{margin:0 0 1rem;font-size:.9rem;color:#4a5568;text-transform:uppercase;letter-spacing:.05em}.selection-banner{background:linear-gradient(135deg,gold,#ffb300);color:#333;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-weight:600;text-align:center;animation:pulse-glow 1.5s infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 #ffd70066}50%{box-shadow:0 0 10px 4px #ffd70033}}@media(max-width:768px){.mobile-tabs{display:flex}.mobile-tab-content{display:block}.matching-container.desktop-only{display:none}.matching-step{padding:1rem}.matching-stats{gap:.5rem}.stat{padding:.5rem .75rem}.stat-value{font-size:1.25rem}}.matching-container{display:flex;gap:1rem;min-height:400px;max-height:60vh}.column{flex:1;display:flex;flex-direction:column;background:#f8fafc;border-radius:12px;padding:1rem}.column h3{margin:0 0 1rem;font-size:.9rem;color:#4a5568;text-transform:uppercase;letter-spacing:.05em}.events-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.event-card{background:#fff;border:2px solid #e2e8f0;border-radius:10px;padding:1rem;cursor:pointer;transition:all .2s ease}.override-card:not(.matched):hover{border-color:#667eea;box-shadow:0 2px 8px #667eea33}.override-card.selected{border-color:#667eea;background:#f0f4ff;box-shadow:0 2px 12px #667eea4d}.override-card.matched{border-color:#28a745;background:#f0fff4;opacity:.7;cursor:default}.image-card.selectable{border-color:#ffc107;animation:pulse 1.5s infinite}.image-card.selectable:hover,.image-card.matched{border-color:#28a745;background:#f0fff4}@keyframes pulse{0%,to{box-shadow:0 0 #ffc10766}50%{box-shadow:0 0 0 8px #ffc10700}}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.card-badge{font-size:.7rem;padding:.2rem .5rem;border-radius:4px;background:#667eea;color:#fff;text-transform:uppercase;font-weight:600}.card-badge.image-badge{background:#38b2ac}.matched-badge{font-size:.7rem;font-weight:600;display:flex;align-items:center;gap:.35rem}.card-title{font-weight:600;color:#2d3748;margin-bottom:.5rem}.card-title em{color:#a0aec0;font-weight:400}.card-meta{font-size:.8rem;color:#718096;margin-bottom:.25rem}.card-raw-preview{font-size:.75rem;color:#a0aec0;margin-top:.5rem;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-image-row{display:flex;gap:.75rem}.card-thumbnail{width:60px;height:60px;border-radius:6px;background-size:cover;background-position:center;flex-shrink:0}.card-content{flex:1;min-width:0}.unmatch-btn{font-size:.7rem;padding:.2rem .5rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer}.unmatch-btn:hover{background:#c82333}.match-indicator{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0;font-size:.8rem;display:flex;align-items:center;gap:.5rem;font-weight:600}.match-icon{font-size:1rem}.color-dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex-shrink:0}.matched-badge .color-dot{width:10px;height:10px}.match-arrow{display:flex;align-items:center;justify-content:center;width:60px;flex-shrink:0}.arrow-active{display:flex;flex-direction:column;align-items:center;color:#667eea;animation:bounce-right .5s infinite alternate}.arrow-active span:first-child{font-size:2rem;font-weight:700}.arrow-hint{font-size:.7rem;text-align:center;white-space:nowrap}@keyframes bounce-right{0%{transform:translate(0)}to{transform:translate(5px)}}.arrow-inactive{color:#cbd5e0;font-size:2rem}.actions{display:flex;justify-content:space-between;padding-top:1.5rem;border-top:1px solid #e2e8f0;margin-top:1.5rem}.btn-back{background:transparent;border:1px solid #ccc;color:#666;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.95rem}.btn-back:hover{background:#f5f5f5}.btn-proceed{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600}.btn-proceed:hover{opacity:.9}@media(max-width:768px){.actions{gap:.75rem}.btn-back,.btn-proceed{padding:.75rem 1rem;font-size:.9rem}}.review-step{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;background-color:#f8f9fa;font-size:16px;--font-multiplier: 1}.font-size-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:20px;padding:12px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.font-size-controls .font-size-btn{min-width:50px;min-height:44px;padding:10px 16px;background-color:#4285f4;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:calc(16px * var(--font-multiplier));font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.font-size-controls .font-size-btn:active:not(:disabled){background-color:#3367d6}.font-size-controls .font-size-btn:disabled{background-color:#e0e0e0;color:#999;cursor:not-allowed}.font-size-controls .font-size-indicator{font-size:calc(14px * var(--font-multiplier));font-weight:700;color:#1a1a1a;min-width:80px;text-align:center}.review-step-content{flex:1;overflow-y:auto;padding:16px 16px 100px;-webkit-overflow-scrolling:touch}.review-step .info-banner{padding:20px;background-color:#e8f5e9;border-left:5px solid #4caf50;border-radius:8px;margin-bottom:24px;font-size:calc(18px * var(--font-multiplier));line-height:1.5;color:#1a1a1a}.review-step .info-banner strong{display:block;margin-bottom:8px;font-size:calc(20px * var(--font-multiplier))}.review-step .info-banner.warning{background-color:#fff3e0;border-left-color:#ff9800}.review-step .review-summary{margin-bottom:24px;font-size:calc(18px * var(--font-multiplier));color:#1a1a1a;font-weight:600}.review-step .failed-count{color:#d32f2f;font-weight:700}.review-step .failed-files-summary{margin-top:16px;padding:16px;background-color:#ffebee;border-radius:8px}.review-step .failed-files-summary .failed-label{font-weight:700;color:#c62828;font-size:calc(16px * var(--font-multiplier))}.review-step .failed-files-summary .failed-files-list{margin:12px 0 0;padding-left:24px}.review-step .failed-files-summary .failed-files-list li{color:#c62828;font-size:calc(16px * var(--font-multiplier));margin-bottom:8px;line-height:1.4}.review-step .all-failed-state{display:flex;flex-direction:column;align-items:center;padding:40px 20px;background-color:#fff3e0;border:2px solid #ffcc80;border-radius:12px;margin-bottom:24px;text-align:center}.review-step .all-failed-state .all-failed-icon{font-size:calc(64px * var(--font-multiplier));margin-bottom:20px}.review-step .all-failed-state .all-failed-content strong{display:block;font-size:calc(22px * var(--font-multiplier));color:#e65100;margin-bottom:12px}.review-step .all-failed-state .all-failed-content p{margin:0;color:#1a1a1a;font-size:calc(18px * var(--font-multiplier));line-height:1.5}.review-step .all-failed-state .failed-files-list-container{width:100%;text-align:left;background-color:#ffebee;padding:20px;border-radius:8px;margin-top:20px}.review-step .all-failed-state .failed-label{font-weight:700;color:#c62828;font-size:18px}.review-step .all-failed-state .failed-files-list{margin:12px 0 0;padding-left:24px}.review-step .all-failed-state .failed-files-list li{color:#c62828;font-size:16px;margin-bottom:8px}.review-step .individual-view{margin-bottom:24px}.review-step .individual-header{text-align:center;margin-bottom:24px;padding:16px;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.review-step .individual-header .individual-counter{display:block;font-size:calc(24px * var(--font-multiplier));font-weight:700;color:#1a1a1a;margin-bottom:8px}.review-step .individual-header .individual-filename{display:block;font-size:calc(16px * var(--font-multiplier));color:#666;word-break:break-word}.review-step .individual-header .btn-exclude{display:inline-block;margin-top:12px;padding:8px 20px;font-size:calc(14px * var(--font-multiplier));font-weight:600;border:2px solid #e74c3c;border-radius:8px;background-color:#fff;color:#e74c3c;cursor:pointer;min-height:44px}.review-step .individual-header .btn-exclude.excluded{background-color:#2ecc71;border-color:#2ecc71;color:#fff}.review-step .individual-content{display:flex;flex-direction:column;gap:24px}.review-step .individual-image-section{display:flex;justify-content:center;background-color:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #00000014}.review-step .image-wrapper{position:relative;display:inline-block;width:100%}.review-step .individual-image{width:100%;max-height:300px;object-fit:contain;border-radius:8px;cursor:pointer}.review-step .btn-change-image{position:absolute;bottom:12px;right:12px;min-height:44px;padding:10px 20px;background-color:#000000b3;color:#fff;border:2px solid rgba(255,255,255,.6);border-radius:8px;cursor:pointer;font-size:calc(14px * var(--font-multiplier));font-weight:700;font-family:inherit;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);-webkit-appearance:none;appearance:none}.review-step .btn-change-image:active{background-color:#000000d9}.review-step .individual-form{display:flex;flex-direction:column;gap:24px;background-color:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.review-step .form-group{display:flex;flex-direction:column;gap:10px}.review-step .form-group label{font-weight:700;font-size:calc(18px * var(--font-multiplier));color:#1a1a1a}.review-step .form-row{display:flex;flex-direction:column;gap:24px}.review-step .field-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.review-step .optional-label{font-weight:400;font-size:calc(11px * var(--font-multiplier));color:#999}.review-step .field-hint{font-size:calc(12px * var(--font-multiplier));color:#888;margin-bottom:4px}.review-step .field-error{font-size:calc(12px * var(--font-multiplier));color:#d32f2f;margin-top:4px}.review-step .input-error{border-color:#d32f2f}.review-step .validation-error-banner{background:#fef2f2;border:1px solid #fca5a5;color:#b91c1c;padding:10px 16px;border-radius:8px;font-size:calc(14px * var(--font-multiplier));max-height:150px;overflow-y:auto}.review-step .validation-error-header{font-weight:600;margin-bottom:6px}.review-step .validation-error-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.review-step .validation-error-list li{display:flex;align-items:baseline;gap:6px;font-size:calc(13px * var(--font-multiplier))}.review-step .validation-error-link{background:none;border:none;color:#b91c1c;font-weight:600;cursor:pointer;padding:0;text-decoration:underline;font-size:inherit;white-space:nowrap}.review-step .validation-error-link:hover{color:#7f1d1d}.review-step .validation-error-details{color:#991b1b;font-weight:400}.review-step .btn-error{background:#d32f2f!important}.review-step .source-toggle{display:inline-flex;align-items:center;padding:8px 16px;border-radius:20px;font-size:calc(14px * var(--font-multiplier));font-weight:700;cursor:pointer;border:2px solid;min-height:44px}.review-step .source-toggle.image{background:#e3f2fd;border-color:#2196f3;color:#1565c0}.review-step .source-toggle.override{background:#f3e5f5;border-color:#9c27b0;color:#7b1fa2}.review-step .toggle-label{white-space:nowrap}.review-step .alt-value{margin-top:8px;padding:12px 16px;background:#f5f5f5;border-radius:8px;font-size:calc(16px * var(--font-multiplier));color:#444;border-left:4px solid #9c27b0}.review-step .alt-value .alt-label{font-weight:700;color:#7b1fa2}.review-step .edit-input{width:100%;min-height:56px;padding:16px;border:2px solid #ccc;border-radius:8px;font-size:calc(18px * var(--font-multiplier));font-family:inherit;box-sizing:border-box;color:#1a1a1a;background-color:#fff;-webkit-appearance:none;appearance:none}.review-step .edit-input:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 4px #4285f433}.review-step .edit-input::placeholder{color:#888;font-size:calc(16px * var(--font-multiplier))}.review-step .edit-textarea{width:100%;min-height:100px;padding:16px;border:2px solid #ccc;border-radius:8px;font-size:calc(18px * var(--font-multiplier));font-family:inherit;resize:none;box-sizing:border-box;color:#1a1a1a;background-color:#fff;line-height:1.5;overflow:hidden}.review-step .edit-textarea:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 4px #4285f433}.review-step .tags-container{display:flex;flex-wrap:wrap;gap:12px}.review-step .tags-container .tag-pill{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;border-radius:26px;background-color:#f0f0f0;border:2px solid #ddd;cursor:pointer;font-size:calc(16px * var(--font-multiplier));font-weight:500;color:#1a1a1a;-webkit-user-select:none;user-select:none;transition:all .2s ease}.review-step .tags-container .tag-pill input[type=checkbox]{display:none}.review-step .tags-container .tag-pill:active{transform:scale(.98)}.review-step .tags-container .tag-pill.selected{background-color:#4caf50;border-color:#388e3c;color:#fff;font-weight:700}.review-step .image-modal{position:fixed;inset:0;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;cursor:pointer;padding:20px}.review-step .modal-content{max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.review-step .modal-content img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px}.review-step .image-replace-modal{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.review-step .image-replace-modal-content{background-color:#fff;border-radius:16px;padding:24px;width:100%;max-width:480px;box-shadow:0 8px 32px #0003}.review-step .image-replace-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.review-step .image-replace-modal-header h3{margin:0;font-size:calc(20px * var(--font-multiplier));color:#1a1a1a}.review-step .image-replace-modal-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;background:none;border:2px solid #ccc;border-radius:8px;cursor:pointer;font-size:20px;color:#666;-webkit-appearance:none;appearance:none}.review-step .image-replace-modal-close:active{background-color:#f5f5f5}.review-step-footer{position:fixed;bottom:0;left:0;right:0;background-color:#fff;border-top:1px solid #e0e0e0;box-shadow:0 -2px 8px #00000014;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:1000;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.review-step-footer .btn-back{min-width:44px;min-height:44px;padding:10px 14px;background-color:#fff;color:#1a1a1a;border:2px solid #ccc;border-radius:8px;cursor:pointer;font-size:calc(18px * var(--font-multiplier));font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.review-step-footer .btn-back:active:not(:disabled){background-color:#f5f5f5}.review-step-footer .btn-back:disabled{opacity:.5;cursor:not-allowed}.review-step-footer .nav-btn{min-width:44px;min-height:44px;padding:10px 14px;background-color:#4285f4;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:calc(20px * var(--font-multiplier));font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.review-step-footer .nav-btn:active:not(:disabled){background-color:#3367d6}.review-step-footer .nav-btn:disabled{background-color:#e0e0e0;color:#999;cursor:not-allowed}.review-step-footer .nav-counter{font-size:calc(14px * var(--font-multiplier));font-weight:700;color:#1a1a1a;min-width:36px;text-align:center}.review-step-footer .btn-view-image{min-width:44px;min-height:44px;padding:10px 14px;background-color:#7c4dff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:calc(18px * var(--font-multiplier));font-family:inherit;-webkit-appearance:none;appearance:none}.review-step-footer .btn-view-image:active{background-color:#651fff}.review-step-footer .btn-create{flex:1;min-height:44px;padding:10px 16px;background-color:#4caf50;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:calc(16px * var(--font-multiplier));font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.review-step-footer .btn-create:active:not(:disabled){background-color:#388e3c}.review-step-footer .btn-create:disabled{background-color:#ccc;cursor:not-allowed}.review-step-footer .btn-continue-retry{flex:1;min-height:44px;padding:10px 16px;background-color:#ff9800;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:calc(16px * var(--font-multiplier));font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.review-step-footer .btn-continue-retry:active{background-color:#f57c00}.review-step .individual-navigation,.review-step .actions,.review-step .review-table-container,.review-step .review-cards-container,.review-step .view-mode-toggle,.review-step .table-layout-toggle{display:none}.duplicate-check-step{padding:1rem;height:100%;display:flex;flex-direction:column}.duplicate-check-content{flex:1;overflow-y:auto;padding-bottom:2rem}.duplicate-check-header{margin-bottom:1.5rem}.duplicate-check-header h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.duplicate-check-header p{color:#666}.duplicate-item{border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;margin-bottom:2rem;background-color:#fff;transition:all .3s ease}.duplicate-item.expanded{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border-color:#cbd5e1}.duplicate-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.header-info{display:flex;flex-direction:column;gap:.5rem}.header-info h3{margin:0;font-size:1.25rem;font-weight:600}.duplicate-count-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;background-color:#fee2e2;color:#b91c1c;border-radius:9999px;font-size:.875rem;font-weight:500;width:fit-content}.expand-toggle-btn{background:none;border:none;color:#64748b;font-size:.875rem;cursor:pointer;padding:.5rem;border-radius:4px}.expand-toggle-btn:hover{background-color:#f1f5f9;color:#334155}.duplicate-decision-controls{display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #f1f5f9}@media(max-width:640px){.duplicate-decision-controls{flex-direction:column}.decision-btn{width:100%;text-align:center}}.decision-btn{padding:.75rem 1.5rem;border-radius:6px;border:2px solid #e2e8f0;background:#fff;cursor:pointer;font-weight:600;transition:all .2s;flex:1}.decision-btn.keep{border-color:#cbd5e1;color:#475569}.decision-btn.keep:hover{border-color:#22c55e;color:#15803d}.decision-btn.keep.selected{background-color:#22c55e;border-color:#22c55e;color:#fff;box-shadow:0 4px 6px -1px #22c55e33}.decision-btn.remove{border-color:#cbd5e1;color:#475569}.decision-btn.remove:hover{border-color:#ef4444;color:#b91c1c}.decision-btn.remove.selected{background-color:#ef4444;border-color:#ef4444;color:#fff;box-shadow:0 4px 6px -1px #ef444433}.comparison-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(max-width:768px){.comparison-container{grid-template-columns:1fr}}.new-event-card,.existing-matches-card{background:#f8fafc;padding:1.5rem;border-radius:8px;border:1px solid #e2e8f0}.comparison-container>div{display:flex;flex-direction:column}.card-title{font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.25rem;display:block;border-bottom:2px solid #e2e8f0;padding-bottom:.5rem}.event-preview{display:flex;gap:1rem;flex-wrap:wrap}.event-thumbnail{width:80px;height:80px;border-radius:6px;overflow:hidden;flex-shrink:0;background-color:#e2e8f0}.event-thumbnail img{width:100%;height:100%;object-fit:cover}.event-details{flex:1;min-width:200px}.event-details h3{font-size:1.125rem;font-weight:600;margin-bottom:.75rem;color:#1e293b;line-height:1.4}.event-meta{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;color:#475569}.meta-row{display:flex;align-items:center;gap:.5rem}.meta-row .icon{font-size:1rem}.view-details-btn{width:100%;padding:.5rem;margin-top:.75rem;background-color:transparent;border:1px solid #cbd5e0;border-radius:4px;color:#4a5568;font-size:.875rem;cursor:pointer;transition:all .2s}.view-details-btn:hover{background-color:#f7fafc;border-color:#a0aec0;color:#2d3748}.modal-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal-content{background-color:#fff;border-radius:8px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 25px #0003;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:1.25rem;color:#2d3748}.close-modal-btn{background:none;border:none;font-size:2rem;line-height:1;color:#a0aec0;cursor:pointer;padding:0}.close-modal-btn:hover{color:#4a5568}.modal-body{padding:1.5rem;overflow-y:auto}.modal-image{width:100%;height:200px;margin-bottom:1.5rem;background-color:#f7fafc;border-radius:6px;overflow:hidden;display:flex;justify-content:center;align-items:center;position:relative;cursor:zoom-in;transition:all .3s ease}.modal-image.zoomed{display:none}.modal-image img{width:100%;height:100%;object-fit:contain;transition:transform .3s ease}.lightbox-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:2000;background-color:#000000f2;display:flex;justify-content:center;align-items:center;animation:fadeIn .2s ease-out;cursor:zoom-out}.lightbox-image{max-width:95vw;max-height:95vh;object-fit:contain;border-radius:4px;box-shadow:0 0 20px #00000080}.lightbox-close-btn{position:absolute;top:20px;right:20px;background:#fff3;border:none;color:#fff;font-size:2rem;width:50px;height:50px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background .2s}.lightbox-close-btn:hover{background:#fff6}.zoom-hint{position:absolute;bottom:8px;right:8px;background:#0009;color:#fff;padding:4px 8px;border-radius:4px;font-size:.8rem;pointer-events:none;opacity:0;transition:opacity .2s}.modal-image:hover .zoom-hint{opacity:1}.modal-event-title{margin-top:0;margin-bottom:1.5rem;font-size:1.5rem;color:#1a202c;line-height:1.3}.modal-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.detail-item{display:flex;flex-direction:column}.detail-item.full-width{grid-column:1 / -1}.detail-item label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#718096;margin-bottom:.25rem;font-weight:600}.detail-item p{margin:0;color:#2d3748;font-size:1rem;line-height:1.5}.break-all{word-break:break-all;color:#3182ce;text-decoration:none}.break-all:hover{text-decoration:underline}.description-text{white-space:pre-wrap}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end}.btn-close-modal{padding:.5rem 1.5rem;background-color:#e2e8f0;color:#4a5568;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-close-modal:hover{background-color:#cbd5e0}.similarity-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;margin-bottom:.75rem;border:1px solid transparent}.similarity-badge.high{background-color:#fee2e2;color:#991b1b;border-color:#fecaca}.similarity-badge.medium{background-color:#ffedd5;color:#9a3412;border-color:#fed7aa}.similar-matches-list{display:flex;flex-direction:column;gap:1rem}.similar-match-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:1rem}.duplicate-check-footer{border-top:1px solid #e2e8f0;padding-top:1rem;display:flex;justify-content:space-between;align-items:center;background:#fff;position:sticky;bottom:0}.btn-continue{background-color:#2563eb;color:#fff;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;border:none;cursor:pointer;font-size:1rem;box-shadow:0 1px 2px #0000000d}.btn-continue:hover:not(:disabled){background-color:#1d4ed8}.btn-continue:disabled{background-color:#cbd5e1;cursor:not-allowed}.btn-back{background:none;border:none;color:#64748b;cursor:pointer;font-size:1rem;padding:.5rem 1rem;font-weight:500}.btn-back:hover{color:#334155}.loading-container,.no-duplicates{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#64748b}.spinner{border:3px solid #f3f3f3;border-top:3px solid #3b82f6;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.retry-step{max-width:800px;margin:0 auto;text-align:center;padding:20px}.success-icon{font-size:48px;color:#4caf50;width:80px;height:80px;border-radius:50%;border:4px solid #4caf50;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.failed-section{margin-top:40px;border-top:1px solid #eee;padding-top:20px}.warning-banner{background-color:#fff3e0;border:1px solid #ffe0b2;color:#e65100;padding:15px;border-radius:8px;margin-bottom:20px;text-align:left}.warning-banner p{margin:5px 0 0;font-size:14px}.failed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;margin-bottom:30px}.failed-item{border:1px solid #ffcdd2;border-radius:8px;overflow:hidden;position:relative}.failed-item img{width:100%;height:120px;object-fit:cover}.failed-item .file-name{padding:8px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#fff}.error-badge{position:absolute;top:5px;right:5px;background:#f44336;color:#fff;font-size:10px;padding:2px 6px;border-radius:4px}.retry-actions{margin-bottom:30px}.btn-retry{background-color:#ff9800;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-retry:hover{background-color:#f57c00}.actions{margin-top:40px}.wizard-container{padding:20px;max-width:1000px;margin:0 auto}.wizard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.wizard-header h1{font-size:24px;font-weight:700;margin:0}.wizard-header .close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:4px 8px}.wizard-header .close-btn:hover{color:#333}.wizard-steps{display:flex;justify-content:space-between;margin-bottom:40px;position:relative}.wizard-steps:before{content:"";position:absolute;top:20px;left:0;right:0;height:2px;background-color:#e0e0e0;z-index:0}.wizard-steps .step{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:1;flex:1}.wizard-steps .step-number{width:40px;height:40px;border-radius:50%;background-color:#e0e0e0;color:#999;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;transition:all .3s ease}.wizard-steps .step.active .step-number{background-color:#4285f4;color:#fff}.wizard-steps .step span{font-weight:400;font-size:14px;color:#999}.wizard-steps .step.active span{font-weight:700;color:#333}@media(max-width:768px){.mobile-stack{flex-direction:column;align-items:stretch!important;gap:15px!important}.mobile-full-width{width:100%}table,thead,tbody,th,td,tr{display:block}thead{display:none}tr{border:1px solid #ccc;border-radius:8px;margin-bottom:15px;background:#fff;box-shadow:0 2px 5px #0000000d;padding-bottom:10px}td{border:none;border-bottom:1px solid #eee;position:relative;padding:10px 15px 10px 40%!important;text-align:right;min-height:40px;display:flex;align-items:center;justify-content:flex-end;word-break:break-word}td:before{position:absolute;left:15px;width:35%;white-space:nowrap;text-align:left;font-weight:700;color:#666;content:attr(data-label)}td:last-child{border-bottom:0;justify-content:center;padding-left:15px!important}td:last-child:before{display:none}td button{width:100%;padding:10px!important;margin-top:5px}}@media(max-width:768px){.mobile-stack{flex-direction:column;align-items:stretch!important;gap:15px!important}.mobile-full-width{width:100%}.mobile-hidden{display:none!important}table,thead,tbody,th,td,tr{display:block}thead{display:none}tr{border:1px solid #ccc;border-radius:8px;margin-bottom:15px;background:#fff;box-shadow:0 2px 5px #0000000d;padding-bottom:10px}td{border:none;border-bottom:1px solid #eee;position:relative;padding:10px 15px 10px 40%!important;text-align:right;min-height:40px;display:flex;align-items:center;justify-content:flex-end;word-break:break-word}td:before{position:absolute;left:15px;width:35%;white-space:nowrap;text-align:left;font-weight:700;color:#666;content:attr(data-label)}td:last-child{border-bottom:0;display:flex;justify-content:center;padding-left:15px!important;padding-top:15px!important;gap:10px;flex-wrap:wrap}td:last-child:before{display:none}td:last-child>div{width:100%;justify-content:space-between}td:last-child button{flex:1;padding:10px!important}}@media(max-width:768px){.user-detail-container{padding:12px!important}.user-detail-header{flex-direction:column!important;align-items:stretch!important;gap:12px!important}.user-detail-content{flex-direction:column!important}.user-detail-comments{border-left:none!important;border-top:2px solid #e0e0e0!important;padding-left:0!important;padding-top:30px!important;margin-top:30px!important;min-width:0!important}.user-detail-title{font-size:24px!important}}.contact-container{min-height:100vh;background-color:var(--bg-light);color:var(--text-dark);display:flex;flex-direction:column}.simple-nav{justify-content:center;border-bottom:1px solid rgba(0,0,0,.05)}.contact-content{flex:1;max-width:600px;margin:4rem auto;padding:2rem;width:100%}.contact-content h1{font-size:2.5rem;margin-bottom:1rem;text-align:center}.description{text-align:center;color:var(--text-dim);margin-bottom:3rem;line-height:1.6}.contact-form{display:flex;flex-direction:column;gap:1.5rem;background:var(--bg-card);padding:2rem;border-radius:16px;border:1px solid rgba(0,0,0,.05);box-shadow:var(--shadow-lg)}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;font-size:.9rem;color:var(--text-dim)}.form-group input,.form-group textarea{padding:.8rem 1rem;background:var(--bg-subtle);border:1px solid rgba(0,0,0,.1);border-radius:8px;color:var(--text-dark);font-size:1rem;transition:border-color .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);background:#fff}.error-input{border-color:#ff4757!important}.error-msg{color:#ff4757;font-size:.85rem}.btn-primary{background-color:var(--primary-color);color:#fff;width:100%;border:none;cursor:pointer;padding:.8rem;border-radius:8px;font-weight:600;font-size:1rem;transition:background-color .2s,transform .1s;text-align:center;text-decoration:none;display:inline-block}.btn-primary:hover{background-color:var(--primary-color-hover);filter:brightness(.9)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.success-message{text-align:center;display:flex;flex-direction:column;align-items:center}.icon-circle{width:80px;height:80px;border-radius:50%;background:#2ed5731a;color:#2ed573;font-size:3rem;display:flex;justify-content:center;align-items:center;margin-bottom:2rem}.submission-wizard{max-width:900px;margin:0 auto;padding:20px}.wizard-steps{display:flex;align-items:center;gap:4px;margin-bottom:24px;padding:0;list-style:none}.wizard-step{display:flex;align-items:center;gap:4px;font-size:13px;color:#999;font-weight:500}.wizard-step.active{color:#2563eb;font-weight:600}.wizard-step.completed{color:#16a34a}.step-number{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:2px solid #ccc;font-size:12px;font-weight:600}.wizard-step.active .step-number{border-color:#2563eb;background:#2563eb;color:#fff}.wizard-step.completed .step-number{border-color:#16a34a;background:#16a34a;color:#fff}.step-divider{flex:0 0 20px;height:2px;background:#e0e0e0}.wizard-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:24px;margin-bottom:20px}.wizard-card h2{margin:0 0 16px;font-size:18px;font-weight:600}.flyer-image-container{text-align:center;margin-bottom:16px}.flyer-image{max-width:100%;max-height:600px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.transcribe-status{text-align:center;padding:24px}.transcribe-status .spinner{display:inline-block;width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}@keyframes spin{to{transform:rotate(360deg)}}.transcribe-status p{color:#666;font-size:14px}.transcribe-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:16px;color:#991b1b;margin-top:12px}.transcribe-success{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:12px 16px;color:#166534;font-size:14px;margin-bottom:16px}.review-form .form-group{margin-bottom:14px}.review-form label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:4px}.review-form input[type=text],.review-form input[type=datetime-local],.review-form textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;box-sizing:border-box}.review-form textarea{resize:vertical;min-height:80px}.review-form input:focus,.review-form textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.submitter-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:16px}.submitter-info h3{margin:0 0 8px;font-size:14px;color:#64748b;font-weight:600}.submitter-info p{margin:4px 0;font-size:14px;color:#334155}.tags-container{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.tag-pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:12px;cursor:pointer;border:1px solid #d1d5db;background:#fff;transition:all .15s}.tag-pill input[type=checkbox]{display:none}.tag-pill.selected{background:#2563eb;color:#fff;border-color:#2563eb}.wizard-actions{display:flex;justify-content:space-between;align-items:center;margin-top:24px}.btn-primary{padding:10px 24px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#1d4ed8}.btn-primary:disabled{background:#93c5fd;cursor:not-allowed}.btn-secondary{padding:10px 24px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.btn-secondary:hover{background:#f9fafb}.btn-success{padding:10px 24px;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.btn-success:hover{background:#15803d}.btn-danger{padding:10px 24px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.btn-danger:hover{background:#b91c1c}.admin-notes-section{margin-top:16px}.admin-notes-section textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;min-height:60px;resize:vertical;box-sizing:border-box}.instagram-posts{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;background-color:#f8f9fa}.instagram-posts-header{padding:16px;background-color:#fff;border-bottom:1px solid #e0e0e0;display:flex;align-items:center;justify-content:space-between;gap:12px}.instagram-posts-header h1{margin:0;font-size:20px;color:#1a1a1a}.view-toggle{display:flex;border:2px solid #ccc;border-radius:8px;overflow:hidden}.view-toggle-btn{min-height:40px;padding:8px 16px;background-color:#fff;color:#666;border:none;cursor:pointer;font-size:14px;font-weight:600;font-family:inherit;-webkit-appearance:none;appearance:none}.view-toggle-btn+.view-toggle-btn{border-left:2px solid #ccc}.view-toggle-btn.active{background-color:#4285f4;color:#fff}.view-toggle-btn:active:not(.active){background-color:#f0f0f0}.instagram-posts-content{flex:1;overflow-y:auto;padding:16px 16px 120px;-webkit-overflow-scrolling:touch}.instagram-posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.instagram-posts-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.instagram-posts-card.selected{border:2px solid #4285f4}.card-image-container{position:relative}.card-image{width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block;cursor:pointer}.card-checkbox{position:absolute;top:8px;left:8px;width:32px;height:32px;cursor:pointer;-webkit-appearance:none;appearance:none;background-color:#ffffffe6;border:2px solid #999;border-radius:6px;margin:0}.card-checkbox:checked{background-color:#4285f4;border-color:#4285f4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E");background-size:20px;background-position:center;background-repeat:no-repeat}.card-confidence-badge{position:absolute;top:8px;right:8px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;color:#fff}.card-confidence-badge.high{background-color:#2ecc71}.card-confidence-badge.medium{background-color:#f39c12}.card-body{padding:12px}.card-caption{color:#888;font-size:13px;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#aaa}.card-dismiss-btn{margin-top:8px;width:100%;min-height:44px;padding:10px;background-color:#fff;color:#999;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;font-family:inherit;-webkit-appearance:none;appearance:none}.card-dismiss-btn:active:not(:disabled){background-color:#f5f5f5}.card-dismiss-btn:disabled{opacity:.5;cursor:not-allowed}.single-view{display:flex;flex-direction:column;gap:16px}.single-counter{text-align:center;font-size:16px;font-weight:700;color:#1a1a1a;padding:8px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d}.single-image-section{position:relative;background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014}.single-image{width:100%;object-fit:contain;max-height:50vh;display:block}.single-details{background-color:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #00000014}.single-caption{color:#444;font-size:15px;line-height:1.5;margin-bottom:12px}.single-meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#888}.instagram-posts-footer{position:fixed;bottom:0;left:0;right:0;background-color:#fff;border-top:1px solid #e0e0e0;box-shadow:0 -2px 8px #00000014;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:1000;display:flex;flex-direction:row;align-items:center;gap:12px}.footer-select-all-btn{min-height:44px;padding:10px 16px;background-color:#fff;color:#666;border:2px solid #ccc;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;font-family:inherit;-webkit-appearance:none;appearance:none}.footer-select-all-btn:active{background-color:#f5f5f5}.footer-process-btn{flex:1;min-height:44px;padding:10px 16px;background-color:#4285f4;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.footer-process-btn:active:not(:disabled){background-color:#3367d6}.footer-process-btn:disabled{background-color:#ccc;cursor:not-allowed}.footer-notice-btn{flex:1;min-height:44px;padding:10px 16px;background-color:#7c3aed;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.footer-notice-btn:active:not(:disabled){background-color:#6d28d9}.footer-notice-btn:disabled{background-color:#ccc;cursor:not-allowed}.single-footer{justify-content:space-between;gap:8px}.footer-nav-btn{min-width:44px;min-height:44px;padding:10px 14px;background-color:#fff;color:#1a1a1a;border:2px solid #ccc;border-radius:8px;cursor:pointer;font-size:20px;font-weight:700;font-family:inherit;-webkit-appearance:none;appearance:none}.footer-nav-btn:active:not(:disabled){background-color:#f5f5f5}.footer-nav-btn:disabled{opacity:.4;cursor:not-allowed}.footer-select-btn{flex:1;min-height:44px;padding:10px 12px;background-color:#fff;color:#666;border:2px solid #ccc;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;font-family:inherit;-webkit-appearance:none;appearance:none}.footer-select-btn.active{background-color:#4285f4;color:#fff;border-color:#4285f4}.footer-select-btn:active:not(.active){background-color:#f0f0f0}.footer-dismiss-btn{min-height:44px;padding:10px 12px;background-color:#fff;color:#d32f2f;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;font-family:inherit;-webkit-appearance:none;appearance:none}.footer-dismiss-btn:active:not(:disabled){background-color:#fef2f2}.footer-dismiss-btn:disabled{opacity:.5;cursor:not-allowed}.single-process-bar{position:fixed;bottom:0;left:0;right:0;bottom:calc(68px + env(safe-area-inset-bottom,0px));background-color:#fff;border-top:1px solid #e0e0e0;padding:8px 16px;z-index:999;display:flex}.instagram-posts-empty{text-align:center;padding:60px 20px;color:#666;background-color:#fff;border-radius:8px;border:1px solid #e0e0e0}.instagram-posts-empty h2{margin:0 0 8px;color:#333}.instagram-posts-empty p{margin:0}.detail-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.detail-modal{background-color:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;-webkit-overflow-scrolling:touch}.detail-modal-close{position:absolute;top:8px;right:8px;width:36px;height:36px;border:none;background-color:#00000080;color:#fff;font-size:24px;line-height:1;border-radius:50%;cursor:pointer;z-index:1;display:flex;align-items:center;justify-content:center}.detail-modal-image{width:100%;object-fit:contain;max-height:50vh;display:block;border-radius:12px 12px 0 0;background-color:#f0f0f0}.detail-modal-body{padding:16px}.detail-modal-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:14px}.detail-modal-label{color:#888;font-weight:600;flex-shrink:0;margin-right:12px}.detail-modal-caption{margin-top:12px;font-size:14px;line-height:1.5;color:#444;white-space:pre-wrap;word-break:break-word}.detail-modal-link{display:block;margin-top:16px;padding:12px;text-align:center;background-color:#f0f0f0;color:#e1306c;font-weight:700;font-size:15px;text-decoration:none;border-radius:8px}.detail-modal-link:active{background-color:#e5e5e5}.instagram-posts-loading{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;color:#666;font-size:16px}.raffle-result-page{min-height:100vh;background:#f6f7fb;color:#172033;display:flex;align-items:center;justify-content:center;padding:20px}.raffle-result-shell{width:min(100%,1200px);display:grid;grid-template-columns:2fr 1fr;gap:28px;align-items:center}.raffle-wheel-panel,.raffle-summary-panel{background:#fff;border:1px solid #e1e5ee;border-radius:8px;box-shadow:0 16px 45px #141f3514}.raffle-wheel-panel{padding:22px}.raffle-debug-panel{max-height:210px;overflow:auto;margin:0 0 16px;padding:12px;background:#111827;color:#e5e7eb;border-radius:8px;font-size:11px;line-height:1.45;text-align:left;white-space:pre-wrap;word-break:break-word}.raffle-wheel-stage{position:relative;width:100%;aspect-ratio:1;min-height:280px;display:grid;place-items:center}.raffle-fortune-wheel{position:relative;width:min(100%,410px);height:min(100vw - 92px,410px);max-height:410px;max-width:410px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 16px 24px rgba(20,31,53,.18))}.raffle-fortune-wheel>div{position:relative;width:100%;aspect-ratio:1}.raffle-fortune-wheel>div>div:nth-child(1){position:absolute;top:-4px;left:50%;z-index:10;transform:translate(-50%)}.raffle-fortune-wheel>div>div:nth-child(2){position:absolute;inset:0;overflow:hidden;border:8px solid #111827;border-radius:50%}.raffle-fortune-wheel>div>div:nth-child(2)>div{position:absolute;inset:0;display:flex;justify-content:center;text-align:center;transform-origin:center}.raffle-fortune-wheel>div>div:nth-child(2)>div>div{position:absolute;top:15%;max-width:38%;overflow:hidden;text-overflow:ellipsis}.raffle-fortune-wheel>div>div:nth-child(3){position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;pointer-events:none}.raffle-wheel-pointer{width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:34px solid #111827;filter:drop-shadow(0 3px 5px rgba(17,24,39,.25))}.raffle-wheel-spin-button{width:86px;height:86px;border:5px solid #fff;border-radius:50%;background:#111827;color:#fff;font-size:14px;font-weight:800;letter-spacing:0;box-shadow:inset 0 0 0 1px #ffffff47,0 10px 22px #11182738;pointer-events:none}.raffle-wheel-prize-label{display:block;color:#101827;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:800;letter-spacing:0;white-space:nowrap}.raffle-summary-panel{padding:28px}.raffle-kicker{color:#667085;font-size:13px;font-weight:700;margin:0 0 8px;text-transform:uppercase}.raffle-summary-panel h1{font-size:32px;line-height:1.08;margin:0 0 12px}.raffle-copy{color:#475467;font-size:16px;line-height:1.5;margin:0 0 22px}.raffle-code-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:22px}.raffle-code-box{border:1px solid #dde3ed;border-radius:8px;padding:14px;background:#f9fafb}.raffle-code-box span{display:block;color:#667085;font-size:12px;font-weight:700;margin-bottom:6px}.raffle-code-box strong{display:block;color:#111827;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:22px;letter-spacing:0}.raffle-result-message{border-radius:8px;padding:16px;font-size:16px;line-height:1.45;font-weight:700}.raffle-result-message.win{background:#ecfdf3;color:#05603a;border:1px solid #abefc6}.raffle-result-message.lose{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.raffle-result-message.pending{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.raffle-error{width:min(100%,520px);background:#fff;border:1px solid #e1e5ee;border-radius:8px;padding:28px;text-align:center}@media(max-width:760px){.raffle-result-shell{grid-template-columns:1fr;gap:18px}.raffle-summary-panel{order:-1;padding:22px}.raffle-wheel-panel{order:1}.raffle-summary-panel h1{font-size:26px}}@media(max-width:430px){.raffle-result-page{padding:12px;align-items:flex-start}.raffle-code-grid{grid-template-columns:1fr}}
