.Zones{width:100%;height:100vh;position:relative;display:flex;flex-direction:column}.Zones .zones-header{background:#fff;box-shadow:0 .125em .5em rgba(0,0,0,.1);padding:1em 2em;display:flex;justify-content:space-between;align-items:center;z-index:10}.Zones .zones-header h1{color:#2e606a;font-size:1.5em;font-weight:700;margin:0}.Zones .zones-header .header-actions{display:flex;align-items:center;gap:1.5em}.Zones .zones-header .header-actions .selection-info{display:flex;align-items:center;gap:1em}.Zones .zones-header .header-actions .selection-info span{color:#5ed2d2;font-weight:600;font-size:1em}.Zones .zones-header .header-actions .selection-info .merge-btn,.Zones .zones-header .header-actions .selection-info .properties-btn{padding:.5em 1em;background:#5ed2d2;color:#2e606a;border:none;border-radius:.4em;font-size:.9em;font-weight:600;cursor:pointer;transition:all .2s ease}.Zones .zones-header .header-actions .selection-info .merge-btn:hover,.Zones .zones-header .header-actions .selection-info .properties-btn:hover{background:#4fc4c4;transform:translateY(-.1em)}.Zones .zones-header .header-actions .selection-info .properties-btn{background:#4a90e2;color:#fff}.Zones .zones-header .header-actions .selection-info .properties-btn:hover{background:#357abd}.Zones .zones-header .header-actions .vertex-btn{padding:.6em 1.2em;background:#f5f5f5;color:#2e606a;border:.125em solid #2e606a;border-radius:.5em;font-size:.95em;font-weight:600;cursor:pointer;transition:all .3s ease}.Zones .zones-header .header-actions .vertex-btn.active{background:#ff3b30;color:#fff;border-color:#ff3b30}.Zones .zones-header .header-actions .vertex-btn:hover{transform:translateY(-.125em);box-shadow:0 .25em .75em rgba(46,96,106,.2)}.Zones .zones-header .header-actions .export-btn{padding:.6em 1.2em;background:linear-gradient(135deg,#2e606a,#5ed2d2);color:#fff;border:none;border-radius:.5em;font-size:.95em;font-weight:600;cursor:pointer;transition:all .3s ease}.Zones .zones-header .header-actions .export-btn:hover{transform:translateY(-.125em);box-shadow:0 .25em .75em rgba(46,96,106,.3)}.Zones .zone-label{background:#fff;border:.125em solid #2e606a;border-radius:50%;width:1.8em;height:1.8em;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75em;color:#2e606a;pointer-events:none;transform:translate(-50%,-50%)}.Zones .zone-label.no-difficulties{background:#ff9500;border-color:#ff9500;color:#fff}.Zones .link-weight{background:#ff3b30;color:#fff;border-radius:.3em;padding:.2em .4em;font-weight:600;font-size:.8em;pointer-events:none;transform:translate(-50%,-50%)}.Zones .action-menu{position:fixed;bottom:5em;left:50%;transform:translateX(-50%);background:#fff;border-radius:1em;padding:1.5em;box-shadow:0 .5em 2em rgba(0,0,0,.2);z-index:100;min-width:20em}.Zones .action-menu h3{color:#2e606a;font-size:1.2em;margin:0 0 1em;text-align:center}.Zones .action-menu .action-buttons{display:flex;flex-direction:column;gap:.8em}.Zones .action-menu .action-buttons button{padding:.8em 1.5em;border:none;border-radius:.5em;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease}.Zones .action-menu .action-buttons button.merge-btn{background:linear-gradient(135deg,#2e606a,#5ed2d2);color:#fff}.Zones .action-menu .action-buttons button.merge-btn:hover{transform:translateY(-.125em);box-shadow:0 .25em .75em rgba(46,96,106,.3)}.Zones .action-menu .action-buttons button.link-btn{background:#ff3b30;color:#fff}.Zones .action-menu .action-buttons button.link-btn:hover{background:#ff5252;transform:translateY(-.125em);box-shadow:0 .25em .75em rgba(255,107,107,.3)}.Zones .action-menu .action-buttons button.clear-btn{background:#f5f5f5;color:#666}.Zones .action-menu .action-buttons button.clear-btn:hover{background:#e9ecef}.Zones .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.Zones .modal-overlay .modal-content{background:#fff;border-radius:1em;padding:2em;max-width:25em;width:90%}.Zones .modal-overlay .modal-content h3{color:#2e606a;font-size:1.3em;margin:0 0 .5em}.Zones .modal-overlay .modal-content p{color:#666;margin:0 0 1.5em}.Zones .modal-overlay .modal-content input{width:100%;padding:.8em;border:.125em solid #e9ecef;border-radius:.5em;font-size:1em;margin-bottom:1.5em;transition:all .3s ease;box-sizing:border-box}.Zones .modal-overlay .modal-content input:focus{outline:none;border-color:#5ed2d2}.Zones .modal-overlay .modal-content .form-group{margin-bottom:1.5em}.Zones .modal-overlay .modal-content .form-group label{display:block;margin-bottom:.5em;color:#2e606a;font-weight:600;font-size:.95em}.Zones .modal-overlay .modal-content .form-group input{margin-bottom:0}.Zones .modal-overlay .modal-content.properties-modal{max-width:30em;max-height:80vh;overflow-y:auto}.Zones .modal-overlay .modal-content.properties-modal .neighbors-difficulty{background:#f8f9fa;border-radius:.5em;padding:1em;margin-bottom:1.5em}.Zones .modal-overlay .modal-content.properties-modal .neighbors-difficulty .difficulty-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1em}.Zones .modal-overlay .modal-content.properties-modal .neighbors-difficulty .difficulty-row:last-child{margin-bottom:0}.Zones .modal-overlay .modal-content.properties-modal .neighbors-difficulty .difficulty-row .neighbor-label{flex:1 1;margin-bottom:0;font-weight:500;color:#495057;font-size:.9em}.Zones .modal-overlay .modal-content.properties-modal .neighbors-difficulty .difficulty-row .difficulty-input{width:6em;margin-bottom:0;padding:.5em;font-size:.9em}.Zones .modal-overlay .modal-content.properties-modal .no-neighbors{color:#6c757d;font-style:italic;margin:0}.Zones .modal-overlay .modal-content .modal-actions{display:flex;gap:1em}.Zones .modal-overlay .modal-content .modal-actions button{flex:1 1;padding:.8em;border:none;border-radius:.5em;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease}.Zones .modal-overlay .modal-content .modal-actions button.cancel-btn{background:#f5f5f5;color:#666}.Zones .modal-overlay .modal-content .modal-actions button.cancel-btn:hover{background:#e9ecef}.Zones .modal-overlay .modal-content .modal-actions button.confirm-btn{background:linear-gradient(135deg,#2e606a,#5ed2d2);color:#fff}.Zones .modal-overlay .modal-content .modal-actions button.confirm-btn:hover{transform:translateY(-.125em);box-shadow:0 .25em .75em rgba(46,96,106,.3)}.Zones .modal-overlay .modal-content.conflict-dialog .conflict-list{background:#f5f5f5;border-radius:.5em;padding:1em;margin:1em 0}.Zones .modal-overlay .modal-content.conflict-dialog .conflict-list .conflict-item{padding:.5em 0;color:#666;font-size:.95em;border-bottom:.0625em solid #e9ecef}.Zones .modal-overlay .modal-content.conflict-dialog .conflict-list .conflict-item:last-child{border-bottom:none}.Zones .modal-overlay .modal-content.conflict-dialog .conflict-resolution{background:#e8f5f5;color:#2e606a;padding:.8em;border-radius:.5em;font-weight:600;text-align:center;margin:1em 0}.Zones .instructions{position:fixed;bottom:1em;left:50%;transform:translateX(-50%);background:#fff;padding:.8em 1.5em;border-radius:2em;box-shadow:0 .25em 1em rgba(0,0,0,.1);z-index:50}.Zones .instructions p{margin:0;color:#666;font-size:.9em}.Zones .instructions p strong{color:#2e606a}@media(max-width:48em){.Zones .zones-header{padding:1em 1.5em}.Zones .zones-header h1{font-size:1.2em}.Zones .zones-header .header-actions{gap:1em}.Zones .zones-header .header-actions .selection-info{font-size:.9em}.Zones .zones-header .header-actions .export-btn{padding:.5em 1em;font-size:.9em}.Zones .action-menu{min-width:90%;bottom:3em;padding:1.2em}.Zones .action-menu h3{font-size:1.1em}.Zones .action-menu .action-buttons button{font-size:.95em;padding:.7em 1.2em}.Zones .instructions{padding:.6em 1em;width:90%}.Zones .instructions p{font-size:.8em}}