:root{--bg-color: #f8fafc;--card-bg: #ffffff;--card-border: #e2e8f0;--text-main: #0f172a;--text-muted: #64748b;--primary: #2563eb;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .05)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif;background-color:var(--bg-color);color:var(--text-main);padding:1rem}.container{max-width:1000px;margin:0 auto}.hero-header{text-align:center;margin-bottom:1.5rem;padding-top:1rem}.contest-theme-badge{display:inline-block;background:#eff6ff;color:var(--primary);border:1px solid #bfdbfe;padding:.35rem .85rem;border-radius:20px;font-weight:700;font-size:.8rem;text-transform:uppercase;margin-bottom:.5rem}.hero-title{font-size:1.6rem;font-weight:900}.rules-accordion{background:#fff;border:1px solid var(--card-border);border-radius:12px;margin-bottom:1.5rem;overflow:hidden;box-shadow:var(--shadow)}.rules-accordion summary{padding:.85rem 1rem;font-weight:700;font-size:.9rem;cursor:pointer;background:#f8fafc;user-select:none;color:var(--text-main)}.rules-content{padding:1rem;font-size:.85rem;line-height:1.5;color:var(--text-muted);border-top:1px solid var(--card-border)}.rules-content ul{margin-left:1.2rem;margin-top:.5rem}.rules-content li{margin-bottom:.3rem}.header-bar{position:sticky;top:.5rem;z-index:10;background:#fffffff2;backdrop-filter:blur(8px);padding:.75rem 1rem;border-radius:12px;border:1px solid var(--card-border);display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;box-shadow:var(--shadow)}.btn-submit{background:var(--primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-weight:700;cursor:pointer;transition:background-color .2s ease}.btn-submit:disabled{opacity:.4;cursor:not-allowed}.masonry-grid{column-count:3;column-gap:1rem;width:100%}.photo-card{break-inside:avoid;margin-bottom:1rem;background:var(--card-bg);border-radius:12px;border:2px solid var(--card-border);overflow:hidden;cursor:pointer;display:flex;flex-direction:column;position:relative;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;user-select:none}.photo-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.photo-card.selected{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.checkbox-indicator{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:50%;background:#ffffffe6;border:2px solid var(--card-border);display:flex;align-items:center;justify-content:center;z-index:5;transition:all .2s ease;pointer-events:none}.checkbox-indicator:after{content:"✓";color:#fff;font-size:14px;font-weight:700;display:none}.photo-card.selected .checkbox-indicator{background:var(--primary);border-color:var(--primary)}.photo-card.selected .checkbox-indicator:after{display:block}.img-wrapper{position:relative;width:100%;background:#e2e8f0}.img-wrapper img{width:100%;height:auto;display:block;object-fit:cover}.card-info{padding:.75rem 2.2rem .75rem .75rem;position:relative}.card-title{font-weight:700;font-size:.9rem}.card-author{color:var(--text-muted);font-size:.8rem}.zoom-btn{position:absolute;bottom:.6rem;right:.6rem;width:28px;height:28px;border-radius:50%;background:#f1f5f9;color:var(--text-main);border:1px solid var(--card-border);display:flex;align-items:center;justify-content:center;font-size:12px;z-index:5;cursor:pointer;transition:background .2s ease,transform .2s ease}.zoom-btn:hover{background:#e2e8f0;transform:scale(1.1)}.image-modal{display:none;position:fixed;inset:0;z-index:999;background:#0f172ae6;backdrop-filter:blur(5px);align-items:center;justify-content:center;padding:1rem}.image-modal.active{display:flex}.modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.modal-img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 25px -5px #00000080}.modal-info{color:#fff;text-align:center;margin-top:.75rem}.modal-title{font-weight:700;font-size:1.1rem}.modal-author{color:#94a3b8;font-size:.9rem}.modal-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;line-height:1}.jury-info-box{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;border-radius:12px;padding:.85rem 1rem;font-size:.85rem;line-height:1.4;margin:1rem 0;text-align:center;font-weight:500}.jury-info-box strong{color:#15803d}.instagram-box{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);color:#fff;border-radius:12px;padding:1rem;margin-top:1.25rem;text-align:center;box-shadow:var(--shadow)}.instagram-box h3{font-size:1rem;font-weight:800;margin-bottom:.25rem}.instagram-box p{font-size:.85rem;opacity:.95;margin-bottom:.75rem}.instagram-btn{display:inline-flex;align-items:center;gap:.4rem;background:#fff;color:#d62976;font-weight:800;font-size:.85rem;padding:.5rem 1rem;border-radius:20px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.instagram-btn:hover{transform:translateY(-2px);box-shadow:0 4px 10px #00000026}.status-card{display:none;background:var(--card-bg);border-radius:16px;border:1px solid var(--card-border);padding:1.25rem;box-shadow:var(--shadow);text-align:center}.top3-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0}.top3-card{background:#fff;border:2px solid var(--card-border);border-radius:12px;overflow:hidden;text-align:left;position:relative;box-shadow:var(--shadow)}.top3-card.rank-1-card{border-color:#f59e0b}.top3-badge{position:absolute;top:8px;left:8px;padding:3px 8px;border-radius:12px;font-weight:800;font-size:.75rem;color:#fff;z-index:2}.rank-1-badge{background:#f59e0b}.rank-2-badge{background:#64748b}.rank-3-badge{background:#b45309}.top3-img-container{height:160px;width:100%;overflow:hidden;background:#f1f5f9}.top3-img-container img{width:100%!important;height:160px!important;object-fit:cover!important}.top3-content{padding:.85rem}.top3-title{font-weight:800;font-size:.95rem}.top3-author{color:var(--text-muted);font-size:.8rem;margin-bottom:.75rem}.progress-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.4rem .6rem}.progress-labels{display:flex;justify-content:flex-end;font-size:.8rem;font-weight:700;margin-bottom:.25rem}.progress-bg{height:8px;width:100%;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;width:0%;background:var(--primary);border-radius:4px;transition:width .8s ease-out}.rank-1-card .progress-fill{background:#f59e0b}.full-results-box{background:#fff;border:1px solid var(--card-border);border-radius:12px;padding:1rem;margin-top:1.5rem;text-align:left}.results-list{display:flex;flex-direction:column;gap:.75rem}.result-row{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:10px!important;padding:.6rem!important;display:flex!important;align-items:center!important;gap:.75rem!important;width:100%!important;box-sizing:border-box!important}.result-rank{font-weight:800;font-size:.85rem;color:var(--text-muted);min-width:28px;text-align:center}.result-thumb{width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;max-width:60px!important;max-height:60px!important;border-radius:6px!important;object-fit:cover!important;display:block!important;flex-shrink:0!important}.result-details{flex:1 1 auto!important;min-width:0!important}.result-title{font-weight:700;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-author{font-size:.75rem;color:var(--text-muted);margin-bottom:.35rem}@media (max-width: 900px){.masonry-grid{column-count:3}}@media (max-width: 600px){body{padding:.5rem}.hero-title{font-size:1.3rem}.masonry-grid{column-count:2;column-gap:.5rem}.photo-card{margin-bottom:.5rem}.top3-grid{grid-template-columns:1fr}.result-thumb{width:50px!important;height:50px!important;min-width:50px!important}}
