[v-cloak]{display:none!important}.registration-overlay{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center}.registration-overlay:not(.d-none){display:flex}.registration-overlay-backdrop{position:absolute;inset:0;background:#00000073}.registration-overlay-card{position:relative;z-index:1;background:#fff;border-radius:12px;box-shadow:0 12px 40px #0003;max-width:520px;width:92%}.registration-overlay-card form{margin:0}.terrain-overlay{flex:1;width:100%;position:relative;overflow:hidden;background:radial-gradient(circle at top left,#0f172af5,#0f172afa);display:flex;align-items:stretch;justify-content:center}.terrain-overlay-inner{position:relative;flex:1;max-width:100%;display:flex;flex-direction:column}.terrain-overlay-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid #ccc;background:#0f172af2;color:#e5e7eb}.terrain-overlay-title{font-size:14px;font-weight:600;color:#e5e7eb}.terrain-overlay-close{background:none;border:none;font-size:20px;line-height:1;color:#e5e7eb;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.terrain-overlay-close:hover{background-color:#ffffff1a}.terrain-overlay-body{position:relative;flex:1;display:flex;min-height:0}.terrain-ui{position:absolute;top:14px;left:14px;z-index:10;background:#0f172af2;color:#e5e7eb;border:1px solid #ccc;border-radius:6px;box-shadow:0 2px 8px #00000026;padding:8px 10px;font-size:12px;max-width:340px}.terrain-ui-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.terrain-ui-row:last-of-type{margin-bottom:0}.terrain-pill{display:inline-block;padding:2px 8px;border-radius:4px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-size:11px}.terrain-muted{color:#9ca3af;font-size:11px}.terrain-label{display:block;margin-top:6px;margin-bottom:4px;font-weight:600;font-size:11px;color:#e5e7eb}.terrain-ui input[type=range]{width:100%;margin-top:2px}.terrain-canvas{position:relative;flex:1;width:100%;height:100%}.terrain-canvas canvas{display:block}#terrain3d-canvas{position:relative;width:100%;height:100%;overflow:hidden}#terrain3d-canvas canvas{display:block}.registration-overlay-close{position:absolute;top:10px;right:10px;z-index:2}.auth-card #register-form{display:none}#registration-overlay.auth-mode-register .auth-card #login-form{display:none!important}#registration-overlay.auth-mode-register .auth-card #register-form{display:block!important}.global-modal-overlay{position:fixed;inset:0;z-index:2999;display:none;align-items:center;justify-content:center;padding:16px}.global-modal-overlay:not(.d-none){display:flex}.global-modal-overlay:before{content:"";position:absolute;inset:0;background:#00000073;backdrop-filter:blur(2px)}.global-modal-container{position:relative;z-index:1;background:#fff;border-radius:12px;box-shadow:0 12px 40px #0003;width:300px;max-width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.global-modal-container.mobile{width:calc(100% - 32px)}.global-modal-close{position:absolute;top:12px;right:12px;z-index:2;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .2s ease;box-shadow:0 2px 8px #667eea59}.global-modal-close:hover{background:linear-gradient(135deg,#764ba2,#667eea);transform:scale(1.05);color:#fff;box-shadow:0 4px 12px #667eea80}.global-modal-close:active{transform:scale(.95)}.global-modal-close svg{width:13.5px;height:13.5px}.global-modal-content{padding:24px;overflow-y:auto;flex:1;color:#111827}.banner-container{position:fixed;left:0;right:0;width:100%;z-index:2000;background:#0f172abf;color:#fff;padding:12px 16px;box-shadow:0 2px 8px #00000026;transition:opacity .3s ease-out,transform .3s ease-out,max-height .3s ease-out;overflow:hidden;max-height:200px;opacity:1;transform:translateY(0);backdrop-filter:blur(4px)}.banner-container.banner-hidden{opacity:0;transform:translateY(-100%);max-height:0;padding:0;margin:0;pointer-events:none}.banner-content{display:flex;align-items:center;justify-content:center;gap:16px;max-width:100%;position:relative;padding-right:40px}.banner-message{flex:1;font-size:14px;line-height:1.5;text-align:center;padding:0 8px;white-space:normal}.banner-close{background:transparent;border:none;color:#fff;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;flex-shrink:0;position:absolute;right:0;top:50%;transform:translateY(-50%)}@media (max-width: 576px){.banner-content{padding-right:36px}.banner-message{font-size:13px;padding:0 4px}.banner-close{right:12px;padding:6px}.banner-close svg{width:18px;height:18px}}.banner-close:hover{background:#fff3}.banner-close svg{width:20px;height:20px}@media (max-width: 576px){.global-modal-container{width:calc(100% - 32px);margin:0 16px}.global-modal-content{padding:20px}.global-modal-close{top:10px;right:10px;width:21px;height:21px}.global-modal-close svg{width:12px;height:12px}}.auth-card{border:1px solid #e5e7eb;background:linear-gradient(180deg,#f9fafb,#f5f7fb)}.auth-card .form-label{font-weight:600;color:#374151}.brand-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 4px 12px #667eea59}.brand-btn:hover,.brand-btn:focus{background:linear-gradient(135deg,#5a70d8,#6a3f98);border-color:#5a70d8}.brand-outline-btn{color:#667eea;border-color:#667eea}.brand-outline-btn:hover,.brand-outline-btn:focus{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea}.btn-brand-auth{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;box-shadow:0 4px 12px #667eea59;font-weight:600;padding:6px 16px;white-space:nowrap}.btn-brand-auth:hover,.btn-brand-auth:focus{background:linear-gradient(135deg,#764ba2,#667eea);transform:translateY(-1px);box-shadow:0 4px 8px #667eea66;color:#fff}.btn-brand-auth:active{transform:translateY(0)}.btn-brand-auth-outline{color:#667eea;border:1px solid #667eea;background:transparent;font-weight:600;padding:6px 16px;white-space:nowrap}.btn-brand-auth-outline:hover,.btn-brand-auth-outline:focus{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea}.auth-link{font-size:16px;font-weight:400;color:#fff;text-decoration:underline;white-space:normal;overflow-wrap:anywhere;display:inline-block;text-align:center;transition:color .2s}.auth-link:hover,.auth-link:focus{color:#764ba2;text-decoration:underline}.auth-link-icon{display:none;flex-shrink:0}.auth-link-text{display:inline}.global-footer{position:fixed;bottom:0;left:0;right:0;height:20px;display:flex;justify-content:right;background-color:#0b1220;border-top:1px solid #e5e7eb;padding:0;z-index:1000}.contact-us-link{font-size:14px;font-weight:400;color:#fff;text-decoration:underline;white-space:nowrap;display:inline-block;text-align:center;transition:color .2s;opacity:.8;line-height:20px;padding-right:10px}.contact-us-link:hover,.contact-us-link:focus{color:#764ba2;text-decoration:underline;opacity:1}@media (max-width: 1200px){.navbar .row{padding-right:0!important}}@media (max-width: 992px){.navbar .row{padding-right:0!important}.logo-container{width:100%;margin-bottom:8px}.navbar-search-container{width:auto!important;flex:1;min-width:300px;margin-left:12px}.auth-button-container{margin-right:0!important}}@media (max-width: 576px){.auth-button-container{width:100%;margin-top:8px;margin-left:0!important;margin-right:0!important;justify-content:center}.btn-brand-auth,.btn-brand-auth-outline{width:100%}.auth-link{text-align:center;text-decoration:none}.auth-link-icon{display:block}.auth-link-text{display:none}.contact-us-link{font-size:12px}}.parcel-summary-content{padding:16px}.parcel-summary{font-size:14px;line-height:1.6}.parcel-summary .evaluation-basis{margin-bottom:24px;padding:12px;background-color:#f9fafb;border-left:3px solid #667eea;border-radius:4px}.parcel-summary .evaluation-basis p{margin:0;color:#374151}.parcel-summary .common-uses{margin-top:24px}.parcel-summary .common-uses h2{font-size:18px;font-weight:600;color:#111827;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.parcel-summary .use-item{margin-bottom:32px;padding:16px;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px}.parcel-summary .use-item:last-child{margin-bottom:0}.parcel-summary .use-name{font-size:16px;font-weight:600;color:#111827;margin:0 0 12px}.parcel-summary .status{margin-bottom:12px;padding:8px 12px;border-radius:4px;font-size:14px}.parcel-summary .status.status-likely-feasible{background-color:#d1fae5;color:#065f46}.parcel-summary .status.status-likely-constrained{background-color:#fee2e2;color:#991b1b}.parcel-summary .status strong{margin-right:8px}.parcel-summary .reason{margin-bottom:16px;padding:12px;background-color:#f9fafb;border-radius:4px;color:#374151}.parcel-summary .reason strong{color:#111827}.parcel-summary .standards-applied{margin-top:16px}.parcel-summary .standards-applied h4{font-size:15px;font-weight:600;color:#111827;margin-bottom:12px}.parcel-summary .standards-table{width:100%;border-collapse:collapse;font-size:13px}.parcel-summary .standards-table thead{background-color:#f3f4f6}.parcel-summary .standards-table th{padding:10px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.parcel-summary .standards-table td{padding:10px 12px;border-bottom:1px solid #e5e7eb;color:#4b5563}.parcel-summary .standards-table tbody tr:hover{background-color:#f9fafb}.parcel-summary .standards-table tbody tr:last-child td{border-bottom:none}.parcel-summary .standard-name{font-weight:500;color:#111827}.parcel-summary .required-value,.parcel-summary .parcel-value{font-family:Courier New,monospace}.parcel-summary .source-refs{color:#667eea;font-weight:500}.parcel-summary-error{padding:16px;background-color:#fee2e2;color:#991b1b;border-radius:4px;border-left:3px solid #dc2626}.terms-of-use-panel{display:flex;flex-direction:column;padding:1rem;background-color:#fff;border-radius:8px;border:1px solid #e5e7eb;max-height:600px;color:#111827}.terms-header{flex-shrink:0;color:#111827}.terms-header h3{color:#111827}.terms-header p{color:#374151}.terms-content{flex:1;overflow-y:auto;font-size:14px;line-height:1.6;max-height:400px;padding-right:.5rem;margin-bottom:1rem;color:#374151}.terms-footer{flex-shrink:0}.terms-content::-webkit-scrollbar{width:8px}.terms-content::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.terms-content::-webkit-scrollbar-thumb{background:#9ca3af;border-radius:4px}.terms-content::-webkit-scrollbar-thumb:hover{background:#6b7280}.terms-content ul{margin-top:.5rem;margin-bottom:.5rem;padding-left:1.5rem;color:#374151}.terms-content li{margin-bottom:.5rem;color:#374151}.terms-content strong{color:#111827;font-weight:600}.terms-content p{color:#374151}.terms-footer label{color:#111827;font-weight:500}.terms-footer button:disabled{opacity:.5;cursor:not-allowed}.app-shell{height:100vh;height:100dvh;overflow:auto;-webkit-overflow-scrolling:touch}#app{position:relative;height:100%}header{position:relative}#map{height:100%}.residential-types-row{display:flex;flex-wrap:wrap;gap:12px}.residential-type-card{width:110px;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;border-radius:12px;border:1px solid rgba(255,255,255,.8);background-color:#131d36;box-shadow:0 0 10px #0f172ad9;padding:8px;position:relative}.residential-type-image{max-width:100%;max-height:70px;border-radius:10px;margin-bottom:6px}.residential-type-info{width:100%;display:flex;flex-direction:column;align-items:center;gap:4px}.permission-class-badge{font-size:9px;font-weight:600;text-align:center;padding:3px 6px;border-radius:4px;line-height:1.2;color:#fff;background-color:#fff3;word-wrap:break-word;width:100%}.permission-class-badge.permission-pbr{background-color:#22c55e4d;color:#86efac}.permission-class-badge.permission-pws{background-color:#3b82f64d;color:#93c5fd}.permission-class-badge.permission-sup{background-color:#fbbf244d;color:#fde047}.permission-class-badge.permission-sups{background-color:#fbbf2466;color:#fde047}.permission-class-badge.permission-cz{background-color:#ef44444d;color:#fca5a5}.permission-class-badge.permission-czs{background-color:#ef444466;color:#fca5a5}.supplemental-regulation{font-size:8px;color:#fffc;text-align:center;font-weight:500;margin-top:2px;word-wrap:break-word;width:100%;line-height:12px}.layers-enabled-toolbar-bottom{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1000;pointer-events:none}.layers-enabled-toolbar-bottom .layers-enabled-toolbar,.layers-enabled-toolbar-bottom .layer-indicator,.layers-enabled-toolbar-bottom .layer-close-btn{pointer-events:auto}.finish-drawing-btn{position:fixed;bottom:16px;left:16px;z-index:1001;padding:12px 24px;background:linear-gradient(135deg,#764ba2,#667eea);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:all .2s}.finish-drawing-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);transform:translateY(-1px);box-shadow:0 6px 16px #0006}.finish-drawing-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0000004d}.view-parcel-details-btn{position:fixed;margin-top:10px;left:16px;z-index:1001;padding:12px 24px;background:linear-gradient(135deg,#764ba2,#667eea);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:all .2s}.view-parcel-details-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);transform:translateY(-1px);box-shadow:0 6px 16px #0006}.view-parcel-details-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0000004d}.location-btn{position:fixed;bottom:28px;right:16px;z-index:1001;padding:8px;width:48px;height:48px;border-radius:50%;background:#1a1a2e;color:#fff;border:none;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:all .2s;pointer-events:auto;display:flex;align-items:center;justify-content:center}.location-btn:hover{background:#2a2a3e;transform:translateY(-1px);box-shadow:0 6px 16px #0006}.location-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0000004d}.location-btn svg{width:36px;height:36px;display:block}.satellite-toggle-btn{position:fixed;bottom:90px;right:16px;z-index:1001;padding:8px;width:48px;height:48px;border-radius:50%;background:#1a1a2e;color:#fff;border:none;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:all .2s;pointer-events:auto;display:flex;align-items:center;justify-content:center}.satellite-toggle-btn:hover{background:#2a2a3e;transform:translateY(-1px);box-shadow:0 6px 16px #0006}.satellite-toggle-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0000004d}.satellite-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-right:0}.satellite-icon svg{width:38px;height:38px;display:block}.satellite-text{display:none}.measuring-alert-bubble{position:fixed;top:110px;left:50%;transform:translate(-50%);z-index:2000;min-width:300px;opacity:.88;padding:12px 20px;background:#0f172af2;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:14px;text-align:center;box-shadow:0 4px 12px #0000004d;pointer-events:none}.layers-enabled-toolbar{display:flex;gap:8px;flex-wrap:wrap;width:auto;justify-content:center}.layer-indicator{display:flex;align-items:center;gap:6px;background:#0f172af2;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:4px 8px;font-size:12px;color:#e5e7eb}.layer-label{font-weight:600}.layer-close-btn{background:transparent;border:none;color:#e5e7eb;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:background-color .2s;width:18px;height:18px}.layer-close-btn:hover{background-color:#ffffff1a}.layer-close-btn svg{width:14px;height:14px}.map-controls-container{display:flex;flex-direction:column;gap:0px}.map-control-section{background:#0f172af2;color:#e5e7eb;border:1px solid #ccc;border-radius:6px;box-shadow:0 2px 8px #00000026;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:12px;line-height:1.4;max-height:60vh;overflow:hidden;display:flex;flex-direction:column}#measuring-tools,#zoning-legend{width:150px}.legend-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;cursor:pointer;user-select:none;border-bottom:1px solid #e3e3e3}.legend-title{font-weight:600;margin-right:12px}.legend-toggle{font-size:14px;line-height:1}.legend-body{overflow:auto;flex:1;padding:8px 10px}.legend-item{display:flex;align-items:center;gap:10px;margin-bottom:6px}.legend-item:last-child{margin-bottom:0}.legend-checkbox{width:16px;height:16px;cursor:pointer;flex-shrink:0}.legend-color-square{width:16px;height:16px;border:1px solid #ffffff;flex-shrink:0;border-radius:2px}.legend-label{font-size:12px;color:#e5e7eb;cursor:pointer;user-select:none}#address-search{width:100%;margin:0;padding:0;position:relative}.search-container{display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 8px #00000026;padding:8px 10px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.search-container .search-input-row{display:flex;gap:8px}.search-input{flex:1;min-width:0;padding:8px 12px;border:1px solid #e3e3e3;border-radius:4px;background:#ffffffe6;color:#333;font-size:14px;outline:none}.search-input:focus{border-color:#4a90e2;background:#fff}.search-input::placeholder{color:#999}.search-button{padding:8px 16px;background:#667eea4d;color:#e5e7eb;border:1px solid rgba(102,126,234,.5);border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.search-button:hover{background:#667eea66;border-color:#667eeab3}.search-button:active{background:#667eea80;border-color:#667eeacc}.search-results{position:absolute;top:100%;left:0;margin-top:4px;width:100%;max-width:100%;background:#fffffff2;border:1px solid #ccc;border-radius:6px;max-height:300px;overflow-y:auto;box-shadow:0 2px 8px #00000026;z-index:2500}.search-results-header{padding:8px 12px;font-size:13px;font-weight:600;color:#555;border-bottom:1px solid #e3e3e3;background-color:#f8f8f8}.search-result-item{padding:2px 12px;cursor:pointer;border-bottom:1px solid #e3e3e3;font-size:14px;color:#333;transition:background-color .2s;white-space:nowrap}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background-color:#f0f0f0}.measuring-btn{width:100%;padding:6px 10px;margin-bottom:0;background-color:#ffffff1a;color:#e5e7eb;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;transition:all .2s;text-align:center;white-space:nowrap;box-sizing:border-box}.measuring-btn:hover{background-color:#fff3;border-color:#ffffff4d}.measuring-btn:active{background-color:#ffffff26}.measuring-btn.clear-btn{background-color:#dc354533;border-color:#dc354566;color:#ff6b7a}.measuring-btn.clear-btn:hover{background-color:#dc35454d;border-color:#dc354580}.measuring-btn.active{background-color:#4a90e24d;border-color:#4a90e299;border-width:2px;font-weight:600}.measuring-btn.active:hover{background-color:#4a90e266;border-color:#4a90e2b3}@media (max-width: 576px){.search-container{padding:6px 8px}.search-input,.search-button{padding:6px 10px;font-size:13px}.search-button-text{display:none}.search-results{max-height:200px;position:fixed!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important;margin-top:0!important}.search-result-item{padding:8px 10px;font-size:13px}.inspection-tabs-wrapper{margin-bottom:10px}.inspection-tabs{flex-wrap:nowrap;gap:2px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}.inspection-tabs::-webkit-scrollbar{height:4px}.inspection-tabs::-webkit-scrollbar-track{background:transparent}.inspection-tabs::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.inspection-tabs::-webkit-scrollbar-thumb:hover{background:#ffffff80}.inspection-tab{padding:6px 12px;font-size:11px;white-space:nowrap;flex-shrink:0}}#map{position:relative}.inspection-panel{position:absolute;top:0;left:0;right:0;width:100%;max-width:100%;max-height:80vh;max-height:80dvh;background:#0f172af2;color:#e5e7eb;border:1px solid #ccc;border-radius:0 0 6px 6px;box-shadow:0 2px 8px #00000026;z-index:2000;display:flex;flex-direction:column;pointer-events:auto;transform:translateY(-100%);transition:transform .3s ease-in-out}@media (min-width: 768px){.inspection-panel{width:510px;min-width:510px;max-width:800px;right:auto;resize:horizontal;overflow:auto}}.inspection-panel.inspection-panel-visible{transform:translateY(0)}.inspection-panel-header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid #ccc}.inspection-panel-header h3{margin:0;font-size:14px;font-weight:600;color:#e5e7eb;display:flex;align-items:center;gap:4px}.inspection-address{font-weight:400;color:#d1d5db}.inspection-panel-close{background:none;border:none;font-size:20px;line-height:1;color:#e5e7eb;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.zoning-tree-container{position:absolute;top:0;right:10px;z-index:2999;background:#0f172af2;border:1px solid rgba(255,255,255,.2);border-radius:6px;min-width:225px;max-width:350px;overflow:hidden;pointer-events:auto;box-shadow:0 2px 8px #0000004d;margin-top:8px;font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;line-height:1.4}@media (max-width: 576px){.zoning-tree-container{max-width:270px}}.global-loading-overlay{position:absolute;inset:0;background:#0f172afa;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10000;border-radius:6px}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}@keyframes spin{to{transform:rotate(360deg)}}.global-loading-overlay .loading-text{color:#e5e7eb;font-size:14px;font-weight:500}.zoning-tree-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#ffffff1a;border:1px solid rgba(168,85,247,.6);border-radius:4px;cursor:pointer;user-select:none}.zoning-tree-title{font-weight:700;color:#e5e7eb;font-size:14px}.zoning-tree-toggle{color:#e5e7eb;font-size:12px}.zoning-tree-body{max-height:calc(70vh - 45px);overflow-y:auto;padding:8px}.zoning-municipality-section{margin-bottom:8px}.zoning-municipality-header{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#ffffff0d;border:1px solid rgba(168,85,247,.5);border-radius:4px;cursor:pointer;user-select:none;margin-bottom:4px}.nested-section .zoning-municipality-header{background:#667eea40;border:1px solid rgba(0,212,255,.6)}.zoning-municipality-title{font-weight:600;color:#e5e7eb;font-size:13px}.zoning-municipality-toggle{color:#e5e7eb;font-size:11px}.zoning-municipality-zones{padding-left:12px}.zoning-zone-item{margin-bottom:4px}.zoning-layer-item{margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.category-select{width:100%;box-sizing:border-box;padding:4px 28px 4px 8px;margin-bottom:8px;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#e5e7eb;font-size:12px;font-family:Helvetica Neue,Arial,Helvetica,sans-serif;cursor:pointer;transition:background-color .2s,border-color .2s;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23e5e7eb' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.category-select:hover{background-color:#ffffff26;border-color:#ffffff4d}.category-select:focus{outline:none;background-color:#ffffff26;border-color:#667eea99}.category-select option{background-color:#0f172afa;color:#e5e7eb}.zoning-zone-label{display:flex;align-items:center;gap:8px;color:#fff;font-size:12px;cursor:pointer;padding:4px 6px;border-radius:3px;transition:background-color .2s}.zoning-zone-label:hover{background:#ffffff1a}.zoning-zone-label input[type=checkbox]{cursor:pointer}.zoning-zone-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.zoning-loading{font-size:11px;color:#9ca3af;font-style:italic}.inspection-panel-close:hover{background-color:#ffffff1a}.inspection-panel-content{flex:1;overflow-y:auto;padding:8px 10px;position:relative}.inspection-panel-content.chat-panel-open{min-height:500px}.parcel-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.parcel-tab{padding:4px 8px;border:1px solid #00897b;background:#fff;color:#00897b;border-radius:6px;cursor:pointer;font-weight:600;font-size:12px;transform:scale(.9)}.parcel-tab.active{background:#00897b;color:#fff}.parcel-tabs-label{width:100%;font-weight:700;color:#e5e7eb;margin-bottom:6px;font-size:12px}.ask-ai-button-container{margin-bottom:12px}.ask-ai-button{width:100%;padding:10px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.ask-ai-button:hover{background:linear-gradient(135deg,#764ba2,#667eea);transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.ask-ai-button:active{transform:translateY(0)}.chat-panel{position:absolute;inset:0;background:#0f172afa;z-index:10;display:flex;flex-direction:column;border-radius:8px}.chat-panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.2)}.chat-panel-header h3{margin:0;color:#fff;font-size:16px;font-weight:600}.chat-panel-close{background:transparent;border:none;color:#e5e7eb;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.chat-panel-close:hover{background-color:#ffffff1a}.chat-panel-content{flex:1;display:flex;flex-direction:column;padding:16px;gap:16px;overflow:hidden}.chat-response-area{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:16px;overflow-y:auto;min-height:200px;max-height:400px;position:relative}.chat-status-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#0f172abf;color:#e5e7eb;font-weight:700;font-size:15px;text-align:center;z-index:2;pointer-events:none;border-radius:6px}.chat-status-text{padding:0 12px}.chat-status-dots{display:flex;gap:6px;align-items:center;justify-content:center}.chat-status-dots span{width:8px;height:8px;background:#cbd5f5;border-radius:50%;display:inline-block;animation:chat-dot-bounce 1s infinite ease-in-out}.chat-status-dots span:nth-child(2){animation-delay:.15s}.chat-status-dots span:nth-child(3){animation-delay:.3s}@keyframes chat-dot-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}.chat-response{color:#e5e7eb;font-size:14px;line-height:1.6;word-wrap:break-word}.chat-response p{margin:0 0 12px}.chat-response p:last-child{margin-bottom:0}.chat-response h1,.chat-response h2,.chat-response h3,.chat-response h4,.chat-response h5,.chat-response h6{color:#fff;font-weight:600;margin:16px 0 8px;line-height:1.4}.chat-response h1{font-size:24px}.chat-response h2{font-size:20px}.chat-response h3{font-size:18px}.chat-response h4{font-size:16px}.chat-response ul,.chat-response ol{margin:0 0 12px;padding-left:24px}.chat-response li{margin:4px 0}.chat-response strong,.chat-response b{color:#fff;font-weight:600}.chat-response em,.chat-response i{font-style:italic}.chat-response blockquote{border-left:4px solid #667eea;padding-left:16px;margin:12px 0;color:#d1d5db;font-style:italic}.chat-response table{width:100%;border-collapse:collapse;margin:12px 0;background:#0003;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.chat-response thead{background:#667eea33}.chat-response th{padding:10px 12px;text-align:left;font-weight:600;color:#fff;border:1px solid rgba(255,255,255,.2);border-bottom:2px solid rgba(102,126,234,.4)}.chat-response th:first-child{border-left:none}.chat-response th:last-child{border-right:none}.chat-response td{padding:10px 12px;border:1px solid rgba(255,255,255,.1);border-top:none}.chat-response td:first-child{border-left:none}.chat-response td:last-child{border-right:none}.chat-response tr:last-child td{border-bottom:none}.chat-response tr:hover{background:#ffffff0d}.chat-response hr{border:none;border-top:1px solid rgba(255,255,255,.2);margin:16px 0}.chat-response a{color:#667eea;text-decoration:none}.chat-response a:hover{text-decoration:underline}.chat-response code{background:#0000004d;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:13px;color:#fbbf24}.chat-response pre{background:#0000004d;padding:12px;border-radius:6px;overflow-x:auto;margin:12px 0;border:1px solid rgba(255,255,255,.1)}.chat-response pre code{background:none;padding:0;color:#e5e7eb}.chat-placeholder{color:#9ca3af;font-size:14px;font-style:italic;text-align:center;padding:40px 20px}.chat-loading{color:#9ca3af;font-size:14px;text-align:center;padding:40px 20px}.chat-error{color:#ef4444;font-size:14px;padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px}.chat-input-area{display:flex;flex-direction:column;gap:12px}.chat-textarea{width:100%;padding:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#e5e7eb;font-size:14px;font-family:inherit;resize:vertical;min-height:80px}.chat-textarea:focus{outline:none;border-color:#667eea;background:#ffffff14}.chat-textarea::placeholder{color:#9ca3af}.chat-submit-button{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s;align-self:flex-end}.chat-submit-button:hover:not(:disabled){background:linear-gradient(135deg,#764ba2,#667eea);transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.chat-submit-button:disabled{opacity:.5;cursor:not-allowed}.inspection-tabs-wrapper{position:relative;margin-bottom:12px}.inspection-tabs{display:flex;gap:4px;border-bottom:1px solid rgba(255,255,255,.2)}.tabs-scroll-indicator{position:absolute;right:0;top:0;bottom:0;width:50px;display:none;align-items:center;justify-content:flex-end;padding-right:8px;gap:-4px;pointer-events:auto;cursor:pointer;z-index:10;background:linear-gradient(to right,transparent 0%,rgba(15,23,42,.8) 50%,rgba(15,23,42,.95) 100%);transition:opacity .2s}.tabs-scroll-indicator:hover{opacity:.9}.tabs-scroll-indicator:active{opacity:.7}.tabs-scroll-indicator svg{color:#ffffffb3;flex-shrink:0;margin-left:-6px}.tabs-scroll-indicator svg:first-child{margin-left:0}@media (max-width: 576px){.tabs-scroll-indicator{display:flex}}.inspection-tab{padding:8px 16px;border:none;background:transparent;color:#e5e7eb;border-radius:4px 4px 0 0;cursor:pointer;font-size:12px;font-weight:600;transition:all .2s;line-height:1.2;text-align:center}.inspection-tab:hover{background:#ffffff1a}.inspection-tab.active{background:#ffffff26;color:#fff;border-bottom:2px solid #667eea}.inspection-tab-content{min-height:100px}.inspection-section-subtitle{font-weight:600;color:#e5e7eb;margin-bottom:6px;font-size:11px;margin-top:8px}.inspection-loading,.inspection-message{padding:12px;color:#e5e7eb;font-size:12px;text-align:center}.inspection-properties{margin-bottom:0}.inspection-properties .row{margin:0}.inspection-property{margin-bottom:8px;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:6px 8px;background:#ffffff0d}.inspection-property-label{font-weight:600;color:#e5e7eb;font-size:11px;margin-bottom:4px}.inspection-section{margin-bottom:10px}.inspection-section-title{font-weight:700;color:#e5e7eb;margin-bottom:6px;font-size:12px;letter-spacing:.5px}.inspection-property-label-inline{font-weight:700;margin-right:4px;color:#e5e7eb;word-break:break-word;overflow-wrap:anywhere}.inspection-property-value-inline{margin-right:12px;color:#fff;word-break:break-word;overflow-wrap:anywhere;text-align:right;flex:1 1 auto;min-width:0}.permitted-uses-tab .inspection-property-value-inline{text-align:left}.footnote{margin-top:4px;font-size:10px;color:#9ca3af;font-style:italic}.setbacks-tab,.devstandards-tab{text-align:left}.setback-item{margin-bottom:12px;padding:8px;background:#ffffff0d;border-radius:4px;border-left:3px solid rgba(102,126,234,.6)}.setback-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:12px}.setback-label{font-weight:600;color:#e5e7eb;font-size:12px}.setback-criteria{font-weight:700;color:#667eea;font-size:12px;white-space:nowrap}.setback-explanation{color:#d1d5db;font-size:11px;line-height:1.4;margin-bottom:4px}.setback-section{margin-top:4px;font-size:10px;color:#9ca3af}.setback-section-label{font-weight:600;margin-right:4px}.setback-section-item{font-style:italic}.setbacks-base-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:12px}.setbacks-base-table thead{background:#667eea33}.setbacks-base-table th{padding:6px 8px;text-align:left;font-weight:600;color:#e5e7eb;border-bottom:1px solid rgba(255,255,255,.2)}.setbacks-base-table td{padding:6px 8px;color:#d1d5db;border-bottom:1px solid rgba(255,255,255,.1)}.setbacks-base-table tbody tr:last-child td{border-bottom:none}.setbacks-base-table td:first-child{font-weight:500;color:#e5e7eb}.setbacks-base-table td:last-child{color:#667eea;font-weight:600}.inspection-line{margin-bottom:4px;display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap}.inspection-property-value{color:#d1d5db;font-size:12px;text-align:left;word-break:break-word}.inspection-more-info{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.show-more-link{color:#60a5fa;text-decoration:none;font-size:12px;cursor:pointer;display:inline-block;transition:color .2s}.show-more-link:hover{color:#93c5fd;text-decoration:underline}.loading-text{color:#9ca3af;font-size:12px;font-style:italic}.full-parcel-properties{margin-top:8px}.full-parcel-properties .row{margin:0}.full-parcel-properties .inspection-property{margin-bottom:8px;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:6px 8px;background:#ffffff0d}.full-parcel-properties .inspection-property-label{font-size:11px;margin-bottom:4px}.full-parcel-properties .inspection-property-value{font-size:12px;text-align:left;word-break:break-word}
