body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}*,body,html{margin:0;padding:0}body,html{overflow:hidden}.App,body,html{height:100%;width:100%}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.main-landing{height:100vh;overflow-y:scroll;position:relative;scroll-behavior:smooth;scroll-snap-type:y mandatory;width:100vw}.navigation-bar{align-items:center;background:#fffffff2;box-shadow:0 2px 10px #0000001a;display:flex;gap:30px;justify-content:center;left:0;padding:15px 30px;position:fixed;right:0;top:0;z-index:10000}.nav-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease;white-space:nowrap}.space-details-btn{background:linear-gradient(135deg,#1e3c72,#2a5298);color:#fff}.space-details-btn:hover{box-shadow:0 4px 12px #1e3c7266;transform:translateY(-2px)}.virtual-tour-btn{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.virtual-tour-btn:hover{box-shadow:0 4px 12px #11998e66;transform:translateY(-2px)}.section{align-items:center;background:#fff;display:flex;height:100vh;justify-content:center;overflow:hidden;scroll-snap-align:start;width:100vw}.section img{height:auto;max-height:100%;max-width:100%;object-fit:contain;width:auto}.contact-info{background:#fffffff2;border-radius:8px;bottom:20px;box-shadow:0 4px 12px #00000026;color:#333;font-size:14px;line-height:1.6;max-width:400px;padding:15px 20px;position:fixed;right:15%;text-align:right;white-space:nowrap;z-index:9998}.contact-info p{margin:0;padding:2px 0}@media (max-width:768px){.navigation-bar{gap:10px;padding:10px 15px}.nav-btn{font-size:12px;padding:8px 12px}.contact-info{bottom:20px;font-size:12px;left:10px;max-width:none;padding:12px 15px;right:10px;text-align:center}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.login-box{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;padding:40px;width:100%}.login-box h2{color:#333;margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:8px}.form-group input{border:1px solid #ddd;border-radius:6px;font-size:16px;padding:12px;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#667eea;outline:none}.login-box button[type=submit]{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:transform .2s;width:100%}.login-box button[type=submit]:hover{transform:translateY(-2px)}.error-message{background:#fee;border-radius:6px;color:#c33;margin-bottom:20px;padding:10px;text-align:center}.back-btn{background:#0000;border:2px solid #667eea;color:#667eea;font-size:16px;font-weight:600;margin-top:10px;padding:12px;transition:all .2s;width:100%}.back-btn:hover{background:#667eea;color:#fff}.admin-dashboard{background:#f5f5f5;display:flex;flex-direction:column;height:100vh}.dashboard-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.dashboard-header h1{font-size:24px;margin:0}.logout-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;padding:8px 20px;transition:all .3s}.logout-btn:hover{background:#ffffff4d}.dashboard-content{display:flex;flex:1 1;overflow:auto;padding:30px}.buildings-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));width:100%}.building-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:25px}.building-card h3{color:#333;font-size:20px;font-weight:600;margin:0 0 20px}.floors-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.floor-card{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:20px;transition:all .3s}.floor-card:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-4px)}.floor-number{font-size:24px;font-weight:700}.space-count{font-size:12px;opacity:.9}.sidebar{background:#fff;border-right:1px solid #e0e0e0;overflow-y:auto;padding:20px;width:300px}.control-panel{margin-bottom:30px}.control-panel h3{color:#333;font-size:16px;margin:0 0 15px}.control-panel select{border:1px solid #ddd;border-radius:6px;font-size:14px;margin-bottom:10px;padding:10px;width:100%}.upload-section{margin:20px 0}.upload-section h3{color:#333;font-size:16px;margin:0 0 10px}.upload-section input[type=file]{border:1px solid #ddd;border-radius:6px;padding:8px;width:100%}.draw-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:10px;padding:12px;transition:all .3s;width:100%}.draw-btn.active{background:#e74c3c}.draw-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.finish-btn{background:#27ae60;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:10px;padding:12px;transition:all .3s;width:100%}.finish-btn:hover{background:#2ecc71}.cancel-btn{background:#95a5a6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:10px;padding:12px;transition:all .3s;width:100%}.cancel-btn:hover{background:#7f8c8d}.spaces-list{border-top:1px solid #e0e0e0;padding-top:20px}.spaces-list h3{color:#333;font-size:16px;margin:0 0 15px}.space-item{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px;padding:10px}.space-item .status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.space-item .status.available{background:#d4edda;color:#155724}.space-item .status.rented{background:#f8d7da;color:#721c24}.main-area{align-items:center;background:#e9ecef;display:flex;flex:1 1;justify-content:center;padding:20px}.canvas-container{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000001a;overflow:hidden;position:relative}.canvas-container canvas{cursor:crosshair;display:block}.floor-plan-bg{max-height:100%;max-width:100%}.placeholder{color:#6c757d;font-size:18px;text-align:center}.space-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.space-form{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;padding:30px;width:90%}.space-form h3{color:#333;margin:0 0 20px}.space-form textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;margin-bottom:20px;padding:12px;resize:vertical;width:100%}.space-form .form-field{margin-bottom:20px}.space-form .form-field label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.space-form .form-field input[type=file]{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px;width:100%}.space-form .form-field input[type=url]{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:12px;width:100%}.space-form .preview-image{border:1px solid #ddd;border-radius:6px;margin-top:10px;max-height:200px;max-width:100%}.space-form .preview-images{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.space-form .preview-image-container{display:inline-block;position:relative}.space-form .preview-image-container .preview-image{border:1px solid #ddd;border-radius:6px;max-height:150px;max-width:150px;object-fit:cover}.space-form .remove-image-btn{align-items:center;background:#e74c3c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;transition:all .3s;width:24px}.space-form .remove-image-btn:hover{background:#c0392b;transform:scale(1.1)}.form-actions{display:flex;gap:10px;justify-content:flex-end}.form-actions button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s}.form-actions button:first-child{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.form-actions button:first-child:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.form-actions button:last-child{background:#95a5a6;color:#fff}.form-actions button:last-child:hover{background:#7f8c8d}.floor-plan-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.floor-plan-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;height:95vh;max-height:95vh;max-width:1400px;overflow:hidden;width:95vw}.floor-plan-modal .modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.floor-plan-modal .modal-header h2{font-size:20px;margin:0}.floor-plan-modal .modal-header .close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:36px;justify-content:center;padding:0;transition:all .3s;width:36px}.floor-plan-modal .modal-header .close-btn:hover{background:#ffffff4d}.floor-plan-modal .modal-body{display:flex;flex:1 1;flex-direction:column;gap:20px;overflow:auto;padding:20px}.floor-plan-modal .canvas-container{background:#f8f9fa;border-radius:8px;display:block;flex:1 1;min-height:400px;overflow:auto;position:relative}.floor-plan-modal .canvas-container canvas{background:#fff;border:2px solid #ddd;border-radius:4px;max-height:none;max-width:none}.floor-plan-modal .modal-controls{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:15px;padding:20px}.floor-plan-modal .modal-controls button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s;white-space:nowrap}.floor-plan-modal .modal-controls .draw-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.floor-plan-modal .modal-controls .draw-btn.active{background:#e74c3c}.floor-plan-modal .modal-controls .draw-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.floor-plan-modal .modal-controls .finish-btn{background:#27ae60;color:#fff}.floor-plan-modal .modal-controls .finish-btn:hover{background:#2ecc71}.floor-plan-modal .modal-controls .cancel-btn{background:#95a5a6;color:#fff}.floor-plan-modal .modal-controls .cancel-btn:hover{background:#7f8c8d}.floor-plan-modal .spaces-summary{background:#fff;border-radius:8px;flex:0 0 auto;max-height:200px;overflow-y:auto;padding:15px}.floor-plan-modal .spaces-summary h4{border-bottom:2px solid #667eea;color:#333;font-size:16px;margin:0 0 15px;padding-bottom:10px}.floor-plan-modal .spaces-summary .space-item{align-items:flex-start;background:#f8f9fa;border-radius:6px;display:flex;font-size:14px;gap:15px;justify-content:space-between;margin-bottom:12px;padding:15px}.floor-plan-modal .spaces-summary .space-details{display:flex;flex:1 1;flex-direction:column;gap:10px}.floor-plan-modal .spaces-summary .space-name{color:#333;font-size:15px;font-weight:600}.floor-plan-modal .spaces-summary .space-thumbnail{max-height:100px;max-width:150px}.floor-plan-modal .spaces-summary .space-link{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:6px 12px;text-decoration:none;transition:all .3s}.floor-plan-modal .spaces-summary .space-link:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.floor-plan-modal .spaces-summary .space-actions{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.floor-plan-modal .spaces-summary .delete-btn{background:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .3s}.floor-plan-modal .spaces-summary .delete-btn:hover{background:#c0392b;box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.floor-plan-modal .spaces-summary .edit-btn{background:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;margin-right:8px;padding:6px 12px;transition:all .3s}.floor-plan-modal .spaces-summary .edit-btn:hover{background:#2980b9;box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.floor-plan-modal .spaces-summary .space-thumbnails{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.floor-plan-modal .spaces-summary .space-thumbnail{border:1px solid #ddd;border-radius:4px;max-height:60px;max-width:80px;object-fit:cover}.action-menu-overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.action-menu{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;min-width:200px;overflow:hidden;position:absolute;z-index:2001}.action-menu-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 16px}.action-menu-header h4{font-size:14px;font-weight:600;margin:0}.action-menu-items{padding:8px 0}.action-menu-item{align-items:center;background:#fff;border:none;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:12px 16px;text-align:left;transition:all .2s;width:100%}.action-menu-item:last-child{border-bottom:none}.action-menu-item:hover{background:#f8f9fa}.action-menu-item.edit{color:#3498db}.action-menu-item.edit:hover{background:#e3f2fd}.action-menu-item.delete{color:#e74c3c}.action-menu-item.delete:hover{background:#fee}.visitor-3d-view{background:#1a1a2e;margin:0;overflow:hidden;padding:0}.visitor-3d-view,.visitor-3d-view.fullscreen{height:100vh;left:0;position:fixed;top:0;width:100vw}.visitor-3d-view.fullscreen{z-index:1000}.viewer-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000004d;color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.viewer-header h1{font-size:24px;margin:0}.viewer-content{display:flex;flex:1 1;overflow:hidden}.instructions{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-right:1px solid #ffffff1a;color:#fff;padding:20px;width:250px}.instructions h3{color:#667eea;font-size:18px;margin:0 0 15px}.instructions ul{list-style:none;margin:0;padding:0}.instructions li{color:#fffc;font-size:14px;line-height:1.5;padding:8px 0}.instructions li:before{color:#667eea;content:"• ";font-weight:700}.canvas-container{background:radial-gradient(circle at center,#2d2d44 0,#1a1a2e 100%);height:100%;left:0;position:absolute;top:0;width:100%}.model-iframe{background:#0000;border:none;height:100%;width:100%}.floating-back-btn{background:#ffffffe6;border:none;border-radius:8px;box-shadow:0 4px 15px #0000004d;color:#333;cursor:pointer;font-size:14px;font-weight:600;left:20px;padding:12px 24px;position:fixed;top:20px;transition:all .3s;z-index:1001}.floating-back-btn:hover{background:#fff;box-shadow:0 6px 20px #0006;transform:translateY(-2px)}.floating-help-btn{background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 4px 15px #0000004d;color:#333;cursor:pointer;font-size:24px;font-weight:600;height:50px;position:fixed;right:20px;top:20px;transition:all .3s;width:50px;z-index:1001}.floating-help-btn:hover{background:#fff;box-shadow:0 6px 20px #0006;transform:translateY(-2px)}.help-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:300px;padding:25px;position:fixed;right:20px;top:80px;z-index:1001}.help-content h3{color:#333;font-size:18px;font-weight:600;margin:0 0 15px}.help-content ul{color:#666;line-height:1.8;margin:0 0 20px;padding-left:20px}.help-content li{margin-bottom:8px}.close-help-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px;transition:all .3s;width:100%}.close-help-btn:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.building-buttons{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin-top:30px}.building-buttons button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:15px 25px;transition:all .3s}.building-buttons button:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.floor-modal-overlay{align-items:center;background:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.floor-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:800px;padding:30px;width:90%}.modal-header{border-bottom:2px solid #667eea;margin-bottom:20px;padding-bottom:15px}.modal-header h2{color:#333;font-size:24px}.close-btn{background:none;color:#999;font-size:32px;height:40px;padding:0;width:40px}.close-btn:hover{background:#f0f0f0;color:#333}.modal-body p{color:#666;font-size:16px;line-height:1.6;margin:0 0 25px}.modal-actions{display:flex;gap:15px;justify-content:flex-end}.primary-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .3s}.primary-btn:hover{box-shadow:0 4px 15px #667eea66;transform:translateY(-2px)}.secondary-btn{background:#f0f0f0;border:none;border-radius:8px;color:#333;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:all .3s}.secondary-btn:hover{background:#e0e0e0}.floor-plan-container{align-items:center;display:flex;justify-content:center;min-height:300px;position:relative;width:100%}.floor-plan-container canvas{background:#fff;border:2px solid #ddd;border-radius:8px;max-height:100%;max-width:100%;touch-action:none}.space-hover-tooltip{animation:fadeIn .2s ease;background:#000c;border-radius:6px;box-shadow:0 2px 8px #0000004d;color:#fff;font-size:14px;padding:8px 12px;pointer-events:none;position:fixed;white-space:nowrap;z-index:10000}.spaces-list{background:#f8f9fa;border-radius:8px;margin-top:20px;padding:15px}.spaces-list h4{border-bottom:2px solid #667eea;color:#333;font-size:16px;margin:0 0 15px;padding-bottom:10px}.space-info-item{align-items:flex-start;background:#fff;font-size:14px;justify-content:space-between;margin-bottom:12px;padding:15px}.space-details,.space-info-item{display:flex;flex-direction:column;gap:10px}.space-details{width:100%}.space-name{color:#333;font-size:16px;font-weight:600}.space-image{border:1px solid #ddd;border-radius:6px;max-height:200px;max-width:100%;object-fit:cover}.space-link{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;color:#fff;display:inline-block;font-size:14px;font-weight:600;padding:8px 16px;text-align:center;text-decoration:none;transition:all .3s}.space-link:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.space-info-item .status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.space-info-item .status.available{background:#d4edda;color:#155724}.space-detail-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.space-detail-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}.space-detail-modal .modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.space-detail-modal .modal-header h2{font-size:16px;margin:0}.space-detail-modal .modal-header .close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:36px;justify-content:center;padding:0;transition:all .3s;width:36px}.space-detail-modal .modal-header .close-btn:hover{background:#ffffff4d}.space-detail-modal .modal-body{flex:1 1;font-size:14px;overflow:auto;padding:20px}.space-detail-content{display:flex;flex-direction:column;gap:20px}.space-detail-content h3{color:#333;font-size:18px;font-weight:600;margin:0}.space-detail-content .detail-image{border:1px solid #ddd;border-radius:8px;max-height:300px;max-width:100%;object-fit:cover}.space-detail-content .detail-images{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.space-detail-content .detail-images .detail-image{max-height:200px;max-width:200px}.space-detail-content .image-carousel{margin-bottom:20px}.space-detail-content .carousel-container{align-items:center;display:flex;gap:10px;position:relative}.space-detail-content .carousel-slide{align-items:center;display:flex;flex:1 1;flex-direction:column;position:relative}.space-detail-content .carousel-image{border:1px solid #ddd;border-radius:8px;max-height:400px;max-width:100%;object-fit:contain}.space-detail-content .carousel-nav{align-items:center;background:#667eeacc;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:40px;justify-content:center;transition:all .3s;width:40px}.space-detail-content .carousel-nav:hover:not(:disabled){background:#667eea;transform:scale(1.1)}.space-detail-content .carousel-nav:disabled{cursor:not-allowed;opacity:.3}.space-detail-content .carousel-indicators{display:flex;gap:8px;margin-top:10px}.space-detail-content .carousel-indicators .indicator{background:#ddd;border-radius:50%;cursor:pointer;height:10px;transition:all .3s;width:10px}.space-detail-content .carousel-indicators .indicator.active{background:#667eea;transform:scale(1.2)}.space-detail-content .carousel-indicators .indicator:hover{background:#999}.space-detail-content .detail-link{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;color:#fff;display:inline-block;font-size:16px;font-weight:600;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s}.space-detail-content .detail-link:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.space-detail-content .detail-status{background:#f8f9fa;border-radius:6px;color:#333;font-size:16px;padding:15px}.space-detail-content .detail-status .status{border-radius:12px;font-size:14px;font-weight:600;margin-left:10px;padding:4px 12px}.space-detail-content .detail-status .status.available{background:#d4edda;color:#155724}.space-detail-content .detail-status .status.rented{background:#f8d7da;color:#721c24}.image-zoom-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.image-zoom-modal{align-items:center;display:flex;flex-direction:column;max-height:95vh;max-width:95vw;position:relative}.zoom-close-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:32px;height:40px;position:absolute;right:0;top:-40px;transition:background .3s;width:40px}.zoom-close-btn:hover{background:#ffffff4d}.zoom-image-container{align-items:center;display:flex;justify-content:center;max-height:90vh;max-width:95vw}.zoomed-image{border-radius:8px;box-shadow:0 4px 20px #00000080;max-height:90vh;max-width:100%;object-fit:contain}.zoom-controls{gap:20px;margin-top:20px}.zoom-controls,.zoom-nav{align-items:center;color:#fff;display:flex}.zoom-nav{background:#fff3;border:none;border-radius:50%;cursor:pointer;font-size:24px;height:40px;justify-content:center;transition:background .3s;width:40px}.zoom-nav:hover{background:#ffffff4d}.zoom-counter{font-size:16px;font-weight:500}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.floor-popup-overlay{align-items:center;animation:fadeIn .3s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.floor-popup-modal{animation:slideUp .3s ease;background:#000000f2;border:2px solid #667eea;border-radius:12px;box-shadow:0 4px 20px #00000080;color:#fff;max-width:90vw;min-width:280px;padding:20px;position:relative}.floor-popup-close-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;height:30px;position:absolute;right:10px;top:10px;transition:background .3s;width:30px}.floor-popup-close-btn:hover{background:#ffffff4d}.floor-popup-title{font-size:18px;font-weight:700;margin-bottom:10px}.floor-popup-info{color:#ccc;margin-bottom:15px}.floor-popup-view-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:transform .2s;width:100%}.floor-popup-view-btn:hover{transform:translateY(-2px)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.floor-plan-view{background:#f5f5f5;display:flex;flex-direction:column;height:100vh}.view-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.view-header h1{font-size:24px;margin:0}.back-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;padding:8px 20px;transition:all .3s}.back-btn:hover{background:#ffffff4d}.view-content{display:flex;flex:1 1;overflow:hidden}.legend{background:#fff;border-right:1px solid #e0e0e0;padding:20px;width:200px}.legend h3{color:#333;font-size:16px;margin:0 0 15px}.legend-item{align-items:center;color:#555;display:flex;font-size:14px;margin-bottom:10px}.legend-color{border-radius:4px;height:20px;margin-right:10px;width:20px}.legend-color.available{background:#27ae6080;border:2px solid #27ae60}.legend-color.rented{background:#e74c3c80;border:2px solid #e74c3c}.canvas-container{align-items:center;background:#e9ecef;display:flex;flex:1 1;justify-content:center;overflow:auto;padding:20px}.canvas-container canvas{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000001a;cursor:pointer;max-height:100%;max-width:100%}.spaces-info{background:#fff;border-left:1px solid #e0e0e0;overflow-y:auto;padding:20px;width:250px}.spaces-info h3{color:#333;font-size:16px;margin:0 0 15px}.spaces-list{display:flex;flex-direction:column;gap:8px}.space-info-item{background:#f8f9fa;border-left:4px solid #ccc;border-radius:6px;cursor:pointer;padding:12px;transition:all .3s}.space-info-item:hover{background:#e9ecef;transform:translateX(4px)}.space-info-item.available{border-left-color:#27ae60}.space-info-item.rented{border-left-color:#e74c3c}.space-id{color:#333;font-weight:600;margin-right:8px}.space-status{border-radius:10px;font-size:12px;font-weight:600;padding:2px 8px}.space-info-item.available .space-status{background:#d4edda;color:#155724}.space-info-item.rented .space-status{background:#f8d7da;color:#721c24}.space-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;overflow:hidden;width:90%}.modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.modal-header h2{font-size:20px;margin:0}.close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;transition:all .3s;width:32px}.close-btn:hover{background:#ffffff4d}.modal-body{padding:30px}.modal-field{margin-bottom:20px}.modal-field label{color:#555;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.modal-field p,.modal-field span{color:#333;font-size:16px;line-height:1.5}.status-badge{border-radius:12px;font-size:14px;font-weight:600;padding:4px 12px}.status-badge.available{background:#d4edda;color:#155724}.status-badge.rented{background:#f8d7da;color:#721c24}.modal-footer{background:#f8f9fa;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;padding:20px 30px}.close-modal-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s}.close-modal-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}
/*# sourceMappingURL=main.2f846f48.css.map*/