.rules-container{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:16px 0;padding:24px}.rules-header{margin-bottom:24px;text-align:center}.rules-header h2{color:#2c3e50;font-size:1.8rem;font-weight:600;margin:0}.rules-content{margin:0 auto;max-width:800px}.rules-section{border-bottom:1px solid #f0f4f7;margin-bottom:24px;padding-bottom:20px}.rules-section:last-child{border-bottom:none;margin-bottom:0}.rules-section h3{align-items:center;color:#34495e;display:flex;font-size:1.2rem;font-weight:600;gap:8px;margin-bottom:12px}.rules-section ul{list-style-type:disc;margin:0;padding-left:20px}.rules-section li{color:#555;line-height:1.5;margin-bottom:8px}.rules-section p{color:#555;line-height:1.6;margin:8px 0}.rules-section strong{color:#2c3e50;font-weight:600}.rules-section em{color:#e74c3c;font-style:italic;font-weight:500}.prizes-section{background:linear-gradient(135deg,#ffecd2,#fcb69f);border:2px solid #f39c12;border-radius:8px;padding:20px}.prizes-section h3{color:#d68910;margin-bottom:16px}.prizes-section li,.prizes-section p{color:#8b4513}.prizes-section strong{color:sienna}.rules-compact{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;margin:12px 0;padding:16px}.rules-compact h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 12px}.rules-compact p{color:#555;font-size:.9rem;line-height:1.4;margin:6px 0}.rules-compact strong{color:#2c3e50;font-weight:600}@media (max-width:768px){.rules-container{margin:12px 0;padding:16px}.rules-header h2{font-size:1.5rem}.rules-section h3{font-size:1.1rem}.rules-section{margin-bottom:20px;padding-bottom:16px}.prizes-section{padding:16px}}.login-container{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:1000px;padding:40px;text-align:center;width:100%}.login-header h1{color:#8b4513;font-size:2.5rem;font-weight:700;margin:0 0 10px}.login-header p{color:sienna;font-size:1.1rem;margin:0 0 30px}.team-selection{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.team-card{background:#fff;border:3px solid #0000;border-radius:16px;box-shadow:0 4px 12px #0000001a;cursor:pointer;overflow:hidden;padding:20px;position:relative;text-align:center;transition:all .3s ease}.team-card:hover{border-color:#ff6b35;box-shadow:0 12px 24px #00000026;transform:translateY(-8px)}.team-card:active{transform:translateY(-4px)}.team-card:before{background:linear-gradient(135deg,#ff6b35,#f7931e);content:"";height:6px;left:0;position:absolute;right:0;top:0}.team-card-picture{background:#f8f8f8;border:4px solid #f0f0f0;border-radius:16px;height:170px;margin:0 auto 5px;overflow:hidden;transition:all .3s ease;width:170px}.team-card:hover .team-card-picture{border-color:#ff6b35;transform:scale(1.02)}.team-picture-preview{height:100%;object-fit:contain;width:100%}.team-picture-placeholder{background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:#ccc;font-size:3rem}.team-card-info{display:flex;flex-direction:column;gap:8px}.team-card-id{background:linear-gradient(135deg,#ff6b35,#f7931e);border-radius:20px;color:#fff;display:inline-block;font-size:1.1rem;font-weight:700;margin:0 auto;min-width:80px;padding:8px 16px}.team-card-name{color:#333;font-size:1rem;font-weight:600;margin-top:0}.huntmaster-card{background:linear-gradient(135deg,#2c3e50,#34495e)!important;border:3px solid #f39c12!important;color:#fff}.huntmaster-card:before{background:linear-gradient(135deg,#f39c12,#e67e22)!important}.huntmaster-card:hover{background:linear-gradient(135deg,#1a252f,#2c3e50)!important;border-color:#e67e22!important}.huntmaster-card .team-card-picture{border-color:#f39c12}.huntmaster-card:hover .team-card-picture{border-color:#e67e22}.huntmaster-card .team-card-id{background:linear-gradient(135deg,#f39c12,#e67e22)}.huntmaster-card .team-card-name{color:#fff}.login-form{margin-bottom:30px}.form-group{margin-bottom:24px;text-align:left}.form-group label{color:#8b4513;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.passcode-input{border:2px solid #deb887;border-radius:12px;box-sizing:border-box;font-size:1.1rem;font-weight:600;letter-spacing:2px;padding:16px;text-align:center;transition:border-color .3s ease;width:100%}.passcode-input:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a;outline:none}.passcode-input:disabled{background-color:#f7fafc;cursor:not-allowed}.button-group{align-items:center;display:flex;gap:12px;justify-content:space-between}.back-button{background:#deb887;border:none;border-radius:12px;color:#8b4513;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:16px 24px;transition:all .3s ease}.back-button:hover:not(:disabled){background:tan;transform:translateY(-1px)}.back-button:disabled{cursor:not-allowed;opacity:.6}.login-button{background:linear-gradient(135deg,tomato,#ff4500);border:none;border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#fff;cursor:pointer;flex:2 1;font-size:1.1rem;font-weight:700;padding:16px 32px;transition:all .3s ease}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#e5533d,#e53e00);box-shadow:0 8px 15px #0003;transform:translateY(-2px)}.login-button:disabled{background:peru;box-shadow:none;cursor:not-allowed;transform:none}.login-form button:only-child{flex:none;width:100%}.error-message{background:#ffe4e1;border-left:4px solid #dc143c;color:#b22222;font-weight:600;margin-bottom:20px;padding:12px}.login-footer{color:sienna;font-size:.9rem;line-height:2em}.login-footer small{color:#8b7355;display:block;font-style:italic;margin-top:.5rem}.loading-teams{align-items:center;color:#8b4513;display:flex;font-size:1.1rem;justify-content:center;padding:2rem}.loading-teams p{margin:0}.login-card .error-message{background:#f8d7da;border-radius:8px;color:#721c24;font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem;text-align:left}@media (max-width:768px){.login-card{margin:10px;padding:30px 20px}.login-header h1{font-size:2rem}.team-selection{grid-template-columns:1fr}.button-group{flex-direction:column}.back-button,.login-button{flex:none;min-height:48px;width:100%}}@media (max-width:480px){.login-container{padding:10px}.login-card{padding:25px 15px}.login-header h1{font-size:1.8rem}.team-selection{gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.team-card{min-height:60px;padding:16px}.team-card-picture{height:120px;width:120px}.team-card-id{font-size:1rem;padding:6px 12px}.passcode-input{font-size:16px;min-height:48px;padding:16px 14px}.back-button,.login-button{min-height:48px;padding:16px 20px}}@media (hover:none) and (pointer:coarse){.team-card{min-height:60px;padding:16px}.passcode-input{font-size:16px;min-height:48px}.back-button,.login-button{min-height:48px;padding:16px 24px}.team-card:hover{border-color:#0000;box-shadow:0 4px 12px #0000001a;transform:none}.team-card:hover .team-card-picture{border-color:#f0f0f0;transform:none}.huntmaster-card:hover .team-card-picture{border-color:#f39c12}.back-button:hover:not(:disabled){transform:none}.login-button:hover:not(:disabled){box-shadow:0 4px 6px #0000001a;transform:none}}.item-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000001a;max-width:100%;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;width:100%}.item-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.item-card.completed{border-color:#48bb78}.item-card.pending{border-color:#ed8936}.item-header{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;padding:1rem}.item-number{color:#2d3748;font-size:1.1rem;font-weight:700}.item-score{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:.25rem .75rem}.item-description{word-wrap:break-word;align-items:center;color:#2d3748;display:flex;font-size:1rem;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;min-height:60px;padding:1rem}.submission-display{padding:1rem}.submission-image{border:2px solid #e2e8f0;border-radius:8px;max-width:100%;object-fit:contain}.image-error,.submission-image{margin-bottom:.75rem;width:100%}.image-error{align-items:center;background:#f7fafc;border:2px dashed #e2e8f0;border-radius:8px;color:#666;display:flex;flex-direction:column;height:200px;justify-content:center;text-align:center}.image-error p{font-weight:600;margin:0 0 .5rem}.image-error small{font-size:.8rem;opacity:.7;word-break:break-all}.clickable-image-container{border-radius:8px;cursor:pointer;display:inline-block;overflow:hidden;position:relative;transition:transform .2s ease;width:100%}.clickable-image-container:hover{transform:scale(1.02)}.clickable-image-container:before{background:#0000;bottom:0;content:"";left:0;position:absolute;right:0;top:0;transition:background .3s ease;z-index:1}.clickable-image-container:hover:before{background:#0000004d}.image-overlay-text{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;border-radius:4px;color:#fff;font-size:1rem;font-weight:600;left:50%;opacity:0;padding:.5rem;position:absolute;text-align:center;text-shadow:2px 2px 4px #000c;top:50%;transform:translate(-50%,-50%);transition:opacity .3s ease;z-index:2}.clickable-image-container:hover .image-overlay-text{opacity:1}.image-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);height:100vh;width:100vw;z-index:9999}.image-modal-content{border-radius:12px}.image-modal-header h3{font-size:1.1rem;font-weight:600;max-width:calc(100% - 40px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-image{border-radius:8px;box-shadow:0 4px 8px #0000001a;max-height:100%;max-width:100%;object-fit:contain}.modal-buttons{align-items:center;display:flex;gap:.75rem}.reupload-button{background:linear-gradient(135deg,#ff7e5f,#feb47b);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;min-height:44px;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.reupload-button:hover:not(:disabled){box-shadow:0 4px 12px #ff7e5f4d;transform:translateY(-2px)}.reupload-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.delete-button{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;min-height:44px;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.delete-button:hover:not(:disabled){box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-2px)}.delete-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.image-modal-footer .submission-date{color:#666;font-size:.9rem}.submission-info{align-items:center;display:flex;flex-wrap:wrap;font-size:.9rem;gap:.5rem;justify-content:space-between}.submission-status{border-radius:15px;color:#fff;display:inline-block;font-size:.9rem;font-weight:600;padding:.25rem .75rem;text-shadow:1px 1px 2px #0000004d}.submission-status.correct{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.submission-status.wrong{background:linear-gradient(135deg,#dc3545,#e74c3c);color:#fff}.submission-status.unknown{background:linear-gradient(135deg,#ffc107,#f39c12);color:#212529}.submission-date{color:#666}.upload-disabled,.upload-section{padding:1rem;text-align:center}.upload-disabled{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px dashed #dee2e6;border-radius:8px;color:#6c757d}.upload-disabled span{color:#dc3545;display:block;font-size:1.2rem;font-weight:600;margin-bottom:.5rem}.upload-disabled p{color:#6c757d;font-size:.9rem;margin:0}.upload-button{background:linear-gradient(135deg,#ff7e5f,#feb47b);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;max-width:200px;min-height:44px;padding:.75rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease;width:100%}.upload-button:hover:not(.uploading){box-shadow:0 4px 12px #ff7e5f4d;transform:translateY(-2px)}.upload-button.uploading{background:#ccc;cursor:not-allowed}.file-input{display:none}.upload-error{background:#fed7d7;border-radius:4px;color:#e53e3e;font-size:.9rem;padding:.5rem}.upload-error,.upload-hint{word-wrap:break-word;margin-top:.5rem}.upload-hint{color:#666;font-size:.8rem}@media (max-width:480px){.item-card{border-radius:8px;margin:.5rem 0}.item-header{padding:.75rem}.item-number{font-size:.9rem;height:32px;width:32px}.item-title{font-size:1rem;line-height:1.3;margin-left:.75rem}.item-description{font-size:.95rem;min-height:50px;padding:.75rem}.submission-display{padding:.75rem}.submission-image{height:180px}.submission-info{font-size:.85rem;gap:.25rem}.upload-section{padding:.75rem}.upload-button{font-size:.95rem;max-width:none;min-height:48px;padding:.875rem 1rem;width:100%}.upload-error,.upload-hint{font-size:.85rem}.image-overlay-text{font-size:.9rem;padding:.4rem}.clickable-image-container:hover{transform:none}.image-modal-content{max-height:95vh;max-width:95vw}.image-modal-header{padding:.75rem 1rem}.image-modal-header h3{font-size:1rem}.image-modal-body{padding:.5rem}.image-modal-footer{flex-direction:column;gap:.5rem;padding:.75rem 1rem;text-align:center}.reupload-button{min-height:48px;width:100%}}@media (max-width:768px){.item-card{margin:.75rem 0}.upload-button{max-width:300px;width:100%}}@media (hover:none) and (pointer:coarse){.upload-button{min-height:48px;padding:1rem 1.5rem}.item-header,.upload-section{padding:1rem}}@media (max-width:480px){.item-header{gap:.5rem}.item-header,.submission-info{flex-direction:column;text-align:center}.submission-info{gap:.25rem}.image-modal-footer{flex-direction:column;gap:.75rem;text-align:center}.modal-buttons{flex-direction:column;gap:.5rem;width:100%}.delete-button,.reupload-button{min-height:48px;padding:.875rem 1rem;width:100%}}.stats-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:1rem auto;max-width:1200px;padding:1.5rem}.stats-card h2{color:#2d3748;font-size:1.5rem;font-weight:700;margin:0 0 1rem;text-align:center}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1.5rem}.stat-item{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:8px;padding:1rem;text-align:center}.stat-value{color:#667eea;font-size:2rem;font-weight:700;margin-bottom:.25rem}.stat-label{color:#666;font-weight:500}.progress-bar{background-color:#e2e8f0;border-radius:6px;height:12px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(135deg,#48bb78,#38a169);border-radius:6px;height:100%;transition:width .5s ease}@media (max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.5rem}}.dashboard-container{background-color:#fff8f0;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#ff7e5f,#feb47b);box-shadow:0 2px 4px #0000001a;color:#fff;padding:1rem 0;position:relative}.header-content{display:flex;margin:0 auto;max-width:1200px;padding:0 1rem;width:100%}.header-info{width:100%}.header-info h1{font-size:1.8rem;font-weight:700;margin:0}.header-info p{font-size:1rem;margin:.25rem 0 0;opacity:.9}.logout-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;font-weight:500;min-width:44px;padding:.5rem 1rem;transition:background-color .2s ease}.logout-button:hover{background:#ffffff4d}.header-actions{align-items:center;display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem;padding:0 1rem}.back-to-huntmaster-button{background:linear-gradient(135deg,#2c3e50,#34495e);border:2px solid #f39c12;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;min-height:44px;padding:.5rem 1rem;transition:all .3s ease}.back-to-huntmaster-button:hover{background:linear-gradient(135deg,#1a252f,#2c3e50);border-color:#e67e22;transform:translateY(-1px)}.loading-spinner{color:#666;font-size:1.2rem;height:50vh;justify-content:center}.error-banner,.loading-spinner{align-items:center;display:flex;padding:1rem}.error-banner{background-color:#fed7d7;border-radius:6px;color:#c53030;font-size:.9rem;justify-content:space-between;margin:1rem}.error-close{align-items:center;background:none;border:none;border-radius:4px;color:#c53030;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;min-height:44px;min-width:44px;padding:.5rem}.dashboard-controls{background:#fff;border-radius:8px;box-shadow:0 2px 8px #ff7e5f1a;display:flex;flex-wrap:wrap;gap:1rem;margin:0 auto 1rem;max-width:1200px;padding:1rem}.filter-controls,.search-controls,.sort-controls{align-items:center;display:flex;flex:1 1;gap:.5rem;min-width:200px}.filter-controls label,.search-controls label,.sort-controls label{color:#8b4513;font-size:.9rem;font-weight:600;white-space:nowrap}.search-input{background:#fff;border:1px solid #d69e2e;border-radius:6px;font-size:1rem;max-width:300px;min-height:44px;padding:.75rem;width:100%}.search-input:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a;outline:none}.filter-controls select,.sort-controls select{background:#fff;border:1px solid #d69e2e;border-radius:6px;cursor:pointer;font-size:1rem;min-height:44px;padding:.75rem;width:100%}.filter-controls select:focus,.sort-controls select:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a;outline:none}.items-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:0 1rem 2rem}.empty-state,.items-grid{margin:0 auto;max-width:1200px}.empty-state{color:sienna;font-size:1.1rem;padding:2rem 1rem;text-align:center}@media (max-width:480px){.header-actions,.header-content{padding:0 .75rem}.header-info h1{font-size:1.5rem}.team-identification{gap:1rem;padding:.75rem}.team-id-display,.team-name-section{align-items:flex-start;flex-direction:column;gap:.5rem}.team-id-label,.team-name-label{font-size:.9rem;min-width:auto}.team-title{font-size:1.1rem}.team-picture-display{height:90%!important;width:90%!important}.header-info p{font-size:.9rem}.dashboard-controls{flex-direction:column;gap:1rem;margin:.75rem;padding:1rem .75rem}.filter-controls,.search-controls,.sort-controls{align-items:stretch;flex-direction:column;gap:.5rem;min-width:0;min-width:auto}.filter-controls label,.search-controls label,.sort-controls label{font-size:.85rem;text-align:left}.search-input{max-width:none}.filter-controls select,.search-input,.sort-controls select{font-size:16px}.items-grid{gap:1rem;grid-template-columns:1fr;padding:0 .75rem 2rem}.empty-state{font-size:1rem;padding:2rem .75rem}.error-banner{flex-direction:column;gap:.5rem;margin:.75rem;padding:.75rem;text-align:center}}@media (max-width:768px) and (min-width:481px){.header-content{align-items:flex-start;flex-direction:row;gap:1rem;justify-content:space-between}.header-info{flex:1 1}.dashboard-controls{flex-direction:column;gap:1rem;margin:1rem}.filter-controls,.search-controls,.sort-controls{min-width:0;min-width:auto}.items-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));padding:0 1rem 2rem}}@media (max-width:1024px) and (min-width:769px){.items-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.dashboard-controls{gap:1.5rem}}.upload-hint-banner{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #5e35b133;border-radius:8px;box-shadow:0 2px 4px #5e35b11a;color:#5e35b1;font-size:.9rem;font-weight:500;padding:.75rem 1rem}.submissions-disabled-banner,.upload-hint-banner{margin:0 auto 1rem;max-width:1200px;text-align:center}.submissions-disabled-banner{animation:pulse 2s infinite;background:linear-gradient(135deg,#ffebee,#ffcdd2);border:2px solid #ef5350;border-radius:8px;box-shadow:0 3px 6px #c6282833;color:#c62828;font-size:1rem;font-weight:600;padding:1rem}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}@media (max-width:480px){.upload-hint-banner{font-size:.8rem;margin:0 .75rem 1rem;padding:.5rem .75rem}.submissions-disabled-banner{font-size:.9rem;margin:0 .75rem 1rem;padding:.75rem}}@media (hover:none) and (pointer:coarse){.error-close,.filter-controls select,.logout-button,.search-input,.sort-controls select{min-height:48px}.filter-controls select,.search-input,.sort-controls select{font-size:16px}}.team-info-header{display:flex;flex-direction:column;gap:1rem}.team-title{color:#fffffff2;font-size:1.2rem;font-weight:600;margin:0}.team-identification{background:#ffffff1a;border:1px solid #fff3;border-radius:10px;display:flex;flex-direction:column;gap:.75rem;padding:1rem}.team-id-display{align-items:center;display:flex;gap:.75rem;justify-content:center}.team-id-label,.team-name-label{color:#ffffffe6;font-size:.95rem;font-weight:600;min-width:100px}.team-id-number{background:linear-gradient(135deg,#28a745,#20c997);border-radius:20px;box-shadow:0 2px 4px #28a7454d;color:#fff;font-size:1rem;font-weight:700;min-width:60px;padding:.4rem .8rem;text-align:center}.team-name-section{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.team-name-display{align-items:center;background:#ffffff0d;border:1px solid #fff3;border-radius:12px;display:flex;gap:1rem;padding:.75rem;transition:all .3s ease}.team-name-display:hover{background:#ffffff26;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.team-name{background:linear-gradient(135deg,#fff3,#ffffff1a);border:1px solid #ffffff4d;border-radius:8px;color:#fff;font-weight:700;padding:.5rem 1rem;text-shadow:1px 1px 2px #0000004d}.team-name.custom-name{-webkit-text-fill-color:#0000;animation:shimmer 3s ease-in-out infinite;background:linear-gradient(45deg,gold,orange,tomato,gold);-webkit-background-clip:text;background-clip:text;background-color:#ffd7001a;background-size:300% 300%;border:2px solid #ffd70099;border-radius:12px;box-shadow:0 0 15px #ffd7004d,inset 0 0 15px #ffd7001a;color:#0000;font-size:1.4rem;font-weight:800;overflow:hidden;padding:.6rem 1.2rem;position:relative;text-shadow:0 0 20px #ffd70080}.team-name.custom-name:before{animation:shine 4s ease-in-out infinite;background:linear-gradient(45deg,#0000 30%,#ffffff4d 50%,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);width:200%}@keyframes shimmer{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes shine{0%{transform:translateX(-100%) rotate(45deg)}to{transform:translateX(100%) rotate(45deg)}}.edit-name-btn{align-items:center;background:#ffffff0d;border-radius:5px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:400;gap:.4rem;justify-content:center;min-height:32px;padding:.4rem .8rem;position:relative;transition:all .2s ease}.edit-name-btn:hover{background:#ffffff40;box-shadow:0 2px 6px #00000026;color:#fff;transform:translateY(-1px)}.editable-team-name{display:inline-block}.team-name-input{background:#ffffffe6;border:2px solid #ffffff4d;border-radius:6px;color:#333;font-size:1rem;font-weight:600;max-width:300px;min-width:150px;outline:none;padding:.5rem .75rem;transition:all .2s ease}.team-name-input:focus{background:#fff;border-color:#ff7e5f;box-shadow:0 0 0 3px #ff7e5f4d}.team-name-input::placeholder{color:#666;font-weight:400}.team-id-badge{background:#fff3;border:1px solid #ffffff4d;border-radius:12px;color:#ffffffe6;font-size:.8rem;font-weight:500;margin-left:.5rem;padding:.2rem .5rem}.team-info-row{display:flex;flex-direction:column;gap:.75rem}.team-picture-section{margin-top:1rem}.team-picture-container{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;display:flex;flex-direction:column;gap:1rem;padding:.75rem}.team-picture-display{background:#ffffff1a;border:3px solid #ffffff4d;border-radius:12px;height:600px;overflow:hidden;position:relative;width:600px}.team-picture-img{height:100%;object-fit:contain;width:100%}.team-picture-placeholder{color:#ffffffb3;font-size:1.5rem;text-align:center}.team-picture-placeholder span{font-size:.7rem;margin-top:.25rem}.team-picture-uploading{align-items:center;background:#000000b3;border-radius:12px;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.uploading-spinner{animation:spin 1s linear infinite;font-size:1.5rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.team-picture-actions{display:flex;flex-direction:row;gap:.5rem;justify-content:center}.team-picture-remove-btn,.team-picture-upload-btn{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;min-height:40px;padding:.5rem 1rem;transition:all .3s ease}.team-picture-upload-btn:hover{background:linear-gradient(135deg,#20c997,#17a2b8);box-shadow:0 4px 8px #28a7454d;transform:translateY(-1px)}.team-picture-remove-btn{background:linear-gradient(135deg,#dc3545,#c82333)}.team-picture-remove-btn:hover{background:linear-gradient(135deg,#c82333,#a71e2a);box-shadow:0 4px 8px #dc35454d;transform:translateY(-1px)}.team-picture-remove-btn:disabled,.team-picture-upload-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.team-picture-container{flex-direction:column;text-align:center}.team-picture-display{height:500px;width:500px}.team-picture-actions{flex-direction:row;justify-content:center}}.hunt-instructions-section{margin:3rem auto 2rem;max-width:1200px;padding:0 1rem}.hunt-instructions-header{margin-bottom:1.5rem;text-align:center}.hunt-instructions-header h2{color:#d35400;font-size:1.8rem;font-weight:600;margin:0}.hunt-instructions-content{background:#fff;border-left:4px solid #3498db;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:1.5rem}.hunt-instructions-content p{color:#2c3e50;font-size:1.1rem;line-height:1.6;margin:0}.hunt-map-container{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.hunt-map-header{border-bottom:2px solid #f0f4f7;margin-bottom:1rem;padding-bottom:1rem;text-align:center}.hunt-map-header h3{color:#2c3e50;font-size:1.4rem;font-weight:600;margin:0}.hunt-map-placeholder{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px dashed #dee2e6;border-radius:8px;display:flex;justify-content:center;min-height:400px;transition:all .3s ease}.hunt-map-placeholder:hover{background:linear-gradient(135deg,#f1f8ff,#e3f2fd);border-color:#3498db}.map-placeholder-content{color:#6c757d;text-align:center}.map-placeholder-icon{font-size:4rem;margin-bottom:1rem;opacity:.7}.map-placeholder-text p{color:#495057;font-size:1.3rem;font-weight:600;margin:0 0 .5rem}.map-placeholder-text span{font-size:1rem;opacity:.8}.hunt-map-image{border-radius:8px;box-shadow:0 4px 12px #0000001a;height:auto;max-height:600px;object-fit:contain;width:100%}@media (max-width:768px){.hunt-instructions-section{margin:2rem auto 1rem}.hunt-instructions-header h2{font-size:1.5rem}.hunt-instructions-content{padding:1rem}.hunt-instructions-content p{font-size:1rem}.hunt-map-container{padding:1rem}.hunt-map-header h3{font-size:1.2rem}.hunt-map-placeholder{min-height:300px}.map-placeholder-icon{font-size:3rem}.map-placeholder-text p{font-size:1.1rem}}.huntmaster-dashboard{background:linear-gradient(135deg,#fff5ee,#ffeaa7 50%,#fdcb6e);margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.huntmaster-header{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:2rem;padding:2rem;text-align:center}.header-top{justify-content:space-between;margin-bottom:1.5rem}.header-controls,.header-top{align-items:center;display:flex}.header-controls{gap:2rem}.huntmaster-header h1{color:#d35400;font-size:2.5rem;margin:0;text-shadow:2px 2px 4px #0000001a}.logout-button{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:25px;box-shadow:0 2px 8px #e74c3c4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;padding:.75rem 1.5rem;transition:all .3s ease}.logout-button:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.submission-control-button{border:none;border-radius:25px;box-shadow:0 2px 8px #0003;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;padding:.75rem 1.5rem;transition:all .3s ease}.submission-control-button.stop{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.submission-control-button.stop:hover:not(:disabled){background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.submission-control-button.start{background:linear-gradient(135deg,#27ae60,#229954);color:#fff}.submission-control-button.start:hover:not(:disabled){background:linear-gradient(135deg,#229954,#1e8449);box-shadow:0 4px 12px #27ae6066;transform:translateY(-2px)}.submission-control-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.score-release-button{border:none;border-radius:25px;box-shadow:0 2px 8px #0003;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;padding:.75rem 1.5rem;transition:all .3s ease}.score-release-button.release{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.score-release-button.release:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.score-release-button.hide{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.score-release-button.hide:hover:not(:disabled){background:linear-gradient(135deg,#e67e22,#d68910);box-shadow:0 4px 12px #f39c1266;transform:translateY(-2px)}.score-release-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.score-toggle-container,.submission-toggle-container{align-items:center;display:flex}.toggle-group{align-items:center;display:flex;flex-direction:column;gap:.5rem}.score-toggle-label,.submission-toggle-label{align-items:center;color:#2c3e50;cursor:pointer;display:flex;flex-direction:column;font-weight:600;gap:.75rem;-webkit-user-select:none;user-select:none}.toggle-text{font-size:1rem;min-width:80px}.toggle-switch{height:32px;position:relative;width:60px}.toggle-input{height:0;opacity:0;position:absolute;width:0}.toggle-slider{background:linear-gradient(135deg,#e74c3c,#c0392b);border-radius:32px;bottom:0;box-shadow:0 2px 8px #e74c3c4d;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:all .3s ease}.toggle-input:checked+.toggle-slider{background:linear-gradient(135deg,#27ae60,#229954);box-shadow:0 2px 8px #27ae604d}.toggle-handle{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;height:24px;left:4px;position:absolute;top:4px;transition:all .3s ease;width:24px}.toggle-input:checked+.toggle-slider .toggle-handle{transform:translateX(28px)}.toggle-input:disabled+.toggle-slider{cursor:not-allowed;opacity:.6}.toggle-input:disabled+.toggle-slider .toggle-handle{cursor:not-allowed}.toggle-status{font-size:.85rem;font-weight:600;margin-top:.25rem;min-width:70px;text-align:center}.toggle-status.enabled{color:#27ae60}.toggle-status.disabled{color:#e74c3c}.stats-summary{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1.5rem}.stat{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);border-radius:10px;box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;flex-direction:column;padding:1rem}.stat-number{font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.9rem;opacity:.9}.error-message{align-items:center;background:#f8d7da;border-radius:8px;color:#721c24;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.error-message button{background:none;border:none;color:#721c24;cursor:pointer;font-size:1.2rem;height:24px;padding:0;width:24px}.team-scores-section{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin:2rem 0;padding:1.5rem}.team-scores-section h2{color:#d35400;font-size:1.5rem;margin:0 0 1.5rem;text-align:center}.team-scores-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.team-score-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #dee2e6;border-radius:16px;display:flex;flex-direction:column;height:500px;min-height:500px;overflow:hidden;padding:0;position:relative;transition:all .3s ease}.team-score-card:hover{border-color:#d35400;box-shadow:0 6px 20px #00000026;transform:translateY(-3px)}.team-picture-section{align-items:center;background:linear-gradient(135deg,#f1f2f6,#ddd6fe);border-bottom:2px solid #e0e7ff;display:flex;height:70%;justify-content:center}.team-picture{border-radius:0;height:100%;object-fit:contain;width:100%}.team-picture-placeholder{align-items:center;color:#6b7280;display:flex;flex-direction:column;height:100%;justify-content:center;width:100%}.placeholder-icon{font-size:3rem;margin-bottom:.5rem;opacity:.6}.placeholder-text{font-size:.9rem;font-weight:500;opacity:.8}.team-info-section{display:flex;flex-direction:column;gap:.5rem;height:30%;justify-content:flex-start;padding:1rem}.team-score-header{text-align:center}.team-score-header h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 .3rem}.team-name{color:#4a5568;font-size:1.2rem;font-weight:500;margin-bottom:.5rem;min-height:1rem}.team-score{background:linear-gradient(135deg,#d35400,#e67e22);border-radius:20px;box-shadow:0 2px 4px #d354004d;color:#fff;display:inline-block;font-size:1rem;font-weight:700;margin-bottom:.5rem;padding:.4rem 1rem}.team-score-details{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr;margin-bottom:.5rem}.score-detail{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;flex-direction:column;padding:.5rem;text-align:center}.score-detail .label{color:#6c757d;font-size:.8rem;font-weight:500}.score-detail .value{color:#2c3e50;font-size:1.1rem;font-weight:700}.view-team-btn-small{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:8px;box-shadow:0 2px 4px #3498db4d;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;margin-top:.5rem;padding:.3rem .6rem;transition:all .3s ease;width:100%}.view-team-btn-small:hover{background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 3px 6px #3498db66;transform:translateY(-1px)}.filters{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:2rem}.filters button{background:#fff;border:2px solid #d35400;border-radius:25px;color:#d35400;cursor:pointer;font-weight:600;min-height:44px;padding:.75rem 1.5rem;transition:all .3s ease}.filters button:hover{transform:translateY(-2px)}.filters button.active,.filters button:hover{background:#d35400;box-shadow:0 4px 12px #d354004d;color:#fff}.loading{color:#d35400;font-size:1.2rem;padding:3rem;text-align:center}.submissions-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.submission-card{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.submission-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.submission-header{background:linear-gradient(135deg,#ff7e5f,#feb47b);color:#fff;padding:1rem}.submission-header h3{font-size:1.1rem;line-height:1.3;margin:0 0 .5rem}.submission-meta{display:flex;font-size:.9rem;justify-content:space-between;opacity:.9}.team-info{align-items:center;display:flex;gap:.5rem}.view-team-btn{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:12px;box-shadow:0 2px 4px #3498db4d;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .5rem;transition:all .3s ease}.view-team-btn:hover{background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 3px 6px #3498db66;transform:translateY(-1px)}.submission-image{cursor:pointer;height:200px;overflow:hidden;position:relative}.submission-image img{height:100%;object-fit:contain;transition:transform .3s ease;width:100%}.submission-image:hover img{transform:scale(1.05)}.image-overlay{align-items:center;background:#00000080;bottom:0;color:#fff;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.submission-image:hover .image-overlay{opacity:1}.submission-status{border-bottom:1px solid #eee;padding:1rem}.current-status{border-radius:15px;color:#fff;display:inline-block;font-size:.8rem;font-weight:700;margin-bottom:.5rem;padding:.25rem .75rem;text-transform:uppercase}.status-timestamp{color:#666;font-size:.8rem;margin-top:.5rem}.status-controls{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem}.status-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;min-height:36px;padding:.5rem 1rem;transition:all .2s ease}.status-btn.correct{background:#28a745;color:#fff}.status-btn.correct:hover:not(:disabled){background:#218838}.status-btn.wrong{background:#dc3545;color:#fff}.status-btn.wrong:hover:not(:disabled){background:#c82333}.status-btn.unknown{background:#ffc107;color:#212529}.status-btn.unknown:hover:not(:disabled){background:#e0a800}.status-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.no-submissions{color:#666;grid-column:1/-1;padding:3rem;text-align:center}.image-modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.image-modal-content{background:#fff;border-radius:15px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;overflow:hidden}.image-modal-header{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);color:#fff;display:flex;justify-content:space-between;padding:1rem 1.5rem}.image-modal-header h3{font-size:1.2rem;margin:0}.modal-close-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;font-weight:700;height:30px;justify-content:center;padding:0;transition:background .2s ease;width:30px}.modal-close-button:hover{background:#fff3}.image-modal-body{align-items:center;display:flex;flex:1 1;justify-content:center;overflow:hidden;padding:1rem}.image-modal-body img{border-radius:8px;box-shadow:0 4px 15px #0000001a;max-height:60vh;max-width:100%;object-fit:contain}.image-modal-footer{align-items:center;background:#f8f9fa;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1rem 1.5rem}.modal-status-controls{display:flex;gap:.75rem}.submission-details{color:#666;font-size:.9rem;margin:0}.submission-details p{margin:.25rem 0}@media (max-width:768px){.huntmaster-dashboard{padding:1rem}.header-top{align-items:center;flex-direction:column;gap:1rem}.header-controls{flex-direction:column;gap:1.5rem;width:100%}.logout-button,.score-toggle-container,.submission-toggle-container{max-width:300px;width:100%}.toggle-group{width:100%}.score-toggle-label,.submission-toggle-label{flex-direction:row;justify-content:space-between;width:100%}.toggle-status{margin-left:1rem;margin-top:0}.toggle-text{min-width:auto}.huntmaster-header h1{font-size:2rem;text-align:center}.logout-button{font-size:.9rem;padding:.75rem 1.25rem}.stats-summary{gap:1rem;grid-template-columns:repeat(2,1fr)}.submissions-grid{gap:1rem;grid-template-columns:1fr}.filters{gap:.5rem}.filters button{font-size:.9rem;padding:.5rem 1rem}.status-controls{flex-direction:column}.status-btn{flex:none;width:100%}.image-modal-footer{flex-direction:column;text-align:center}.modal-status-controls{justify-content:center;width:100%}.team-scores-grid{gap:1rem;grid-template-columns:1fr}.team-score-card{height:750px;min-height:500px}.team-picture-section{height:70%}.team-info-section{height:30%;padding:.8rem}.team-score-details{gap:.8rem;grid-template-columns:1fr}}@media (max-width:480px){.stats-summary{grid-template-columns:1fr}.submission-meta{flex-direction:column;gap:.25rem}.image-modal-content{margin:.5rem;max-width:calc(100vw - 1rem)}.modal-status-controls{flex-direction:column;gap:.5rem}.status-btn{min-height:44px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f7fafc;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.app{min-height:100vh;min-height:100dvh}button{border:none;cursor:pointer;font-family:inherit;min-height:44px;outline:none;transition:all .2s ease}button:disabled{cursor:not-allowed;opacity:.6}input,select{border:none;font-family:inherit;font-size:inherit;min-height:44px;outline:none}input:focus,select:focus{outline:none}@media (max-width:768px){input,select,textarea{font-size:16px}}@media (hover:none) and (pointer:coarse){button,input,select,textarea{min-height:48px}}.text-center{text-align:center}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}
/*# sourceMappingURL=main.d39fb9e3.css.map*/