*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:1rem;max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:2px solid #e2e8f0;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem 1rem 0 0;flex-shrink:0}.modal-header h2{margin:0;color:#fff;font-size:1.75rem;font-weight:700}.modal-header .modal-close{background:#fff3;border:none;color:#fff;font-size:2rem;width:2.5rem;height:2.5rem;border-radius:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;line-height:1}.modal-header .modal-close:hover{background:#ffffff4d}.modal-body{padding:2rem;flex:1;display:flex;flex-direction:column;min-height:0}.modal-category-info{margin-bottom:2rem;flex-shrink:0}.modal-divisions h3{color:#1a202c;font-size:1.25rem;margin:0 0 1rem;font-weight:700}.modal-divisions .modal-divisions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.modal-divisions .modal-division-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem;border-radius:.75rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 2px 4px #0000001a}.modal-divisions .modal-division-card .modal-division-name{font-size:1.5rem;font-weight:700}.modal-divisions .modal-division-card .modal-division-details{font-size:.875rem;opacity:.9}.modal-rules{flex:1;display:flex;flex-direction:column;min-height:0}.modal-rules h3{color:#1a202c;font-size:1.25rem;margin:0 0 1rem;font-weight:700;flex-shrink:0}.modal-rules .modal-rules-list{display:flex;flex-direction:column;gap:1rem;overflow-y:auto;flex:1;padding-right:.5rem}.modal-rules .modal-rule-item{background:#f7fafc;border-radius:.75rem;padding:1rem;border-left:4px solid #667eea}.modal-rules .modal-rule-item .modal-rule-category{color:#667eea;font-weight:700;font-size:.875rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.modal-rules .modal-rule-item .modal-rule-value{color:#4a5568;line-height:1.6;white-space:pre-line}@media(max-width:768px){.modal-content{max-height:95vh}.modal-header{padding:1.5rem}.modal-header h2{font-size:1.5rem}.modal-body{padding:1.5rem}.modal-divisions .modal-divisions-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}
