.main-layout,.navbar,.sidebar,.modal,.panel-slot,.workspace-panel,.editor-column,.viewer-column,.editor-header,.view-switcher-row,.mode-selector{opacity:1;visibility:visible}a,button,input,select,textarea,.tab-btn,.subtab-btn,.icon-btn,.btn,.modal,.panel,.nav-icon-button,.project-item,.poi-list-item,.sidebar,.navbar,.editor-column,.viewer-column{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}.tab-btn,.subtab-btn,.icon-btn,.btn,.modal,.panel{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease,opacity .3s ease}input:not([type=range]):not([type=checkbox]):not([type=radio]),textarea,select{background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:6px;padding:6px 10px;font-family:inherit;font-size:.95rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}input:not([type=range]):not([type=checkbox]):not([type=radio]):focus,textarea:focus,select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #5a8bff26}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--color-placeholder);opacity:1}input::placeholder,textarea::placeholder{color:var(--color-placeholder);opacity:1}.theme-transitioning *{transition:none!important}.sync-modal-body{display:flex;flex-direction:column;align-items:stretch;gap:18px;width:100%}.sync-qr{margin:18px 0}.sync-link-text{font-size:1.05rem;color:var(--color-accent);word-break:break-all}.sync-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px 12px 0 0;background:linear-gradient(120deg,#5a8bff47,#5a8bff14);box-shadow:inset 0 -1px #ffffff0a}.sync-title-group{display:inline-flex;align-items:center;gap:10px}.sync-title-text{font-weight:700;letter-spacing:.02em}.sync-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#5a8bff24;color:var(--color-accent);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.sync-pill--ghost{background:#ffffff0f;color:var(--color-muted)}.sync-status-dot{width:12px;height:12px;border-radius:999px;box-shadow:0 0 0 8px #22c55e14;transition:all .25s ease;background:#9ca3af}.sync-status-dot.sync-active{background:#22c55e;box-shadow:0 0 0 10px #22c55e1f,0 0 18px #22c55e66}.sync-status-dot.sync-inactive{background:#9ca3af;box-shadow:0 0 0 8px #9ca3af1f}.sync-hero-text{display:flex;flex-direction:column;gap:10px}.sync-lede{margin:0;color:var(--color-muted);line-height:1.5}.sync-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0 4px}.sync-quick-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right}.sync-quick-actions .btn-primary,.sync-quick-actions .btn-danger{min-width:180px}.sync-help-text{margin:0;color:var(--color-muted);font-size:.9rem}.sync-tag-row{display:flex;gap:8px;flex-wrap:wrap}.sync-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;background:#ffffff0a;color:var(--color-text);font-size:.85rem;border:1px solid rgba(255,255,255,.08)}.sync-chip--accent{background:#5a8bff2e;color:var(--color-accent);border-color:#5a8bff66}.sync-chip--muted{color:var(--color-muted)}.sync-id-card{background:linear-gradient(140deg,#5a8bff29,#5a8bff0d);border:1px solid var(--color-border);border-radius:14px;padding:12px 14px;display:grid;gap:8px;position:relative;overflow:hidden}.sync-id-label{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.sync-id-value{font-family:DM Mono,SFMono-Regular,Menlo,monospace;font-size:1.1rem;font-weight:700;letter-spacing:.04em;color:var(--color-text);word-break:break-all}.sync-copy-btn{justify-self:flex-start}.sync-id-meta{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-top:1px solid rgba(255,255,255,.06)}.sync-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}.sync-card{background:var(--color-panel);border:1px solid var(--color-border);border-radius:12px;padding:14px;box-shadow:0 16px 40px #00000059}.sync-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sync-card h3{margin:0;font-size:1rem;letter-spacing:.02em}.sync-status-row{display:grid;grid-template-columns:1.2fr 1fr;gap:12px;align-items:stretch}.sync-status-row>*{min-width:0}.sync-qr-label{font-weight:600;letter-spacing:.04em;margin-bottom:8px}.sync-qr-frame{display:flex;align-items:center;justify-content:center;min-height:140px;padding:12px;background:var(--color-surface, #0f111a);border-radius:12px;border:1px dashed rgba(90,139,255,.35);box-shadow:inset 0 0 0 1px #ffffff08}.sync-link-display{margin-top:8px;font-size:.88rem;color:var(--color-muted);word-break:break-word}.sync-stats{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;width:100%;min-width:0}.sync-stats li{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);min-width:0;align-items:center}.stat-label{color:var(--color-muted);font-size:.9rem;flex-shrink:0}.stat-value{font-weight:600;color:var(--color-text);flex:1;min-width:0;display:inline-flex;justify-content:flex-end;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-value--mono{font-family:DM Mono,SFMono-Regular,Menlo,monospace;word-break:break-all}.stat-value--mono>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.stat-value--mono .btn-ghost{flex-shrink:0}.sync-input-label{display:block;font-weight:600;margin-bottom:8px}.sync-btn-row{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}[data-theme=light] .sync-modal-header{background:linear-gradient(120deg,#5a8bff1f,#5a8bff0f);box-shadow:inset 0 -1px #0000000a}.sync-hero,[data-theme=light] .sync-hero{background:none;border:none}[data-theme=light] .sync-chip{background:#f3f6ff;color:#3b4b7a;border-color:#5a8bff2e}[data-theme=light] .sync-chip--accent{background:#e8efff;color:#2c4fb3}[data-theme=light] .sync-card{background:#fff;border-color:#0000000f;box-shadow:0 16px 36px #0000001f}[data-theme=light] .sync-stats li{background:#f6f8ff;border-color:#0000000d}[data-theme=light] .sync-qr-frame{background:#f9fbff;border-color:#5a8bff59}.sync-modal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;margin-top:4px}.sync-card-heading h3{margin:0;font-size:1rem}.sync-card-heading p{margin:2px 0 0;line-height:1.3}.sync-chip-dot{width:10px;height:10px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 4px #5a8bff1f}.sync-chip-label{font-size:.75rem;color:var(--color-muted);letter-spacing:.02em}.sync-chip-value{font-weight:600}.sync-meta{margin-top:10px;display:flex;flex-direction:column;gap:8px}.sync-meta-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.sync-meta-label{color:var(--color-muted);font-size:.85rem}.sync-meta-value{display:inline-flex;align-items:center;gap:8px}.sync-code{font-family:SFMono-Regular,Consolas,Menlo,monospace;background:var(--color-surface);border:1px dashed var(--color-border);padding:6px 10px;border-radius:8px;font-size:.9rem}.sync-pill-row{display:flex;gap:8px;flex-wrap:wrap}.sync-card--server .sync-field{display:flex;flex-direction:column;gap:6px}.sync-card-actions{display:flex;gap:10px;align-items:center;margin-top:10px;flex-wrap:wrap}.sync-card--controls .sync-control-buttons{display:flex;gap:10px;flex-wrap:wrap}#sync-modal .modal-content{--modal-max-height: calc(100vh - 80px) ;--modal-width: min(1200px, calc(100vw - 48px) );display:flex;flex-direction:column;margin:24px auto}#sync-modal .modal-body{padding-top:12px;padding-bottom:12px;overflow-y:visible}.icon-btn:hover{background:var(--color-navbar-bg-start);border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px)}.icon-btn:active{transform:translateY(0)}.form-control{background:var(--color-input-bg)!important;color:var(--color-text)!important;border:1px solid var(--color-input-border)!important;border-radius:7px!important;padding:8px 12px!important;font-size:1em!important;transition:border-color .2s,box-shadow .2s}.form-control:focus{outline:none!important;border-color:var(--color-accent)!important;box-shadow:0 0 0 2px var(--focus-ring)}.password-field-wrapper{position:relative;display:flex;align-items:center}.password-field-wrapper .form-control{padding-right:44px!important;flex:1 1 auto}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;padding:6px;margin:0;display:flex;align-items:center;justify-content:center;color:var(--color-muted, #8b8fa3);cursor:pointer;border-radius:6px;line-height:0}.password-toggle:hover{color:var(--color-accent, #5a8bff);background:#5a8bff1f}.password-toggle:focus-visible{outline:2px solid var(--color-accent, #5a8bff);outline-offset:2px}.password-toggle svg{width:20px;height:20px;pointer-events:none}.sync-indicator{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background-color:#9ca3af;transition:background-color .3s ease}.sync-indicator.status-active{background-color:#22c55e;box-shadow:0 0 8px #22c55e80}.sync-indicator.status-inactive{background-color:#9ca3af}.sync-notification{margin-top:16px;padding:12px;border-radius:6px;font-size:14px}.sync-notification.hidden{display:none}.sync-notification-success{background-color:var(--notification-success-bg);color:var(--notification-success-text);border:1px solid var(--notification-success-border)}.sync-notification-error{background-color:var(--notification-error-bg);color:var(--notification-error-text);border:1px solid var(--notification-error-border)}.sync-notification-info{background-color:var(--notification-info-bg);color:var(--notification-info-text);border:1px solid var(--notification-info-border)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}#sync-toggle-btn{position:relative}.data-table-controls{display:flex;gap:8px;align-items:center;margin-bottom:12px;padding:8px 12px;background:var(--color-panel);border:1px solid var(--color-border);border-radius:8px}.data-filter-input{flex:1;padding:8px 12px;background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:6px;color:var(--color-text);font-size:.95em;transition:border-color .2s,box-shadow .2s}.data-filter-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}.data-btn-small{padding:8px 12px;background:var(--color-panel);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.9em;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.data-btn-small:hover{background:var(--interactive-bg);border-color:var(--interactive-border-hover);color:var(--color-text-strong);transform:translateY(-1px)}.data-btn-small:active{transform:translateY(0)}.data-table-wrapper{overflow-x:auto;overflow-y:auto;max-height:600px;border-radius:8px;background:var(--color-panel);border:1px solid var(--color-border)}.data-table{width:100%;border-collapse:collapse;font-size:.95em}.data-table thead{position:sticky;top:0;background:var(--color-panel);z-index:10;box-shadow:0 2px 4px var(--modal-shadow)}.data-table th{padding:12px;text-align:left;font-weight:600;color:var(--color-accent);border-bottom:2px solid var(--interactive-border-hover);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.data-table th.sortable{cursor:pointer;transition:background .2s,color .2s}.data-table th.sortable:hover{background:var(--interactive-bg);color:var(--highlight-accent)}.data-table th.sorted-asc,.data-table th.sorted-desc{color:var(--highlight-accent);background:var(--interactive-bg-hover)}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:var(--interactive-bg)}.data-table tbody tr.no-location{opacity:.7}.data-table td{padding:10px 12px;color:var(--color-text);border-bottom:1px solid var(--interactive-bg)}.data-table .poi-title{font-weight:500;color:var(--color-accent);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table .poi-desc{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-muted)}.data-table .poi-category{color:var(--color-text-strong);font-size:.9em}.data-table .poi-coord{font-family:Courier New,monospace;font-size:.9em;color:var(--color-text)}.data-table .poi-time{font-size:.9em;color:var(--color-muted)}.data-table .poi-media{text-align:center}.media-badge{display:inline-block;padding:2px 8px;background:var(--interactive-shadow);border:1px solid var(--interactive-border-hover);border-radius:12px;font-size:.85em;color:var(--color-accent)}.data-table-footer{padding:12px;text-align:right;background:var(--color-panel);border:1px solid var(--color-border);border-radius:0 0 8px 8px;font-size:.9em;color:var(--color-muted)}.data-empty{padding:40px 20px;text-align:center;color:var(--color-muted);font-style:italic}.data-tab{display:flex;flex-direction:column;gap:16px;padding:12px 8px;overflow-x:hidden}.data-form{display:flex;flex-direction:column;gap:16px}.data-section{background:var(--color-panel);border:1px solid var(--color-border);border-radius:10px;padding:14px 12px 16px;box-shadow:0 6px 16px var(--shadow-soft);display:flex;flex-direction:column;gap:10px;min-width:0;max-width:100%;box-sizing:border-box;overflow:visible}.data-label{font-weight:600;color:var(--color-text);margin-bottom:2px;font-size:.95rem;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.section-info-icon{font-size:.85rem;color:var(--color-text-secondary);opacity:.6;cursor:help;transition:color .2s ease,opacity .2s ease;flex-shrink:0}.section-info-icon:hover{color:var(--color-accent);opacity:1}[data-theme=light] .section-info-icon{color:var(--color-text-secondary)}[data-theme=light] .section-info-icon:hover{color:var(--color-accent)}.data-upload-row,.data-connector-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.data-upload-row{position:relative}.data-upload-row--buttons{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;margin-top:6px}#data-file-upload{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.data-upload-btn{padding:5px 12px;border-radius:6px;font-weight:600;font-size:.85rem;cursor:pointer;border:1px solid var(--color-border);background:var(--color-panel);color:var(--color-text);box-shadow:0 2px 8px var(--shadow-soft);transition:background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition);white-space:nowrap;flex-shrink:0}.data-upload-btn:hover,.data-upload-btn:focus{background:var(--interactive-shadow);border-color:var(--interactive-border-active);color:var(--color-white)}.data-input{flex:1 1 140px;min-width:100px;max-width:100%;padding:6px 10px;border-radius:6px;border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-text);font-size:.9rem;box-sizing:border-box}.data-field-desc{color:var(--color-muted);font-size:.85rem;margin-top:2px;word-wrap:break-word;overflow-wrap:break-word}.data-mapping-wizard{min-height:48px;background:var(--color-panel);border-radius:8px;border:1px solid var(--color-border);padding:10px 12px;color:var(--color-text);font-size:.98rem}.data-preview-row{display:flex;gap:18px;flex-wrap:wrap}.data-table-preview{flex:2 1 320px;min-width:0;background:var(--color-panel);border-radius:8px;border:1px solid var(--color-border);padding:10px 12px;overflow-x:auto;font-size:.97rem;color:var(--color-text)}.data-map-preview{flex:1 1 180px;min-width:0;background:var(--color-panel);border-radius:8px;border:1px solid var(--color-border);padding:10px 12px;min-height:120px;display:flex;align-items:center;justify-content:center}.data-import-options{display:flex;flex-direction:column;gap:8px}.data-import-options label{display:flex;align-items:flex-start;gap:6px;font-size:.9rem;line-height:1.4;cursor:pointer}.data-import-options label input[type=checkbox]{flex-shrink:0;margin-top:2px}.data-sync-strategy-row{display:flex;align-items:center;gap:8px;margin-top:6px}.data-connector-row{margin-bottom:8px}.data-connector-status-row{display:flex;gap:16px;align-items:center;margin-top:4px}.data-connector-pill{display:inline-block;padding:4px 14px;border-radius:999px;font-size:.95rem;font-weight:600;background:var(--surface-elevated);color:var(--text-inverse);border:1px solid var(--color-border)}.data-connector-meta{color:var(--color-muted);font-size:.92rem}.data-json-preview-row{display:flex;flex-direction:column;gap:6px}.data-json-preview{width:100%;min-height:120px;background:var(--surface-muted);color:var(--text-primary);border-radius:8px;border:1px solid var(--color-border);font-family:Fira Mono,Consolas,monospace;font-size:.98rem;padding:10px 12px;resize:vertical}.media-form{display:flex;flex-direction:column;gap:24px}.media-fields-grid{display:flex;flex-direction:column;gap:28px;margin-bottom:12px}.media-field{background:linear-gradient(150deg,var(--surface-gradient-start) 0%,var(--surface-gradient-end) 100%);border:1px solid var(--color-border);border-radius:14px;padding:18px 16px 16px;box-shadow:0 10px 24px var(--shadow-soft);display:flex;flex-direction:column;gap:14px;min-width:0}.media-label{font-weight:600;color:var(--color-text);margin-bottom:4px;font-size:1.05rem}.media-thumb-upload{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.media-thumb-upload input[type=file]{flex:1 1 220px;min-width:0;max-width:100%}.media-thumb-upload .media-upload-btn{flex-shrink:0}.media-upload-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(135deg,#5a8bff26,#28387e66);border:1px solid var(--interactive-border);border-radius:10px;padding:8px 16px;color:var(--color-text);font-weight:600;cursor:pointer;transition:background var(--transition),border-color var(--transition),box-shadow var(--transition)}.media-upload-input:hover,.media-upload-input:focus-visible{border-color:var(--interactive-border-active);box-shadow:0 0 0 2px #5a8bff4d}.media-hero-field{display:flex;flex-direction:column;gap:10px;margin-top:8px}.media-hero-preview{min-height:140px;border:1px dashed rgba(255,255,255,.25);background:var(--surface-muted);border-radius:12px;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;color:var(--color-text-muted);overflow:hidden;flex-direction:column;position:relative;gap:12px;cursor:pointer;background-size:cover;background-position:center;background-repeat:no-repeat}.media-hero-preview.has-hero-image{background-color:transparent}.media-hero-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:10px}.media-hero-preview span{font-size:.95rem;color:var(--color-text-muted)}.hero-preview-actions{width:100%;text-align:center;font-size:.85rem;display:flex;flex-direction:column;gap:8px}.hero-preview-actions p{margin:0;color:var(--color-text-secondary)}.media-video-actions{display:flex;gap:8px;margin-top:8px}.media-video-actions .media-upload-btn{flex:1}.splash-video-preview{position:relative;margin-top:12px;min-height:120px;border-radius:12px;background:var(--surface-muted);border:1px dashed rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;padding:12px;color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:.9rem}.splash-video-preview iframe{width:100%;height:180px;border-radius:10px;border:none}.media-thumb-img{width:72px;height:72px;border-radius:16px;-o-object-fit:cover;object-fit:cover;border:2px solid var(--color-accent);background:var(--surface-elevated);box-shadow:0 4px 16px var(--interactive-bg);flex-shrink:0}.media-input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text);font-size:1rem}.media-or{text-align:center;color:var(--color-muted);font-size:.92rem;margin:6px 0 2px}.media-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:10px;margin-bottom:8px}.media-gallery-img{width:72px;height:72px;border-radius:12px;-o-object-fit:cover;object-fit:cover;border:2px solid var(--color-accent);background:var(--surface-elevated);box-shadow:0 2px 8px var(--interactive-bg);position:relative}.media-gallery-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#0009;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.85;transition:opacity .15s,background .15s,transform .15s;z-index:2}.media-gallery-remove:hover,.media-gallery-remove:focus{opacity:1;background:var(--color-danger, #ef4444);transform:scale(1.1)}.media-upload-btn{padding:7px 16px;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;border:1px solid var(--color-border);background:var(--surface-card);color:var(--color-text);box-shadow:0 4px 12px var(--shadow-soft);transition:background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}.media-upload-btn:hover,.media-upload-btn:focus{background:var(--interactive-shadow);border-color:var(--interactive-border-active);color:var(--text-inverse)}.media-upload-btn--ghost{background:transparent;border-color:#fff3;color:var(--color-text-secondary);box-shadow:none}.media-upload-btn--danger{background:transparent;border-color:var(--color-danger, #ef4444);color:var(--color-danger, #ef4444);box-shadow:none}.media-upload-btn--danger:hover,.media-upload-btn--danger:focus{background:var(--color-danger, #ef4444);border-color:var(--color-danger, #ef4444);color:#fff}.media-delete-overlay-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:#0009;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.8;transition:opacity .15s,background .15s,transform .15s;z-index:10}.media-delete-overlay-btn:hover,.media-delete-overlay-btn:focus{opacity:1;background:var(--color-danger, #ef4444);transform:scale(1.1)}.media-delete-overlay-btn.hidden{display:none}.media-delete-overlay-btn--small{width:22px;height:22px;font-size:11px;top:4px;right:4px}.media-upload-btn.hidden{display:none}.media-field-desc{color:var(--color-muted);font-size:.92rem;margin-top:2px}.poi-media-input-panel{margin-top:16px;padding:16px;background:var(--color-panel-glass);border:1px solid var(--color-border);border-radius:12px;animation:slideDown .25s ease-out}.poi-media-input-panel.poi-media-link-only{margin-top:10px;padding:12px 14px}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.poi-media-input-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-weight:600;font-size:.95rem;color:var(--color-text)}.poi-media-input-close{background:none;border:none;color:var(--color-muted);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.poi-media-input-close:hover{background:var(--interactive-hover);color:var(--color-text)}.poi-media-input-body{display:flex;flex-direction:column;gap:12px}.poi-media-input-panel.poi-media-link-only .poi-media-input-body{gap:8px}.poi-media-input-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.poi-media-input-group{display:flex;flex-direction:column;gap:6px}.poi-media-input-panel.poi-media-link-only .poi-media-input-group{gap:4px}.poi-media-input-group-file{max-width:240px}.poi-media-input-group-url{flex:1 1 260px;min-width:200px}.poi-media-input-group label{font-size:.85rem;font-weight:500;color:var(--color-text)}.poi-media-input-group input[type=file]{font-size:.875rem;padding:8px;background:var(--interactive-bg);border:1px solid var(--interactive-border);border-radius:6px;color:var(--color-text);cursor:pointer;transition:border-color .2s,background .2s}.poi-media-input-group input[type=file]:hover{border-color:var(--interactive-border-active);background:var(--interactive-hover)}.poi-media-input-group input[type=url]{padding:10px 12px;background:var(--interactive-bg);border:1px solid var(--interactive-border);border-radius:6px;color:var(--color-text);font-size:.875rem;transition:border-color .2s,box-shadow .2s}.poi-media-input-group input[type=url]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #5a8bff1a}.poi-media-input-error{color:var(--color-error, #ff5252);font-size:.75rem;min-height:12px}.poi-media-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.poi-media-preview-item{position:relative;width:80px;height:80px;border-radius:6px;overflow:hidden;background:var(--interactive-bg);border:1px solid var(--interactive-border);display:flex;align-items:center;justify-content:center;transition:border-color .2s,box-shadow .2s}.poi-media-preview-item:hover{border-color:var(--interactive-border-active);box-shadow:0 2px 8px var(--interactive-shadow)}.poi-media-preview-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.poi-media-empty{padding:12px;text-align:center;color:var(--color-muted);font-size:.85rem;font-style:italic}.poi-media-icons{display:flex;align-items:center;gap:8px}.poi-media-icon-btn{background:none;border:none;color:var(--color-accent);cursor:pointer;padding:4px;display:inline-flex;align-items:center;justify-content:center;line-height:1;vertical-align:middle;transform-origin:center;transition:color .2s,transform .2s}.poi-media-icon-btn:hover{color:var(--highlight-accent);transform:scale(1.1)}.poi-media-icon-btn:active{transform:scale(.95)}.poi-media-remove-btn:hover{background:var(--highlight-red)!important;transform:scale(1.1)}.text-chip--poi.dragging{opacity:.5;background:var(--overlay-bg)!important;box-shadow:0 2px 12px var(--overlay-shadow)}.poi-chip-drop-indicator{pointer-events:none;margin:0 2px}.poi-chip-menu{position:absolute;display:flex;flex-direction:column;background:var(--modal-bg);border:1px solid var(--modal-border);border-radius:8px;box-shadow:0 6px 24px var(--modal-shadow);padding:6px 0;min-width:120px;z-index:10000}.poi-chip-menu button{background:none;border:none;color:var(--text-primary);font-size:.97em;padding:8px 18px 8px 32px;text-align:left;cursor:pointer;transition:background .18s,color .18s;position:relative}.poi-chip-menu button i{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:1em;opacity:.85}.poi-chip-menu button:hover{background:var(--interactive-bg-active);color:var(--color-white)}.poi-inline-input{margin-left:6px;width:180px;border:1px solid var(--color-border);border-radius:4px;outline:none;background:var(--color-panel);font:inherit;color:inherit;padding:4px 8px;transition:border-color .2s ease}.poi-inline-input:focus{border-color:var(--color-accent)}.poi-inline-input.loading{border-color:#d76b00}.poi-inline-input.success{border-color:#5ce178}.poi-inline-input.error{border-color:#ff6b6b}.inline-poi-location-results{position:absolute;z-index:9999;background:var(--color-panel);border:1px solid var(--color-border);border-radius:6px;box-shadow:var(--shadow-soft);margin-top:2px;min-width:220px}.inline-poi-location-result{padding:6px 10px;cursor:pointer;font-size:.98em;border-bottom:1px solid var(--color-divider)}.inline-poi-location-result:last-child{border-bottom:none}.inline-poi-location-result:hover{background:var(--interactive-bg)}.time-picker-popup{position:absolute;z-index:9999;background:var(--surface-3, #111621);border:1px solid rgba(255,255,255,.08);border-radius:10px;box-shadow:0 12px 40px #00000059;padding:10px 12px;width:220px}.time-inline-input{width:140px;border:none;outline:none;background:transparent;color:inherit;font:inherit}.time-picker-popup .time-inline-input{width:100%}.time-picker-popup__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.time-picker-popup__actions button{padding:4px 10px}:root{--motion-fast: .26s;--motion-default: .32s;--motion-slow: .4s;--ease-premium: cubic-bezier(.33, 0, .17, 1)}@media(max-width:700px){:root{--poi-modal-max-width: 99vw;--poi-modal-pad: 6px 2vw 8px 2vw;--poi-modal-radius: 10px}#poi-modal .modal-content .modal-header{margin-top:8vw}.poi-field,.poi-field--wide{padding:6px 4px!important;font-size:.97em!important}#poi-modal .modal-header{font-size:1em!important;padding-bottom:2px!important}.poi-actions{--poi-direction: column;--poi-gap: 6px;--poi-align: stretch}#poi-modal .poi-form{margin-top:36px}}.asset-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--color-accent-alpha);color:var(--color-white);font-size:.85rem;line-height:1.3;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .2s,box-shadow .2s}.asset-chip:hover{background:var(--interactive-bg-active);box-shadow:0 0 0 2px var(--focus-ring-strong)}.asset-chip i{font-size:1rem;line-height:1}.asset-chip[data-kind=image] i{color:var(--color-chip-image)}.asset-chip[data-kind=video] i{color:var(--color-chip-video)}.asset-chip[data-kind=sound] i{color:var(--color-chip-sound)}.asset-chip[data-kind=document] i{color:var(--color-chip-document)}.asset-chip[data-kind=model] i{color:var(--color-chip-model)}.asset-chip[data-kind=link] i{color:var(--color-chip-link)}.slash-menu{position:absolute;min-width:220px;background:var(--modal-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px var(--modal-shadow);padding:6px 0;z-index:3000;display:none}.slash-menu.visible{display:block}.slash-menu-item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;font-size:.92rem}.slash-menu-item i{font-size:1rem;opacity:.9}.slash-menu-item:hover,.slash-menu-item.active{background:var(--color-accent-alpha);color:var(--color-white)}.mixx-pin-wrapper{background:transparent}.leaflet-pin i{font-size:20px;color:var(--color-accent);filter:drop-shadow(0 1px 1px var(--color-shadow-dark))}.mode-selector.ai-listening{box-shadow:0 0 0 12px #86efac40,0 0 30px #86efac66,0 0 60px #86efac33;background:color-mix(in srgb,var(--interactive-bg-active) 80%,transparent 20%);transform:scale(2);z-index:10100;animation:modeSelectorPulseGreen 1.5s ease-in-out infinite}.mode-selector.ai-thinking{box-shadow:0 0 0 12px #3b82f640,0 0 30px #3b82f666,0 0 60px #3b82f633;background:color-mix(in srgb,var(--interactive-bg-active) 80%,transparent 20%);transform:scale(2);z-index:10100;animation:modeSelectorPulseBlue 1.2s ease-in-out infinite}.mode-selector.ai-speaking{box-shadow:0 0 0 12px #93c5fd40,0 0 30px #93c5fd66,0 0 60px #93c5fd33;background:color-mix(in srgb,var(--interactive-bg-active) 80%,transparent 20%);transform:scale(2);z-index:10100;animation:modeSelectorPulseLightBlue 1s ease-in-out infinite}@keyframes modeSelectorPulseGreen{0%,to{box-shadow:0 0 0 12px #86efac40,0 0 30px #86efac66,0 0 60px #86efac33;transform:scale(2)}50%{box-shadow:0 0 0 16px #86efac59,0 0 40px #86efac80,0 0 80px #86efac4d;transform:scale(2.05)}}@keyframes modeSelectorPulseBlue{0%,to{box-shadow:0 0 0 12px #3b82f640,0 0 30px #3b82f666,0 0 60px #3b82f633;transform:scale(2)}50%{box-shadow:0 0 0 16px #3b82f659,0 0 40px #3b82f680,0 0 80px #3b82f64d;transform:scale(2.05)}}@keyframes modeSelectorPulseLightBlue{0%,to{box-shadow:0 0 0 12px #93c5fd40,0 0 30px #93c5fd66,0 0 60px #93c5fd33;transform:scale(2)}50%{box-shadow:0 0 0 16px #93c5fd59,0 0 40px #93c5fd80,0 0 80px #93c5fd4d;transform:scale(2.05)}}.mixx-ai-mic-btn.is-listening{box-shadow:0 0 0 12px #86efac33;background:#86efac26;border-color:#86efac80}body:not(.app-ready) #textWorkspace,body:not(.app-ready) #map2dPanel,body:not(.app-ready) #map3dPanel{opacity:0;transform:scale(0);transform-origin:center}body.app-ready #textWorkspace,body.app-ready #map2dPanel,body.app-ready #map3dPanel{opacity:1;transform:none;transition:opacity .4s var(--ease-premium),transform .4s var(--ease-premium);transition-delay:2s}body:not(.app-ready) .mode-selector,body:not(.app-ready) .view-switcher-row{opacity:0;transform:scale(.96);transform-origin:center}body.app-ready .mode-selector,body.app-ready .view-switcher-row{opacity:1;transform:scale(1);transition:opacity 1s var(--ease-premium),transform 1s var(--ease-premium);transition-delay:2.4s}.autosave-status{position:fixed;right:14px;bottom:14px;z-index:3000;padding:6px 10px;font-size:12px;border-radius:999px;color:var(--color-text);background:var(--surface-elevated);border:1px solid var(--color-border);opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease;pointer-events:none}.autosave-status.show{opacity:1;transform:translateY(0)}body.e2e-test .project-item,body.e2e-test .project-item[style*="display:none"],body.e2e-test .projects-list li{display:list-item!important;visibility:visible!important;opacity:1!important}body.e2e-test .modal,body.e2e-test .modal.hidden{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}body.e2e-test .sidebar,body.e2e-test #sidebar-projects,body.e2e-test .sidebar.collapsed,body.e2e-test #sidebar-projects.hidden{display:block!important;visibility:visible!important;opacity:1!important}body.e2e-test.current-tab-active #sidebar-projects,body.e2e-test.current-tab-active #sidebar-projects.hidden{display:none!important;visibility:hidden!important;opacity:0!important}.text-chip{display:inline-flex;align-items:center;gap:4px;padding:0 4px;border-radius:var(--radius-pill, 999px);background:transparent;color:var(--color-text-strong);font-size:.86rem;font-weight:500;line-height:1.4;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.text-chip i{font-size:1rem;line-height:1}.text-chip--poi,.text-chip--poi i{color:var(--color-accent)}.poi-chip-marker{display:inline-block;width:8px;height:8px;background-color:#5a8bff;border-radius:50%;margin-right:4px;vertical-align:middle}.text-chip--poi.poi-active{opacity:1}.text-chip--poi.poi-inactive{opacity:.4;filter:grayscale(50%)}.text-chip--poi.poi-undated{opacity:.7}.text-chip--image i{color:var(--color-chip-image)}.text-chip--video i{color:var(--color-chip-video)}.text-chip--time i{color:var(--color-chip-time)}.text-chip--model i{color:var(--color-chip-model)}.text-chip--link i{color:var(--color-chip-link)}@media(max-width:1024px){.text-chip{font-size:.82rem;padding:0 3px;gap:3px}.text-chip i{font-size:.9rem}}@media(max-width:768px){.text-chip{font-size:.8rem;padding:2px 6px;gap:3px}.text-chip i{font-size:.85rem}.poi-preview-address{max-height:40px;overflow:hidden;text-overflow:ellipsis}.poi-chip-preview-tooltip{max-width:260px;padding:10px 12px}}@media(max-width:360px){.text-chip{font-size:.75rem;padding:2px 4px;gap:2px}.text-chip--media:not(.text-chip--expanded){max-width:32px;overflow:hidden}.text-chip--media:not(.text-chip--expanded) i{margin-right:0}.text-chip--poi{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poi-chip-preview-tooltip{max-width:200px;padding:8px}.poi-preview-description,.poi-preview-coords{display:none}}@media(min-resolution:192dpi){.text-chip i{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@media(hover:none)and (pointer:coarse){.text-chip{min-height:32px;padding:4px 8px}.poi-chip-edit-btn{min-width:48px;min-height:36px;font-size:.9rem}}.text-chip--note{background:linear-gradient(135deg,#fff9c4,#fff59d);color:#5d4037;border:1px solid #fdd835;padding:4px 8px;display:inline-flex;align-items:center;gap:4px}.text-chip--note i{color:#f57f17;font-size:.9rem}.text-chip--note .note-chip-label{font-weight:500;font-size:.9rem}.text-chip--note.note-chip-editing{background:linear-gradient(135deg,#fffde7,#fff9c4);padding:4px 6px}.note-chip-editor{display:inline-block;min-width:120px;max-width:300px;padding:2px 6px;border-bottom:1px solid #fdd835;outline:none;font-size:.9rem;color:#5d4037}.note-chip-editor:empty:before{content:attr(data-placeholder);color:#9e9e9e;font-style:italic}.note-chip-editor:focus{border-bottom-color:#f57f17}#textPanel[data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--color-placeholder);font-style:italic;opacity:.8;pointer-events:none;display:block}#textPanel[data-placeholder]:empty:focus:before{opacity:.6}#textPanel[data-placeholder]:empty{min-height:140px}.note-preview-bubble{position:absolute;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:12px;min-width:200px;max-width:320px;z-index:10000;animation:notePreviewFadeIn .2s ease-out}@keyframes notePreviewFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.note-preview-content{font-size:.9rem;color:#424242;line-height:1.5;margin-bottom:8px;white-space:pre-wrap;word-break:break-word}.note-preview-actions{display:flex;gap:8px;justify-content:flex-end;border-top:1px solid #f0f0f0;padding-top:8px}.note-btn{background:transparent;border:1px solid #e0e0e0;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:.85rem;color:#616161;display:inline-flex;align-items:center;gap:4px;transition:all .2s}.note-btn:hover{background:#f5f5f5;border-color:#bdbdbd;color:#424242}.note-btn-delete:hover{background:#ffebee;border-color:#ef5350;color:#d32f2f}.text-chip:hover{background:var(--interactive-bg);box-shadow:0 6px 14px var(--interactive-shadow)}.text-chip--note:hover{background:linear-gradient(135deg,#fff59d,#fff176);box-shadow:0 4px 12px #f57f1740}.text-chip.chip-active{background:var(--interactive-bg-hover);box-shadow:0 0 0 2px var(--focus-ring-strong)}.text-chip--phase{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0;border:1px solid #64b5f6;padding:4px 10px;display:inline-flex;align-items:center;gap:6px;font-weight:500;transition:all .2s ease}.text-chip--phase i{color:#1976d2;font-size:.95rem}.text-chip--phase .phase-chip-title{font-weight:500;font-size:.9rem}.text-chip--phase:hover{background:linear-gradient(135deg,#bbdefb,#90caf9);box-shadow:0 4px 12px #1976d24d;transform:translateY(-1px)}.text-chip--phase:focus{outline:none;box-shadow:0 0 0 2px #1976d280}.text-chip--phase:active{transform:translateY(0);box-shadow:0 2px 6px #1976d240}@media(prefers-color-scheme:dark){.text-chip--phase{background:linear-gradient(135deg,#1a237e,#283593);color:#90caf9;border-color:#5c6bc0}.text-chip--phase i{color:#82b1ff}.text-chip--phase:hover{background:linear-gradient(135deg,#283593,#3949ab);box-shadow:0 4px 12px #82b1ff4d}}[data-theme=dark] .text-chip--phase{background:linear-gradient(135deg,#1a237e,#283593);color:#90caf9;border-color:#5c6bc0}[data-theme=dark] .text-chip--phase i{color:#82b1ff}[data-theme=dark] .text-chip--phase:hover{background:linear-gradient(135deg,#283593,#3949ab);box-shadow:0 4px 12px #82b1ff4d}.phase-panel{background:var(--panel-bg, #1a1a2e);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;margin-bottom:12px;overflow:hidden}.phase-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#ffffff08;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1));cursor:pointer}.phase-panel-title{display:flex;align-items:center;gap:8px;margin:0;font-size:.9rem;font-weight:600;color:var(--color-text, #fff)}.phase-panel-title i{color:#64b5f6}.phase-panel-toggle{background:transparent;border:none;color:var(--color-text-muted, #888);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.phase-panel-toggle:hover{background:#ffffff1a;color:var(--color-text, #fff)}.phase-panel-body{padding:8px;max-height:300px;overflow-y:auto}.phase-panel-collapsed .phase-panel-body{display:none}.phase-panel-empty{text-align:center;padding:16px;color:var(--color-text-muted, #888);font-size:.85rem}.phase-panel-empty p{margin:0 0 8px}.phase-panel-hint{font-size:.8rem;opacity:.8}.phase-panel-hint code{background:#ffffff1a;padding:2px 6px;border-radius:4px;font-family:monospace}.phase-list{display:flex;flex-direction:column;gap:4px}.phase-item{display:flex;align-items:center;gap:8px;padding:8px;background:#ffffff08;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all .2s}.phase-item:hover{background:#ffffff0f;border-color:#64b5f64d}.phase-item:focus{outline:none;border-color:#64b5f6;box-shadow:0 0 0 2px #64b5f633}.phase-item-dragging{opacity:.5;border-style:dashed}.phase-item-drag-over{border-color:#64b5f6;background:#64b5f61a}.phase-item-drag{color:var(--color-text-muted, #666);cursor:grab;padding:2px}.phase-item-drag:active{cursor:grabbing}.phase-item-content{flex:1;min-width:0}.phase-item-title{display:block;font-size:.85rem;font-weight:500;color:var(--color-text, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phase-item-rename-input{width:100%;padding:2px 6px;font-size:.85rem;font-weight:500;background:#ffffff1a;border:1px solid #64b5f6;border-radius:4px;color:var(--color-text, #fff);outline:none}.phase-item-actions{display:flex;gap:2px;opacity:0;transition:opacity .2s}.phase-item:hover .phase-item-actions,.phase-item:focus-within .phase-item-actions{opacity:1}.phase-btn{background:transparent;border:none;color:var(--color-text-muted, #888);cursor:pointer;padding:4px 6px;border-radius:4px;font-size:.8rem;transition:all .2s}.phase-btn:hover{background:#ffffff1a;color:var(--color-text, #fff)}.phase-btn-jump:hover{background:#4caf5033;color:#4caf50}.phase-btn-recapture:hover{background:#64b5f633;color:#64b5f6}.phase-btn-rename:hover{background:#ffc10733;color:#ffc107}.phase-btn-delete:hover{background:#f4433633;color:#f44336}@media(prefers-color-scheme:light){.phase-panel{background:#fff;border-color:#e0e0e0}.phase-panel-header{background:#f5f5f5;border-bottom-color:#e0e0e0}.phase-panel-title{color:#333}.phase-item{background:#f9f9f9}.phase-item:hover{background:#f0f0f0}.phase-item-title{color:#333}.phase-btn{color:#666}.phase-btn:hover{background:#0000000d;color:#333}}.poi-inline-input{display:inline-block;min-width:200px;max-width:400px;padding:4px 8px;margin-left:4px;border-radius:4px;border:1px solid var(--interactive-border-hover);background:var(--interactive-bg);color:var(--color-text);outline:none;font-size:.9rem;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease}.poi-inline-input:focus{border-color:var(--interactive-border-active);box-shadow:0 0 8px var(--interactive-shadow)}.poi-inline-input::-moz-placeholder{color:var(--color-text-muted)}.poi-inline-input::placeholder{color:var(--color-text-muted)}.time-inline-input{display:inline-block;padding:4px 8px;margin-left:4px;border-radius:4px;border:1px solid var(--time-input-border);background:var(--time-input-bg);color:var(--color-text);outline:none;font-size:.9rem;transition:border-color .3s ease,box-shadow .3s ease}.time-inline-input:focus{border-color:var(--time-input-border-focus);box-shadow:0 0 8px var(--time-input-shadow)}.time-inline-input::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}.poi-list-item:active{overflow:hidden}.poi-list-item:active:after{content:"";position:absolute;left:50%;top:50%;width:0;height:0;background:var(--interactive-bg-active);border-radius:50%;transform:translate(-50%,-50%);animation:ripple .5s linear;pointer-events:none}@keyframes ripple{0%{width:0;height:0;opacity:.6}80%{width:120px;height:120px;opacity:.2}to{width:120px;height:120px;opacity:0}}.leaflet-marker-icon.poi-selected{animation:markerPulse .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 12px 2px var(--marker-selected-shadow)}@keyframes markerPulse{0%{transform:scale(1);box-shadow:0 0 0 0 var(--marker-pulse-shadow)}60%{transform:scale(1.18);box-shadow:0 0 24px 8px var(--marker-pulse-shadow)}to{transform:scale(1);box-shadow:0 0 12px 2px var(--marker-selected-shadow)}}.leaflet-marker-icon.poi-highlighted{animation:markerHighlightPulse 1s cubic-bezier(.4,0,.2,1) infinite;z-index:1000!important}@keyframes markerHighlightPulse{0%,to{transform:scale(1);box-shadow:0 0 0 0 var(--marker-pulse-shadow, rgba(59, 130, 246, .5))}50%{transform:scale(1.25);box-shadow:0 0 20px 6px var(--marker-pulse-shadow, rgba(59, 130, 246, .5))}}.cesium-poi-highlighted{filter:drop-shadow(0 0 8px var(--color-accent, #3b82f6)) brightness(1.3)}.text-chip--poi.active{background:var(--interactive-bg-active);color:var(--color-text-strong);box-shadow:0 8px 20px var(--interactive-shadow);animation:chipHighlight .5s cubic-bezier(.4,0,.2,1);position:relative}.text-chip--poi.active i{color:var(--color-accent)}@keyframes chipHighlight{0%{box-shadow:0 0 0 0 transparent}to{box-shadow:0 8px 20px var(--interactive-shadow)}}.poi-chip-edit-btn{position:absolute;z-index:10000;font-size:.85rem;padding:4px 12px;border-radius:6px;background:var(--color-accent);color:#fff;border:none;box-shadow:0 2px 8px #5a8bff4d;cursor:pointer;font-weight:500;transition:all .2s ease;opacity:0;pointer-events:none;transform:translateY(-4px)}.poi-chip-edit-btn.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.poi-chip-edit-btn:hover{background:#4a7bef;box-shadow:0 4px 12px #5a8bff66;transform:translateY(-1px)}.poi-chip-preview-tooltip{position:absolute;z-index:10001;background:var(--color-bg-panel, rgba(17, 17, 22, .95));border:1px solid var(--color-border, rgba(255, 255, 255, .1));border-radius:8px;padding:12px 16px;box-shadow:0 8px 24px #0006;max-width:320px;min-width:180px;pointer-events:none;animation:tooltipFadeIn .15s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.poi-preview-title{font-weight:600;font-size:.95rem;color:var(--color-text-strong, #fff);margin-bottom:6px;display:flex;align-items:center;gap:6px}.poi-preview-title i{color:var(--color-accent, #5a8bff)}.poi-preview-address{font-size:.85rem;color:var(--color-text-muted, #a0a0a0);margin-bottom:6px;line-height:1.4}.poi-preview-description{font-size:.85rem;color:var(--color-text, #ccc);margin-bottom:6px;line-height:1.4;font-style:italic}.poi-preview-coords{font-size:.75rem;color:var(--color-text-muted, #888);font-family:monospace;padding-top:4px;border-top:1px solid var(--color-border, rgba(255, 255, 255, .08))}.poi-popup{position:relative;z-index:10002;background:#202430e0;backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);border:1px solid rgba(90,139,255,.22);border-radius:12px;box-shadow:0 8px 32px #5a8bff26,0 4px 12px #0000004d,inset 0 1px #ffffff0d;min-width:220px;max-width:320px;padding:16px;animation:poiPopupFadeIn .2s ease-out;pointer-events:auto}@keyframes poiPopupFadeIn{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.poi-popup__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.poi-popup__title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:1rem;color:var(--color-text-strong, #fff);margin:0;line-height:1.3;flex:1;min-width:0}.poi-popup__title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poi-popup__title i{color:var(--color-accent, #5a8bff);flex-shrink:0;font-size:1.1rem}.poi-popup__close{background:transparent;border:none;color:var(--color-muted, #8b8fa3);cursor:pointer;padding:4px;border-radius:6px;transition:color .15s ease,background .15s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px}.poi-popup__close:hover{color:var(--color-text, #e7e7ea);background:#ffffff1a}.poi-popup__close:active{background:#ffffff26}.poi-popup__category{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:#5a8bff26;color:var(--color-accent, #5a8bff);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}.poi-popup__category i{font-size:.75rem;opacity:.85}.poi-popup__date{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--color-muted, #a0a0a0);margin-bottom:10px}.poi-popup__date i{color:var(--color-accent, #5a8bff);opacity:.7;font-size:.9rem}.poi-popup__description{font-size:.85rem;color:var(--color-text, #ccc);line-height:1.55;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.poi-popup__action{width:100%;padding:10px 16px;background:linear-gradient(140deg,#5a8bff,#7a9fff);color:#fff;border:none;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer;transition:box-shadow .2s ease,transform .15s ease;display:flex;align-items:center;justify-content:center;gap:8px}.poi-popup__action:hover{box-shadow:0 4px 18px #5a8bff73;transform:translateY(-1px)}.poi-popup__action:active{transform:translateY(0);box-shadow:0 2px 8px #5a8bff4d}.poi-popup__action i{font-size:1rem}.leaflet-popup.poi-glassmorphic-popup{margin-bottom:20px}.leaflet-popup.poi-glassmorphic-popup .leaflet-popup-content-wrapper{background:transparent;border-radius:0;box-shadow:none;padding:0}.leaflet-popup.poi-glassmorphic-popup .leaflet-popup-content{margin:0;width:auto!important}.leaflet-popup.poi-glassmorphic-popup .leaflet-popup-tip-container{display:none}[data-theme=light] .poi-popup{background:#ffffffeb;border-color:#5a8bff40;box-shadow:0 8px 32px #5a8bff1f,0 4px 12px #00000014,inset 0 1px #ffffff80}[data-theme=light] .poi-popup__title{color:var(--color-text-strong, #1a1a2e)}[data-theme=light] .poi-popup__close{color:#666}[data-theme=light] .poi-popup__close:hover{color:#333;background:#0000000f}[data-theme=light] .poi-popup__category{background:#5a8bff1f}[data-theme=light] .poi-popup__date{color:#666}[data-theme=light] .poi-popup__description{color:#444}[data-animations=on] .poi-popup,.enhanced-mode .poi-popup{transition:box-shadow .3s ease,transform .3s ease}[data-animations=on] .poi-popup:hover,.enhanced-mode .poi-popup:hover{box-shadow:0 0 40px -10px var(--enhance-glow-primary, rgba(102, 126, 234, .4)),0 0 60px -20px var(--enhance-glow-accent, rgba(118, 75, 226, .35)),0 8px 32px #5a8bff33,inset 0 1px #ffffff14;transform:translateY(-2px)}.projects-list,.poi-list,.sidebar-content,.text-panel,.modal-content,.data-table-wrapper,textarea,.mixx-ai-panel__log,.mobile-chat-messages{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar-thumb) var(--color-scrollbar-track)}.projects-list::-webkit-scrollbar,.poi-list::-webkit-scrollbar,.sidebar-content::-webkit-scrollbar,.text-panel::-webkit-scrollbar,.data-table-wrapper::-webkit-scrollbar,textarea::-webkit-scrollbar,.mixx-ai-panel__log::-webkit-scrollbar,.mobile-chat-messages::-webkit-scrollbar{width:10px;background:var(--color-scrollbar-track)}.projects-list::-webkit-scrollbar-thumb,.poi-list::-webkit-scrollbar-thumb,.sidebar-content::-webkit-scrollbar-thumb,.text-panel::-webkit-scrollbar-thumb,.data-table-wrapper::-webkit-scrollbar-thumb,textarea::-webkit-scrollbar-thumb,.mixx-ai-panel__log::-webkit-scrollbar-thumb,.mobile-chat-messages::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--surface-elevated) 60%,var(--color-accent) 100%);border-radius:8px;border:2px solid var(--color-scrollbar-track)}.projects-list::-webkit-scrollbar-thumb:hover,.poi-list::-webkit-scrollbar-thumb:hover,.sidebar-content::-webkit-scrollbar-thumb:hover,.text-panel::-webkit-scrollbar-thumb:hover,.data-table-wrapper::-webkit-scrollbar-thumb:hover,textarea::-webkit-scrollbar-thumb:hover,.mixx-ai-panel__log::-webkit-scrollbar-thumb:hover,.mobile-chat-messages::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--color-accent) 60%,var(--surface-elevated) 100%)}.projects-list::-webkit-scrollbar-track,.poi-list::-webkit-scrollbar-track,.sidebar-content::-webkit-scrollbar-track,.text-panel::-webkit-scrollbar-track,.data-table-wrapper::-webkit-scrollbar-track,textarea::-webkit-scrollbar-track,.mixx-ai-panel__log::-webkit-scrollbar-track,.mobile-chat-messages::-webkit-scrollbar-track{background:var(--color-input-bg);border-radius:8px}.info-category-input{background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;padding:7px 12px;font-size:1rem;outline:none;transition:border-color .2s;flex:1;min-width:0}.info-category-input:focus{border-color:var(--color-accent)}.category-input-container{display:flex;gap:8px;align-items:flex-end}.qr-code-box{display:flex;justify-content:center;align-items:center;min-height:160px;width:100%}.btn-primary{background:linear-gradient(140deg,var(--btn-primary-bg-start),var(--btn-primary-bg-end));color:var(--btn-primary-text);border:none;border-radius:8px;font-weight:700;padding:10px 18px;box-shadow:0 4px 14px var(--btn-primary-shadow);transition:background .2s ease,box-shadow .2s ease,transform .12s ease}.btn-primary:hover,.btn-primary:focus-visible{background:linear-gradient(140deg,color-mix(in srgb,var(--btn-primary-bg-start) 85%,#ffffff 15%),color-mix(in srgb,var(--btn-primary-bg-end) 85%,#ffffff 15%));color:var(--btn-primary-text);box-shadow:0 6px 18px var(--btn-primary-shadow-hover),0 0 0 3px #5a8bff40;transform:translateY(-1px);outline:none}.btn-primary:active{transform:translateY(0);box-shadow:0 3px 10px var(--btn-primary-shadow-active)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-danger{background:var(--danger-bg);color:var(--danger-text);border:none;border-radius:8px;font-weight:700;padding:10px 18px;box-shadow:0 4px 14px var(--danger-shadow);transition:background .2s ease,box-shadow .2s ease,transform .12s ease}.btn-danger:hover,.btn-danger:focus-visible{background:var(--danger-bg-hover);color:var(--danger-text);box-shadow:0 6px 18px var(--danger-shadow);transform:translateY(-1px);outline:none}.btn-danger:active{transform:translateY(0);box-shadow:0 3px 10px var(--danger-shadow)}.btn-danger:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}#delete-confirm.btn-primary{background:var(--danger-bg);color:var(--danger-text);border:none;border-radius:6px;font-weight:600;box-shadow:0 2px 8px var(--danger-shadow);transition:background .2s,color .2s}#delete-confirm.btn-primary:hover,#delete-confirm.btn-primary:focus{background:var(--danger-bg-hover);color:var(--danger-text)}#delete-confirm-modal .modal-footer{padding:18px 0 12px;display:flex;justify-content:flex-end;gap:12px;border-radius:0 0 12px 12px}#delete-confirm-modal .btn-danger{background:var(--danger-light-bg);color:var(--danger-light-text);box-shadow:none}#delete-confirm-modal .btn-danger:hover,#delete-confirm-modal .btn-danger:focus{background:var(--danger-light-bg-hover);color:var(--danger-light-text-hover)}#delete-confirm-ok.btn-danger{background:var(--danger-bg);color:var(--danger-text);border-radius:6px;padding:10px 22px;border:none;box-shadow:0 2px 8px var(--danger-shadow);font-weight:600;transition:background .2s}#delete-confirm-ok.btn-danger:hover,#delete-confirm-ok.btn-danger:focus{background:var(--danger-bg-hover)}#sidebar-current{border:none;border-radius:0;background:none;box-shadow:none;padding-left:var(--sidebar-current-pad-x, 0);padding-right:var(--sidebar-current-pad-x, 0);padding-bottom:var(--sidebar-current-pad-bottom, 0);margin:var(--sidebar-current-margin, 0);width:var(--sidebar-current-width, auto);overflow-y:var(--sidebar-current-overflow, visible);position:var(--sidebar-current-position, static);--sidebar-current-pad-x: 0;--sidebar-current-margin: 0 -18px;--sidebar-current-width: calc(100% + 36px) ;--sidebar-current-pad-bottom: 0;--sidebar-current-overflow: hidden;--sidebar-current-position: relative;box-sizing:border-box}.projects-list{list-style:none;padding:16px;margin:0;display:flex;flex-direction:column;gap:12px;flex:1 1 auto;min-height:0;overflow-y:auto;background:linear-gradient(150deg,var(--modal-gradient-start),var(--modal-gradient-end));background-color:var(--modal-bg-solid);border:1px solid var(--modal-border-light);border-radius:18px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scrollbar-width:thin;scrollbar-color:var(--color-scrollbar-thumb) var(--color-scrollbar-track)}.projects-list::-webkit-scrollbar{width:8px}.projects-list::-webkit-scrollbar-track{background:transparent}.projects-list::-webkit-scrollbar-thumb{background-color:var(--color-scrollbar-thumb);border-radius:999px}.project-item{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:16px 20px;margin:0;background:linear-gradient(160deg,var(--project-bg-start),var(--project-bg-end));border:1px solid var(--project-border);border-radius:16px;color:var(--project-text);cursor:pointer;transition:transform .16s ease,box-shadow .22s ease,border-color .16s ease,background .18s ease;outline:none;min-width:0}.project-item:hover{transform:translateY(-2px) scale(1.01);border-color:var(--project-border-hover);box-shadow:0 22px 40px var(--project-shadow)}.project-item:focus-visible{transform:translateY(-2px) scale(1.01);border-color:var(--project-border-hover);box-shadow:0 0 0 2px var(--project-focus-ring),0 22px 40px var(--project-shadow)}.project-item:active{transform:translateY(0)}.project-main{display:flex;flex-direction:column;gap:10px;min-width:0}.project-header{display:flex;align-items:center;gap:12px;min-width:0}.project-thumb{width:38px;height:38px;flex:0 0 auto;border-radius:12px;-o-object-fit:cover;object-fit:cover;border:1px solid var(--project-border-hover);box-shadow:0 10px 22px var(--shadow-elevated)}.project-title{flex:1 1 auto;min-width:0;font-size:1rem;font-weight:600;letter-spacing:.01em;color:var(--project-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-item.selected .project-title{color:var(--color-white)}.project-shared-icon{margin-left:8px;color:#667eea;font-size:14px;opacity:.8;vertical-align:middle}.project-item.selected .project-shared-icon{color:var(--color-white);opacity:1}.project-status{flex:0 0 auto;padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;background:var(--status-default-bg);border:1px solid var(--status-default-border);color:var(--status-default-text)}.project-status--published{background:var(--status-published-bg);border-color:var(--status-published-border);color:var(--status-published-text)}.project-status--draft{background:var(--status-draft-bg);border-color:var(--status-draft-border);color:var(--status-draft-text)}.project-status--archived{background:var(--status-archived-bg);border-color:var(--status-archived-border);color:var(--status-archived-text)}.project-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:24px}.project-meta-item{font-size:.78rem;font-weight:500;color:var(--text-muted);display:inline-flex;align-items:center;line-height:1.3}.project-meta-item+.project-meta-item{padding-left:10px;border-left:1px solid var(--modal-border)}.project-tags{color:var(--text-secondary)}.project-actions{display:flex;align-items:center;gap:6px;opacity:0;transform:translate(-6px);transition:opacity .16s ease,transform .16s ease;color:var(--color-accent)}.project-item:hover .project-actions,.project-item:focus-within .project-actions,.project-item.selected .project-actions{opacity:1;transform:translate(0)}.project-actions .bi{font-size:1.4rem;pointer-events:none}@media(max-width:520px){.project-item{grid-template-columns:1fr;gap:14px}.project-actions{justify-content:flex-end}}.leaflet-bottom.leaflet-right{inset:auto 18px 18px auto!important;z-index:1000}.locked{background:var(--color-danger)!important;color:var(--color-white)!important;opacity:.85;box-shadow:0 2px 8px var(--danger-shadow)}.panel-bottom-align{margin-bottom:25px}.footer-bar{position:sticky;bottom:0;left:0;width:calc(100% + 36px);margin-left:-18px;margin-right:-18px;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:5px 18px;border-top:1px solid var(--color-border-subtle);z-index:10;box-shadow:0 -2px 8px var(--interactive-bg);margin-top:auto;background:var(--color-panel)}[data-theme=light] .footer-bar{background:var(--color-panel);border-top-color:#303e6e29;box-shadow:0 -6px 16px #212a4e14}.footer-bar .info-status{margin-top:0;margin-right:auto}.footer-bar .btn-save,.footer-bar .btn-publish{display:inline-flex;align-items:center;justify-content:center;gap:5.4px;padding:2.7px 16.2px;border-radius:5.4px;border:1px solid var(--color-border);background:var(--color-panel);color:var(--color-text-strong);font-weight:600;text-transform:uppercase;letter-spacing:.018em;font-size:90%;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}.footer-bar .btn-save:hover{background:var(--interactive-bg-active);border-color:var(--interactive-border-active)}[data-theme=light] .footer-bar .btn-save{color:var(--color-text-strong)}.footer-bar .btn-publish{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text);box-shadow:0 2px 10px var(--success-shadow)}.footer-bar .btn-publish:hover,.footer-bar .btn-publish:focus{background:var(--success-bg-hover);border-color:var(--success-border-hover);box-shadow:0 2px 10px var(--success-shadow-hover)}body,html,input,button,textarea,select{font-family:dm-sans,sans-serif}.navbar-brand{font-size:2rem;font-weight:500;letter-spacing:1px;color:var(--color-text-strong)}.navbar-right{display:flex;align-items:center;gap:18px;flex-wrap:nowrap;position:relative}#notificationsBtn:hover .notifications-tooltip{display:block!important}:root{--color-bg: #0c0c0d;--color-panel: #111116;--color-sidebar: #18181b;--color-navbar-bg-start: #181a23;--color-navbar-bg-end: #23253a;--color-navicon-bg: #23253a;--color-navicon-hover: #2f3146;--color-profile-chip-bg-start: #23253a;--color-profile-chip-bg-end: #7a8bff;--color-profile-chip-text: #ffffff;--color-profile-menu: rgba(18, 19, 32, .98);--color-profile-menu-border: rgba(255, 255, 255, .06);--color-tooltip-bg: #23253a;--color-tooltip-border: rgba(255, 255, 255, .08);--color-accent: #5a8bff;--color-text: #e7e7ea;--color-text-strong: #eaf0ff;--color-text-secondary: #b3b3c0;--color-muted: #b3b3c0;--color-border: #22222a;--color-border-subtle: rgba(255, 255, 255, .08);--color-divider: rgba(255, 255, 255, .08);--color-danger: #e66;--color-placeholder: rgba(231, 231, 234, .58);--color-input-bg: rgba(24, 24, 32, .6);--color-input-border: rgba(255, 255, 255, .08);--color-scrollbar-thumb: rgba(90, 139, 255, .35);--color-scrollbar-track: rgba(255, 255, 255, .08);--shadow-soft: 0 2px 16px rgba(0, 0, 0, .28);--shadow-elevated: 0 8px 32px rgba(90, 139, 255, .18);--surface-elevated: #23253a;--surface-muted: #18181f;--surface-gradient-start: #18181f;--surface-gradient-end: #15151c;--surface-card: #202027;--text-inverse: #ffffff;--text-primary: #e7e7ea;--text-secondary: #b3b3c0;--text-muted: rgba(231, 231, 234, .5);--color-chip-image: #86c5ff;--color-chip-video: #ff7676;--color-chip-sound: #ffa4a4;--color-chip-document: #b0c0ff;--color-chip-model: #4ef2a8;--color-chip-link: #aabaff;--color-chip-time: #ffd46b;--color-white: #ffffff;--color-accent-alpha: rgba(90, 139, 255, .18);--color-shadow-dark: rgba(0, 0, 0, .35);--notification-success-bg: #d1fae5;--notification-success-text: #065f46;--notification-success-border: #10b981;--notification-error-bg: #fee2e2;--notification-error-text: #991b1b;--notification-error-border: #ef4444;--notification-info-bg: #dbeafe;--notification-info-text: #1e40af;--notification-info-border: #3b82f6;--status-default-bg: rgba(90, 139, 255, .16);--status-default-border: rgba(118, 137, 255, .32);--status-default-text: rgba(157, 190, 255, .85);--status-published-bg: rgba(46, 178, 133, .18);--status-published-border: rgba(46, 178, 133, .32);--status-published-text: rgba(142, 232, 198, .9);--status-draft-bg: rgba(255, 193, 79, .18);--status-draft-border: rgba(255, 193, 79, .32);--status-draft-text: rgba(255, 218, 162, .88);--status-archived-bg: rgba(112, 115, 134, .2);--status-archived-border: rgba(112, 115, 134, .32);--status-archived-text: rgba(196, 199, 215, .85);--sync-badge-bg-start: rgba(142, 170, 255, .95);--sync-badge-bg-end: rgba(90, 139, 255, .85);--sync-badge-text: #ffffff;--sync-badge-shadow: rgba(90, 139, 255, .3);--sync-badge-shadow-hover: rgba(90, 139, 255, .38);--sync-badge-shadow-active: rgba(90, 139, 255, .28);--xr-panel-shadow: rgba(32, 34, 59, .35);--xr-panel-shadow-elevated: rgba(74, 110, 255, .35);--xr-hud-bg: rgba(90, 139, 255, .92);--xr-hud-text: #ffffff;--interactive-bg: rgba(90, 139, 255, .08);--interactive-bg-hover: rgba(90, 139, 255, .12);--interactive-bg-active: rgba(90, 139, 255, .18);--interactive-border: rgba(90, 139, 255, .18);--interactive-border-hover: rgba(90, 139, 255, .3);--interactive-border-active: rgba(90, 139, 255, .4);--interactive-shadow: rgba(90, 139, 255, .2);--focus-ring: rgba(90, 139, 255, .18);--focus-ring-strong: rgba(90, 139, 255, .25);--marker-pulse-shadow: rgba(122, 139, 255, .53);--marker-selected-shadow: rgba(122, 139, 255, .53);--timeline-bg: linear-gradient(180deg, rgba(22, 23, 38, .72) 0%, rgba(12, 12, 18, .4) 100%);--timeline-border: rgba(122, 139, 255, .16);--timeline-shadow: inset 0 0 0 1px rgba(17, 18, 34, .5), 0 10px 18px rgba(10, 12, 26, .35);--timeline-track-bg: linear-gradient(180deg, rgba(33, 37, 62, .8) 0%, rgba(21, 22, 38, .62) 55%, rgba(12, 12, 20, .4) 100%);--timeline-scrub-bg: linear-gradient(90deg, rgba(28, 30, 52, .9) 0%, rgba(20, 22, 38, .7) 100%);--timeline-scrub-border: rgba(122, 139, 255, .18);--timeline-glow: rgba(90, 139, 255, .45);--timeline-glow-active: rgba(90, 139, 255, .65);--timeline-glow-secondary: rgba(90, 139, 255, .35);--bg-grid-bg: #0c0c0d;--bg-grid-accent1: rgba(90, 139, 255, .28);--bg-grid-accent2: rgba(130, 255, 220, .18);--bg-grid-line: rgba(90, 139, 255, .12);--bg-grid-line-2: rgba(90, 139, 255, .08);--bg-grid-orb-1: rgba(90, 139, 255, .45);--bg-grid-orb-2: rgba(130, 255, 220, .4);--layout-gap: clamp(12px, 1.2vw, 15px);--layout-padding: clamp(18px, 2vw, 28px);--sidebar-width: clamp(272px, 25vw, 320px);--viewer-min-width: clamp(280px, 28vw, 320px);--layout-columns: var(--sidebar-width) minmax(400px, 1fr) minmax(var(--viewer-min-width), .8fr);--layout-areas: "sidebar editor viewer";--nav-center-order: 0;--nav-center-width: auto;--card-pad: 22px;--sidebar-pad: 20px 18px 0 18px;--media-btn-pad: 8px 14px;--media-btn-font: .92rem;--modal-max-width: 880px;--modal-pad: 24px 28px;--modal-radius: var(--radius-lg);--poi-modal-max-width: 840px;--poi-modal-pad: var(--modal-pad);--poi-modal-radius: var(--modal-radius);--tab-padding: clamp(8px, .8vw, 10px);--tab-font-size: clamp(.85rem, 1vw, 1.08rem);--tab-border-radius: var(--radius-md);--tab-bg: linear-gradient(90deg, var(--color-navbar-bg-start) 0%, var(--color-navbar-bg-end) 100%);--tab-bg-hover: var(--color-navicon-hover);--tab-bg-active: var(--color-accent-alpha);--timeline-progress-bg: radial-gradient(circle at clamp(16px, calc(16px + (100% - 32px) * var(--percent)), calc(100% - 16px) ) 50%, rgba(122, 139, 255, .35) 0%, rgba(122, 139, 255, .08) 35%, rgba(122, 139, 255, 0) 70%);--timeline-handle-border: rgba(122, 139, 255, .55);--modal-bg: rgba(32, 36, 48, .98);--modal-border: rgba(90, 139, 255, .18);--modal-shadow: rgba(0, 0, 0, .25);--overlay-bg: rgba(90, 139, 255, .32);--overlay-shadow: rgba(90, 139, 255, .18);--overlay-dark: rgba(0, 0, 0, .7);--modal-gradient-start: rgba(21, 21, 32, .72);--modal-gradient-end: rgba(12, 13, 22, .58);--modal-bg-solid: rgba(18, 19, 30, .6);--modal-border-light: rgba(118, 137, 255, .16);--btn-primary-bg-start: #5a8bff;--btn-primary-bg-end: #7a9fff;--btn-primary-text: #ffffff;--btn-primary-shadow: rgba(90, 139, 255, .4);--btn-primary-shadow-hover: rgba(104, 156, 255, .46);--btn-primary-shadow-active: rgba(74, 118, 238, .38);--project-bg-start: rgba(30, 32, 48, .78);--project-bg-end: rgba(20, 21, 34, .66);--project-border: rgba(118, 137, 255, .28);--project-text: rgba(231, 233, 255, .92);--project-border-hover: rgba(118, 137, 255, .45);--project-shadow: rgba(20, 22, 46, .45);--project-focus-ring: rgba(122, 139, 255, .5);--highlight-red: rgba(255, 0, 0, 1);--highlight-accent: rgba(90, 139, 255, 1);--time-input-border: rgba(255, 215, 107, .5);--time-input-bg: rgba(255, 215, 107, .1);--time-input-border-focus: rgba(255, 215, 107, .8);--panel-semi-transparent: rgba(17, 17, 22, .5);--panel-70-transparent: rgba(17, 17, 22, .7);--panel-80-transparent: rgba(17, 17, 22, .8);--bg-semi-transparent: rgba(12, 12, 13, .5);--border-semi-transparent: rgba(255, 255, 255, .04);--accent-panel-mix: rgba(74, 108, 197, 1);--time-input-shadow: rgba(255, 215, 107, .3);--danger-bg: #d32f2f;--danger-bg-hover: #b71c1c;--danger-text: #ffffff;--danger-shadow: rgba(211, 47, 47, .12);--danger-light-bg: #ffffff;--danger-light-text: #d32f2f;--danger-light-bg-hover: #f5bcbc;--danger-light-text-hover: #b71c1c;--success-bg: #1b8a55;--success-border: #1b8a55;--success-text: #ffffff;--success-shadow: rgba(27, 138, 85, .25);--success-bg-hover: #24c17d;--success-border-hover: #24c17d;--success-shadow-hover: rgba(36, 193, 125, .35);--timeline-track-start: #5a8bff;--timeline-track-mid: #7a8bff;--timeline-track-end: #5ce1ff;--timeline-handle-bg: #f8fbff;--timeline-handle-mid: #a7b1ff;--timeline-handle-end: #5c68ff;--timeline-caption-text: rgba(231, 231, 234, .68);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-pill: 999px;--transition: .2s ease;--panel-motion-duration: 1s;--panel-motion-ease: cubic-bezier(.33, 1, .68, 1);--font-base: "Segoe UI", "system-ui", sans-serif}.sidebar-tabs{display:flex;gap:var(--tab-gap, 8px);padding:var(--tab-pad, 0 12px 12px);border-bottom:1px solid var(--color-border-subtle)}.tab-btn{flex:1;border-radius:var(--tab-radius, var(--radius-md));background:var(--tab-bg, var(--interactive-bg));color:var(--tab-color, var(--color-text));padding:var(--tab-padding, 9px 14px);font-size:var(--tab-font-size, 1.05rem);font-weight:600;border:1px solid var(--tab-border, var(--color-border-subtle));transition:background var(--transition),color var(--transition),border var(--transition),box-shadow var(--transition);box-shadow:var(--tab-shadow, none)}.tab-btn:hover,.tab-btn:focus{background:var(--tab-bg-hover, var(--interactive-bg-hover));color:var(--tab-color-hover, var(--color-text));border-color:var(--tab-border-hover, var(--interactive-border-hover));box-shadow:var(--tab-shadow-hover, var(--shadow-soft))}.tab-btn.active{background:var(--tab-bg-active, var(--interactive-bg-active));color:var(--tab-color-active, var(--text-inverse));border-color:var(--tab-border-active, var(--interactive-border-active));box-shadow:var(--tab-shadow-active, var(--shadow-elevated))}[data-theme=light]{--color-bg: #f5f6fb;--color-panel: #ffffff;--color-sidebar: #f1f3fc;--color-navbar-bg-start: #ffffff;--color-navbar-bg-end: #eef2ff;--color-navicon-bg: #e5e9fb;--color-navicon-hover: #d9def8;--color-profile-chip-bg-start: #e9edff;--color-profile-chip-bg-end: #5a8bff;--color-profile-chip-text: #1e1f2c;--color-profile-menu: #ffffff;--color-profile-menu-border: rgba(36, 42, 90, .12);--color-tooltip-bg: #ffffff;--color-tooltip-border: rgba(36, 42, 90, .14);--color-text: #1f2030;--color-text-strong: #131429;--color-text-secondary: #5e6278;--color-muted: #5e6278;--color-border: rgba(48, 62, 110, .24);--color-border-subtle: rgba(48, 62, 110, .16);--color-divider: rgba(36, 42, 90, .12);--color-danger: #c81f41;--color-placeholder: rgba(31, 33, 52, .45);--color-input-bg: rgba(255, 255, 255, .92);--color-input-border: rgba(48, 62, 110, .18);--color-scrollbar-thumb: rgba(90, 139, 255, .45);--bg-grid-bg: #f6f8ff;--bg-grid-accent1: rgba(90, 139, 255, .2);--bg-grid-accent2: rgba(60, 180, 200, .16);--bg-grid-line: rgba(40, 70, 120, .08);--bg-grid-line-2: rgba(40, 70, 120, .05);--bg-grid-orb-1: rgba(90, 139, 255, .3);--bg-grid-orb-2: rgba(80, 200, 180, .28);--color-scrollbar-track: rgba(90, 139, 255, .12);--shadow-soft: 0 2px 16px rgba(15, 24, 64, .12);--shadow-elevated: 0 12px 28px rgba(15, 24, 64, .16);--surface-elevated: #ffffff;--surface-muted: #f8f9fc;--surface-gradient-start: #ffffff;--surface-gradient-end: #f5f6fb;--surface-card: #ffffff;--text-inverse: #000000;--text-primary: #1f2030;--text-secondary: #5e6278;--text-muted: rgba(31, 32, 48, .5);--color-chip-image: #3498ff;--color-chip-video: #e74c3c;--color-chip-sound: #e67e22;--color-chip-document: #6c5ce7;--color-chip-model: #00b894;--color-chip-link: #5a8bff;--color-chip-time: #f39c12;--status-default-bg: rgba(90, 139, 255, .1);--status-default-border: rgba(90, 139, 255, .25);--status-default-text: #2563eb;--status-published-bg: rgba(34, 197, 94, .1);--status-published-border: rgba(34, 197, 94, .25);--status-published-text: #059669;--status-draft-bg: rgba(245, 158, 11, .1);--status-draft-border: rgba(245, 158, 11, .25);--status-draft-text: #d97706;--status-archived-bg: rgba(107, 114, 128, .1);--status-archived-border: rgba(107, 114, 128, .25);--status-archived-text: #4b5563;--sync-badge-bg-start: rgba(59, 130, 246, .9);--sync-badge-bg-end: rgba(37, 99, 235, .9);--sync-badge-text: #ffffff;--sync-badge-shadow: rgba(59, 130, 246, .25);--sync-badge-shadow-hover: rgba(59, 130, 246, .35);--sync-badge-shadow-active: rgba(59, 130, 246, .2);--xr-panel-shadow: rgba(0, 0, 0, .1);--xr-panel-shadow-elevated: rgba(59, 130, 246, .2);--xr-hud-bg: rgba(59, 130, 246, .9);--xr-hud-text: #ffffff;--interactive-bg: rgba(59, 130, 246, .08);--interactive-bg-hover: rgba(59, 130, 246, .12);--interactive-bg-active: rgba(59, 130, 246, .16);--interactive-border: rgba(59, 130, 246, .2);--interactive-border-hover: rgba(59, 130, 246, .35);--interactive-border-active: rgba(59, 130, 246, .45);--interactive-shadow: rgba(59, 130, 246, .15);--focus-ring: rgba(59, 130, 246, .2);--focus-ring-strong: rgba(59, 130, 246, .3);--marker-pulse-shadow: rgba(59, 130, 246, .4);--marker-selected-shadow: rgba(59, 130, 246, .35);--timeline-bg: linear-gradient(180deg, rgba(248, 250, 252, .95) 0%, rgba(241, 245, 249, .8) 100%);--timeline-border: rgba(59, 130, 246, .2);--timeline-shadow: inset 0 0 0 1px rgba(226, 232, 240, .8), 0 4px 6px rgba(0, 0, 0, .1);--timeline-track-bg: linear-gradient(180deg, rgba(241, 245, 249, .9) 0%, rgba(226, 232, 240, .8) 55%, rgba(203, 213, 225, .6) 100%);--timeline-scrub-bg: linear-gradient(90deg, rgba(248, 250, 252, .95) 0%, rgba(241, 245, 249, .9) 100%);--timeline-scrub-border: rgba(59, 130, 246, .25);--timeline-glow: rgba(59, 130, 246, .3);--timeline-glow-active: rgba(59, 130, 246, .4);--timeline-glow-secondary: rgba(59, 130, 246, .2);--timeline-progress-bg: radial-gradient(circle at clamp(16px, calc(16px + (100% - 32px) * var(--percent)), calc(100% - 16px) ) 50%, rgba(59, 130, 246, .25) 0%, rgba(59, 130, 246, .08) 35%, rgba(59, 130, 246, 0) 70%);--timeline-handle-border: rgba(59, 130, 246, .6);--modal-bg: #ffffff;--modal-border: rgba(59, 130, 246, .2);--modal-shadow: rgba(0, 0, 0, .15);--overlay-bg: rgba(59, 130, 246, .25);--overlay-shadow: rgba(59, 130, 246, .15);--overlay-dark: rgba(0, 0, 0, .5);--modal-gradient-start: rgba(248, 250, 252, .95);--modal-gradient-end: rgba(241, 245, 249, .9);--modal-bg-solid: rgba(255, 255, 255, .95);--modal-border-light: rgba(59, 130, 246, .12);--btn-primary-bg-start: #3b82f6;--btn-primary-bg-end: #1d4ed8;--btn-primary-text: #ffffff;--btn-primary-shadow: rgba(59, 130, 246, .3);--btn-primary-shadow-hover: rgba(37, 99, 235, .4);--btn-primary-shadow-active: rgba(29, 78, 216, .35);--project-bg-start: rgba(248, 250, 252, .9);--project-bg-end: rgba(241, 245, 249, .8);--project-border: rgba(59, 130, 246, .2);--project-text: #1f2937;--project-border-hover: rgba(59, 130, 246, .4);--project-shadow: rgba(0, 0, 0, .1);--project-focus-ring: rgba(59, 130, 246, .4);--highlight-red: rgba(239, 68, 68, 1);--highlight-accent: rgba(59, 130, 246, 1);--time-input-border: rgba(245, 158, 11, .4);--time-input-bg: rgba(245, 158, 11, .08);--time-input-border-focus: rgba(245, 158, 11, .6);--time-input-shadow: rgba(245, 158, 11, .25);--danger-bg: #dc2626;--danger-bg-hover: #b91c1c;--danger-text: #ffffff;--danger-shadow: rgba(220, 38, 38, .15);--danger-light-bg: #fef2f2;--danger-light-text: #dc2626;--danger-light-bg-hover: #fee2e2;--danger-light-text-hover: #b91c1c;--success-bg: #059669;--success-border: #059669;--success-text: #ffffff;--success-shadow: rgba(5, 150, 105, .2);--success-bg-hover: #10b981;--success-border-hover: #10b981;--success-shadow-hover: rgba(16, 185, 129, .3);--color-white: #000000;--color-accent-alpha: rgba(90, 139, 255, .15);--color-shadow-dark: rgba(0, 0, 0, .15);--panel-semi-transparent: rgba(255, 255, 255, .5);--panel-70-transparent: rgba(255, 255, 255, .7);--panel-80-transparent: rgba(255, 255, 255, .8);--bg-semi-transparent: rgba(245, 246, 251, .5);--border-semi-transparent: rgba(0, 0, 0, .04);--accent-panel-mix: rgba(144, 173, 247, 1);--notification-success-bg: #10b981;--notification-success-text: #ffffff;--notification-success-border: #059669;--notification-error-bg: #ef4444;--notification-error-text: #ffffff;--notification-error-border: #dc2626;--notification-info-bg: #3b82f6;--notification-info-text: #ffffff;--notification-info-border: #2563eb;--timeline-track-start: #4f46e5;--timeline-track-mid: #6366f1;--timeline-track-end: #06b6d4;--timeline-handle-bg: #1e293b;--timeline-handle-mid: #475569;--timeline-handle-end: #334155;--timeline-caption-text: rgba(31, 32, 48, .68)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{margin:0;display:flex;flex-direction:column;font-family:var(--font-base);background:var(--color-bg);color:var(--color-text)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .15s ease}button:hover:not(:disabled):not(.no-hover-effect){background:var(--color-navicon-hover);color:var(--color-accent);box-shadow:0 2px 8px #5a8bff2e}button:focus-visible:not(:disabled){outline:none;box-shadow:0 0 0 2px #5a8bff61}@media(hover:hover)and (pointer:fine){[data-animations=on] button:hover:not(:disabled):not(.no-hover-effect){transform:scale(1.04) translateY(-1px)}[data-animations=on] button:active:not(:disabled){transform:scale(.97)}}[data-animations=off] button:hover,[data-animations=off] button:active{transform:none}input,textarea{font:inherit;color:inherit}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--color-placeholder)}input::placeholder,textarea::placeholder{color:var(--color-placeholder)}.hidden{display:none!important}.card{background:var(--color-panel);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-soft);padding:var(--card-pad)}.sidebar{grid-area:sidebar;background:var(--color-sidebar);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-soft);color:var(--color-text);display:flex;flex-direction:column;padding:var(--sidebar-pad);min-height:0;transition:transform 1.1s cubic-bezier(.4,0,.2,1);z-index:2;position:fixed;left:20px;top:85px;bottom:25px;height:auto;width:var(--sidebar-width);pointer-events:auto;overflow:hidden;transform:translate(0)}.sidebar.collapsed{transform:translate(calc(-100% - 20px));pointer-events:none}.navbar{height:var(--nav-height, 60px);padding:var(--nav-pad, 0 36px);gap:var(--nav-gap, 18px);background:linear-gradient(90deg,var(--color-navbar-bg-start) 80%,var(--color-navbar-bg-end) 100%);border-bottom:1px solid var(--color-border);color:var(--color-text);display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-soft);position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;backface-visibility:hidden;transform:translateZ(0);will-change:transform}body.app-ready .navbar{opacity:1;transform:translateY(0);transition:opacity .5s var(--ease-premium),transform .5s var(--ease-premium)}.navbar-left{display:flex;align-items:center;gap:16px;position:relative}.navbar-center{flex:1 1 auto;min-width:0;order:var(--nav-center-order, 0);width:var(--nav-center-width, auto)}.nav-icon-button{width:42px;height:42px;border-radius:50%;background:var(--color-navicon-bg);display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s,box-shadow .2s;color:var(--color-text);border:none;box-shadow:0 1px 4px #5a8bff1a;position:relative}.nav-icon-button--ghost{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}[data-theme=light] .nav-icon-button--ghost{background:var(--color-panel);border-color:var(--color-border);color:var(--color-text);box-shadow:0 2px 10px #14182e14}[data-theme=light] .nav-icon-button--ghost i{color:var(--color-text)}[data-theme=light] .nav-icon-button--ghost:hover,[data-theme=light] .nav-icon-button--ghost:focus-visible{background:#5a8bff24;border-color:#5a8bff66;color:var(--color-accent)}[data-theme=dark] .nav-icon-button--ghost{background:var(--color-panel);border-color:var(--color-border);color:var(--color-text);box-shadow:0 2px 10px #14182e14}[data-theme=dark] .nav-icon-button--ghost:hover,[data-theme=dark] .nav-icon-button--ghost:focus-visible{background:#5a8bff24;border-color:#5a8bff66;color:var(--color-accent)}.nav-icon-button--accent{background:var(--color-navicon-bg);border:1px solid var(--color-border);color:var(--color-text);box-shadow:0 1px 4px #5a8bff1a;overflow:hidden;transition:background var(--transition),box-shadow var(--transition),transform var(--transition),border-color var(--transition),color var(--transition)}.nav-icon-button--accent i{font-size:1.35rem;position:relative;z-index:1}.nav-icon-button__pulse{position:absolute;inset:6px;border-radius:inherit;background:radial-gradient(circle at 50% 50%,rgba(154,179,255,.55) 0%,rgba(154,179,255,.18) 55%,transparent 72%);opacity:0;transform:scale(.92);transition:opacity .35s ease,transform .45s ease;pointer-events:none;z-index:0;animation:nav-icon-pulse 3.6s ease-in-out infinite}.nav-icon-button.nav-icon-button--accent:hover{background:var(--color-navicon-hover);border-color:#5a8bff73;box-shadow:0 2px 8px #5a8bff2e;color:var(--color-accent);transform:translateY(-1px)}.nav-icon-button.nav-icon-button--accent:focus-visible{background:var(--color-navicon-hover);border-color:#5a8bff73;color:var(--color-accent);transform:translateY(-1px);box-shadow:0 0 0 3px #5a8bff61,0 6px 18px #5a8bff38;outline:none}.nav-icon-button.nav-icon-button--accent:active{transform:translateY(0);box-shadow:0 6px 14px #0000002e}.nav-icon-button--accent[data-connected=true]{background:var(--color-success, #22c55e);border-color:var(--color-success, #22c55e);color:#fff;box-shadow:0 2px 8px #22c55e59}.nav-icon-button--accent[data-connected=true]:hover{background:#16a34a;border-color:#16a34a;color:#fff;box-shadow:0 4px 12px #22c55e73}.nav-icon-button--accent[data-connected=true] .nav-icon-button__pulse{opacity:.75;transform:scale(.92);background:radial-gradient(circle at 50% 50%,rgba(34,197,94,.55) 0%,rgba(34,197,94,.18) 55%,transparent 72%)}.sync-status-badge{position:absolute;top:6px;right:6px;min-width:20px;height:20px;display:none;align-items:center;justify-content:center;padding:0 5px;border-radius:999px;background:linear-gradient(135deg,var(--sync-badge-bg-start) 0%,var(--sync-badge-bg-end) 100%);color:var(--sync-badge-text);font-size:.78rem;font-weight:600;letter-spacing:.02em;box-shadow:0 6px 18px var(--sync-badge-shadow);z-index:2}.nav-icon-button--accent:hover .sync-status-badge,.nav-icon-button--accent:focus-visible .sync-status-badge{box-shadow:0 8px 22px var(--sync-badge-shadow-hover)}.nav-icon-button--accent:active .sync-status-badge{box-shadow:0 5px 14px var(--sync-badge-shadow-active)}.nav-icon-button--accent[data-connected=true]{background:linear-gradient(140deg,#10b98173,#34d39940 38%,#05966961)!important;border-color:#10b98180!important;box-shadow:0 8px 24px #10b98138!important}.nav-icon-button--accent[data-connected=true]:hover,.nav-icon-button--accent[data-connected=true]:focus-visible{background:linear-gradient(140deg,#22c55e9e,#4ade8061 40%,#16a34a99)!important;border-color:#22c55ea6!important;box-shadow:0 12px 32px #10b98152!important}.nav-icon-button--accent[data-connected=true]:active{box-shadow:0 6px 18px #10b9813d!important}.nav-icon-button--accent[data-connected=true] .nav-icon-button__pulse{background:radial-gradient(circle at 50% 50%,rgba(134,239,172,.55) 0%,rgba(134,239,172,.18) 55%,transparent 72%)}.nav-icon-button:hover{background:var(--color-navicon-hover);color:var(--color-accent);box-shadow:0 2px 8px #5a8bff2e}.nav-icon-button:focus-visible{background:var(--color-navicon-hover);color:var(--color-accent);box-shadow:0 0 0 2px #5a8bff61;outline:none}.nav-icon-button--ghost:hover{background:#5a8bff2e;border-color:#5a8bff73;color:var(--color-text-strong)}.nav-icon-button--ghost:focus-visible{background:#5a8bff2e;border-color:#5a8bff73;color:var(--color-text-strong);box-shadow:0 0 0 3px #5a8bff66,0 6px 18px #5a8bff38}@keyframes nav-icon-pulse{0%,to{opacity:.7;transform:scale(.9)}50%{opacity:1;transform:scale(1.03)}}.navbar-search{flex:1 1 auto;display:flex;align-items:center;background:var(--color-input-bg);border-radius:12px;padding:6px 14px;gap:10px;box-shadow:0 1px 4px #5a8bff1a;border:1px solid var(--color-input-border)}.navbar-search i{color:var(--color-muted);font-size:1.1rem}.navbar-search input{flex:1;border:none;background:transparent;outline:none;color:var(--color-text);font-size:1rem;padding:1px 0}.navbar-profile-chip{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--color-profile-chip-bg-start) 60%,var(--color-profile-chip-bg-end) 100%);display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--color-profile-chip-text);box-shadow:0 1px 4px #5a8bff1a;cursor:pointer;transition:box-shadow .2s}.navbar-profile-chip:hover{box-shadow:0 2px 8px #5a8bff2e}.notifications-tooltip{display:none;position:absolute;top:100%;left:50%;transform:translate(-50%,8px);font-size:.85rem;color:var(--color-accent);background:var(--color-tooltip-bg);padding:4px 12px;border-radius:8px;white-space:nowrap;box-shadow:0 2px 8px #5a8bff2e;z-index:10;border:1px solid var(--color-tooltip-border)}#shareBtn{position:relative}.share-coming-soon{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,6px);font-size:.85rem;color:var(--color-accent);background:var(--color-tooltip-bg);padding:6px 12px;border-radius:10px;white-space:nowrap;box-shadow:0 2px 8px #5a8bff2e;z-index:15;border:1px solid var(--color-tooltip-border);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s ease}#shareBtn:hover .share-coming-soon,#shareBtn:focus-visible .share-coming-soon,#shareBtn .share-coming-soon.share-tooltip-visible{opacity:1;visibility:visible;transform:translate(-50%)}#notificationsBtn{position:relative}.notifications-tooltip{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,6px);font-size:.85rem;color:var(--color-accent);background:var(--color-tooltip-bg);padding:6px 12px;border-radius:10px;white-space:nowrap;z-index:1001;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s ease}#notificationsBtn:hover .notifications-tooltip,#notificationsBtn:focus-visible .notifications-tooltip,#notificationsBtn .notifications-tooltip.notifications-tooltip-visible{opacity:1;visibility:visible;transform:translate(-50%)}.navbar-right .profile-menu{position:absolute;top:60px;right:24px;min-width:220px;z-index:10000;background:var(--color-profile-menu);border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated);padding:12px 0;display:flex;flex-direction:column;gap:0;border:1px solid var(--color-profile-menu-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.profile-menu-item{width:100%;text-align:left;padding:12px 24px;color:var(--color-text);background:transparent;display:flex;align-items:center;gap:12px;transition:background var(--transition),color var(--transition)}.profile-menu-item:hover,.profile-menu-item:focus-visible{background:#5a8bff1f;color:var(--color-text-strong);outline:none}.profile-menu-divider{height:1px;background:var(--color-divider);margin:6px 0}.profile-menu-theme{align-items:center}.profile-menu-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:1.05rem;color:var(--color-accent);flex-shrink:0}.profile-menu-label{flex:1;font-weight:500}.profile-menu-value{font-size:.92rem;color:var(--color-muted);font-weight:500;margin-left:auto}.profile-menu-install{color:var(--color-accent)}.profile-menu-install:hover{background:#5a8bff26}.profile-menu-install .profile-menu-icon{color:var(--color-accent)}.profile-menu-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;font-size:.75rem;font-weight:600;color:var(--color-bg);background:var(--color-accent);border-radius:12px;margin-left:auto}.profile-menu-badge:empty{display:none}.profile-menu-badge.badge-zero{background:var(--color-muted);opacity:.6}.fullscreen-btn{width:28px;height:28px;border-radius:6px;background:transparent;border:1px solid var(--color-border);color:var(--color-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s,border-color .15s;flex-shrink:0;margin-left:8px}.fullscreen-btn i{font-size:.85rem}.fullscreen-btn:hover{background:#5a8bff1f;border-color:#5a8bff66;color:var(--color-accent)}.fullscreen-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.fullscreen-btn[aria-pressed=true]{background:#5a8bff2e;border-color:var(--color-accent);color:var(--color-accent)}[data-theme=light] .fullscreen-btn{background:#fff9;border-color:var(--color-border);color:var(--color-muted)}[data-theme=light] .fullscreen-btn:hover{background:#5a8bff1a;border-color:#5a8bff59;color:var(--color-accent)}.invitations-quota{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#5a8bff14;border-radius:var(--radius-md);margin-bottom:16px}.quota-label{color:var(--color-muted);font-size:.9rem}.quota-value{font-size:1.25rem;font-weight:600;color:var(--color-accent)}.quota-value.quota-zero{color:var(--color-danger)}.invite-form{margin-bottom:16px}.invite-form-row{display:flex;gap:12px}.invite-form-row input{flex:1}.invite-form-row button{flex-shrink:0;display:flex;align-items:center;gap:6px}.invitations-divider{height:1px;background:var(--color-divider);margin:20px 0}.invites-list-header{margin-bottom:12px}.invites-list-header h4{margin:0;font-size:.9rem;font-weight:600;color:var(--color-text)}.invites-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto}.invites-loading,.invites-empty{text-align:center;padding:24px;color:var(--color-muted)}.invites-empty i{font-size:2rem;display:block;margin-bottom:8px;opacity:.5}.invite-item{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff08;border:1px solid var(--color-border);border-radius:var(--radius-md);transition:background var(--transition)}.invite-item:hover{background:#ffffff0d}.invite-item-info{flex:1;min-width:0}.invite-item-email{font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invite-item-meta{font-size:.8rem;color:var(--color-muted);margin-top:2px}.invite-item-status{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:500;border-radius:12px;text-transform:capitalize}.invite-item-status.status-pending{background:#5a8bff26;color:var(--color-accent)}.invite-item-status.status-used{background:#6bd6b026;color:var(--color-success)}.invite-item-status.status-expired{background:#ffa50026;color:orange}.invite-item-status.status-revoked{background:#ff646426;color:var(--color-danger)}.invite-item-actions{display:flex;gap:4px}.invite-item-actions button{padding:6px 8px;font-size:.8rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;transition:all var(--transition)}.invite-item-actions button:hover{background:#5a8bff1a;border-color:var(--color-accent);color:var(--color-accent)}.invite-item-actions button.btn-revoke:hover{background:#ff64641a;border-color:var(--color-danger);color:var(--color-danger)}[data-theme=light] .invite-item{background:#00000005}[data-theme=light] .invite-item:hover{background:#0000000a}.profile-menu-with-submenu{position:relative;padding:0}.profile-menu-with-submenu>button{width:100%;text-align:left;padding:12px 24px;color:var(--color-text);background:transparent;border:none;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background var(--transition),color var(--transition)}.profile-menu-with-submenu>button:hover,.profile-menu-with-submenu>button:focus-visible{background:#5a8bff1f;color:var(--color-text-strong);outline:none}.profile-menu-chevron{margin-left:auto;font-size:.85rem;color:var(--color-muted);transition:transform .2s ease}.profile-menu-with-submenu>button[aria-expanded=true] .profile-menu-chevron{transform:rotate(90deg)}.language-dropdown-wrapper,.help-dropdown-wrapper,.enhanced-mode-dropdown-wrapper{overflow:hidden}.language-dropdown-menu,.help-dropdown-menu,.enhanced-mode-dropdown-menu{background:#00000040;border-radius:8px;margin:4px 8px 8px;padding:4px;border-left:2px solid var(--color-accent-subtle)}.language-dropdown-menu.hidden,.help-dropdown-menu.hidden,.enhanced-mode-dropdown-menu.hidden{display:none}.language-option,.help-option,.enhanced-mode-option{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:transparent;color:var(--color-text);text-align:left;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background var(--transition),color var(--transition)}.language-option:hover,.language-option:focus-visible,.help-option:hover,.help-option:focus-visible,.enhanced-mode-option:hover,.enhanced-mode-option:focus-visible{background:#5a8bff26;color:var(--color-text-strong);outline:none}.enhanced-mode-option-icon{width:18px;text-align:center;color:var(--color-muted);transition:color var(--transition)}.enhanced-mode-option-label{flex:1}.enhanced-mode-option-value{font-size:.8rem;color:var(--color-muted);padding:2px 8px;background:#ffffff14;border-radius:4px;transition:background var(--transition),color var(--transition)}.enhanced-mode-option[aria-pressed=true] .enhanced-mode-option-value{background:var(--color-accent-subtle);color:var(--color-accent)}.enhanced-mode-option[aria-pressed=true] .enhanced-mode-option-icon{color:var(--color-accent)}.language-option.active{background:var(--color-accent-subtle);color:var(--color-accent-strong)}.language-option-label{font-size:.9rem;font-weight:500}.help-option-icon{font-size:.9rem;color:var(--color-text-muted);width:18px;text-align:center}.help-option:hover .help-option-icon{color:var(--color-accent)}.help-option-label{font-size:.9rem;font-weight:500;flex:1}.help-option-value{font-size:.8rem;color:var(--color-text-muted);margin-left:auto}.help-option-toggle{justify-content:space-between}.profile-menu-chevron{font-size:.75rem;color:var(--color-text-muted);transition:transform .2s ease;margin-left:8px}.profile-menu-label+.profile-menu-chevron{margin-left:auto}.profile-menu-item[aria-expanded=true] .profile-menu-chevron{transform:rotate(90deg)}[data-theme=light] .language-dropdown-menu,[data-theme=light] .help-dropdown-menu{background:#0000000f;border-left-color:var(--color-accent)}.profile-menu-danger{color:var(--color-danger)}body:not(.app-ready) .navbar{opacity:0;transform:translateY(-14px);pointer-events:none}body.app-ready .navbar{opacity:1;transform:translateY(0);transition:opacity var(--motion-default) var(--ease-premium),transform var(--motion-default) var(--ease-premium)}body:not(.app-ready) .mode-selector,body:not(.app-ready) .view-switcher-row,body:not(.app-ready) #textWorkspace,body:not(.app-ready) #map2dPanel,body:not(.app-ready) #map3dPanel,body:not(.app-ready) .timeline-slider-container{opacity:0;transform:scale(.96)}body.app-ready .mode-selector,body.app-ready .view-switcher-row,body.app-ready #textWorkspace,body.app-ready #map2dPanel,body.app-ready #map3dPanel,body.app-ready .timeline-slider-container{opacity:1;transform:scale(1);transition:opacity var(--motion-slow) var(--ease-premium),transform var(--motion-slow) var(--ease-premium)}body:not(.app-ready) .sidebar{opacity:0;transform:translate(-28px);pointer-events:none}body.app-ready .sidebar{opacity:1;transform:translate(0);transition:transform var(--panel-motion-duration) var(--panel-motion-ease),opacity var(--motion-default) var(--ease-premium)}body.app-ready .sidebar.collapsed{transform:translate(calc(-100% - 20px));pointer-events:none}.main-layout{--sidebar-width: 320px;--chat-width: clamp(320px, 22vw, 360px);--viewer-min-width: 320px;--layout-gap: 15px;display:grid;grid-template-columns:minmax(400px,1fr) minmax(var(--viewer-min-width),.8fr);grid-template-areas:"editor viewer";grid-template-rows:1fr;margin-top:60px;align-items:stretch;align-content:stretch;gap:var(--layout-gap);padding:24px 28px 20px calc(var(--sidebar-width) + 40px);height:calc(100vh - 60px);box-sizing:border-box;transition:padding .6s var(--panel-motion-ease)}.main-layout.sidebar-collapsed{padding-left:24px}.main-layout.mixx-ai-open{padding-right:calc(var(--chat-width) + 40px)}@media(max-width:1600px){:root{--layout-gap: 12px;--layout-padding: 22px 24px 20px}}@media(max-width:1280px){:root{--sidebar-width: 272px;--viewer-min-width: 280px;--layout-gap: 12px;--layout-padding: 18px 20px 20px;--nav-pad: 0 24px;--nav-gap: 14px;--nav-height: 54px;--modal-max-width: 94vw;--modal-pad: 18px;--modal-radius: 14px;--poi-modal-max-width: 96vw;--poi-modal-pad: 16px 18px 14px}body{font-size:.95rem;line-height:1.42}.nav-icon-button{width:36px;height:36px;padding:0}.nav-icon-button i{font-size:1.1rem}.sidebar{padding:16px 14px 0;top:85px;bottom:25px}.editor-column{gap:12px}.editor-header{padding:10px 14px;gap:10px}.card h2{font-size:1.2rem}.card h3{font-size:1.05rem}.workspace-panel.center-active{min-height:460px}.panel-header{padding:6px 14px;font-size:.95rem}.map-panel .panel-header{padding:6px 12px}.panel-header .panel-subtitle,.panel-header .panel-badge{font-size:.85rem}.panel-header .panel-controls{gap:6px}.map-nav-btn,.panel-lock-btn{width:34px;height:34px}.view-switcher-row{gap:4px}.view-switcher-row button{min-width:38px;padding:6px 9px;font-size:.85rem}.map-toolbar{gap:8px}.map-tool-btn{width:34px;height:34px;font-size:.85rem}.icon-btn{width:34px;height:34px}.timeline-slider-container{padding:10px 14px}.timeline-slider-label{font-size:.8rem}.timeline-slider-value-chip{font-size:.82rem}.modal-content--compact{--modal-pad: 14px 16px}.modal-content--large{--modal-max-width: 560px;--modal-width: min(560px, 96vw);--modal-pad: 18px 20px}.poi-field,.poi-field--wide,.data-section,.media-dropzone,.sidebar-search,.sidebar-actions{padding:10px 12px;gap:10px}.sidebar-search{gap:8px}.media-dropzone-icon{width:42px;height:42px;font-size:1.2rem}.media-dropzone{gap:12px}.media-dropzone-actions{gap:6px}.media-upload-btn,.media-url-btn{padding:7px 12px;font-size:.88rem}.media-grid{gap:10px}.poi-field label,.data-label{font-size:.85rem}.poi-field input,.poi-field textarea,.poi-field select,.data-input,.data-json-preview,.sidebar-search input,.card input,.card textarea,.card select{font-size:.9rem;padding:8px 10px}.poi-actions{--poi-gap: 8px}.poi-actions .btn,.poi-actions button{padding:8px 14px;font-size:.9rem}.poi-list-item{padding:8px 12px;font-size:.85rem}.poi-list-item .poi-badge,.poi-list-item .poi-coords{font-size:.78rem}}.sidebar-search{display:flex;align-items:center;gap:10px;border-radius:var(--radius-md);padding:10px 14px;margin-bottom:18px}.sidebar-search i{color:var(--color-muted)}.sidebar-search input{flex:1;border:1px solid var(--color-input-border);background:var(--color-input-bg);outline:none;color:var(--color-text);border-radius:var(--radius-md);padding:6px 10px;transition:border-color var(--transition),box-shadow var(--transition)}.poi-filter-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.poi-filter-bar .sidebar-search{flex:1 1 260px;margin:0;padding:10px 12px}.poi-filter-select select{min-width:190px;width:210px}.poi-filter-meta{margin-left:auto;color:var(--color-muted);font-size:.92rem}@media(max-width:720px){.sync-hero{grid-template-columns:1fr;flex-direction:column;align-items:flex-start;gap:12px}.sync-status-row{grid-template-columns:1fr}.sync-quick-actions{align-items:flex-start;text-align:left}.poi-filter-bar .sidebar-search,.poi-filter-select select{flex:1 1 100%;width:100%}.poi-filter-meta{margin-left:0}}.initial-scene-section{background:var(--color-panel);border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);padding:8px 10px;margin-bottom:10px;display:flex;flex-direction:column;gap:6px}.scene-setting-row{display:flex;align-items:center;gap:8px}.scene-setting-label{display:flex;align-items:center;gap:5px;font-size:.7rem;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;flex-shrink:0;min-width:68px}.scene-setting-label i{font-size:.8rem;color:var(--color-accent)}.scene-setting-controls{display:flex;gap:4px;align-items:center;flex:1;min-width:0}.scene-input-wrapper{position:relative;flex:1;min-width:0}.scene-input-wrapper--with-icon i{position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:.7rem;color:var(--color-muted);pointer-events:none}.scene-input{width:100%;padding:5px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm, 4px);background:var(--color-bg);color:var(--color-text);font-size:.75rem;transition:border-color var(--transition),box-shadow var(--transition)}.scene-input-wrapper--with-icon .scene-input{padding-left:24px}.scene-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-soft, rgba(59, 130, 246, .12))}.scene-input::-moz-placeholder{color:var(--color-muted);font-size:.7rem}.scene-input::placeholder{color:var(--color-muted);font-size:.7rem}.scene-action-btn{width:26px;height:26px;border-radius:var(--radius-sm, 4px);background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;font-size:.75rem;transition:all var(--transition)}.scene-action-btn:hover:not(:disabled){background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent)}.scene-action-btn:disabled{opacity:.4;cursor:not-allowed}.scene-action-btn--primary:not(:disabled){background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent)}.scene-clear-btn{width:26px;height:26px;border-radius:var(--radius-sm, 4px);background:transparent;border:1px solid var(--color-border);color:var(--color-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;font-size:.65rem;transition:all var(--transition)}.scene-clear-btn:hover{background:var(--color-danger-soft, rgba(239, 68, 68, .1));border-color:var(--color-danger, #ef4444);color:var(--color-danger, #ef4444)}.scene-capture-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:var(--color-accent);border:none;border-radius:var(--radius-sm, 4px);color:#fff;font-size:.7rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background var(--transition)}.scene-capture-btn:hover{background:var(--color-accent-hover, #2563eb)}.scene-capture-btn i{font-size:.75rem}.scene-preview-inline{display:flex;align-items:center;gap:5px;padding:4px 8px;background:var(--color-success-soft, rgba(34, 197, 94, .12));border-radius:var(--radius-sm, 4px);flex:1}.scene-preview-inline.hidden{display:none}.scene-preview-inline>i{color:var(--color-success, #22c55e);font-size:.75rem}.scene-preview-inline .scene-preview-text{font-size:.7rem;font-weight:500;color:var(--color-success, #22c55e)}.start-poi-dropdown{position:absolute;top:100%;left:0;right:0;max-height:160px;overflow-y:auto;background:var(--color-panel);border:1px solid var(--color-border);border-radius:var(--radius-sm, 6px);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0,0,0,.15));z-index:100;margin-top:2px}.start-poi-dropdown.hidden{display:none}.start-poi-dropdown-item{padding:6px 10px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--color-text);transition:background var(--transition)}.start-poi-dropdown-item:hover,.start-poi-dropdown-item:focus{background:var(--interactive-bg-hover)}.start-poi-dropdown-item.selected{background:var(--interactive-bg-active);color:var(--color-text-strong)}.start-poi-dropdown-item .poi-name{flex:1}.start-poi-dropdown-item .poi-category{font-size:.65rem;color:var(--color-muted);background:var(--color-bg);padding:1px 5px;border-radius:3px}.start-poi-dropdown-empty{padding:10px;text-align:center;color:var(--color-muted);font-size:.75rem}.poi-management-section{margin-bottom:12px}.poi-management-section .section-title{font-size:.95rem;font-weight:600;color:var(--color-text);margin:0}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.badge i{font-size:.65rem}.badge--start{background:var(--color-accent-soft, rgba(59, 130, 246, .15));color:var(--color-accent)}.badge.hidden{display:none}.poi-list-item.is-start{border-color:var(--color-accent-soft, rgba(59, 130, 246, .3))}.poi-list-item.is-start:not(.active){background:var(--color-accent-soft, rgba(59, 130, 246, .05))}.poi-list-item .poi-start-badge{margin-left:auto;cursor:help}#poi-modal .modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px}#poi-modal .modal-header-left{display:flex;align-items:center;gap:8px}.poi-start-scene-toggle{display:flex;align-items:center;gap:6px;padding:4px 10px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md, 6px);cursor:pointer;transition:background var(--transition),border-color var(--transition);font-size:.8rem}.poi-start-scene-toggle:hover{background:var(--interactive-bg-hover);border-color:var(--interactive-border-hover)}.poi-start-scene-toggle:has(.poi-start-scene-checkbox:checked){background:var(--color-accent-soft, rgba(59, 130, 246, .15));border-color:var(--color-accent)}.poi-start-scene-checkbox{width:14px;height:14px;accent-color:var(--color-accent);cursor:pointer;margin:0}.poi-start-scene-label{display:flex;align-items:center;gap:4px;font-size:.8rem;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.poi-start-scene-toggle:has(.poi-start-scene-checkbox:checked) .poi-start-scene-label{color:var(--color-accent)}.poi-start-scene-label i{font-size:.75rem;color:var(--color-accent)}#start-poi-confirm-modal .modal-content--compact{max-width:400px}#start-poi-confirm-modal .modal-header{display:flex;align-items:center;gap:8px;color:var(--color-accent)}#start-poi-confirm-modal .modal-body p{color:var(--color-text-secondary);line-height:1.5}#start-poi-confirm-modal .current-start-poi,#start-poi-confirm-modal .new-start-poi{font-weight:600;color:var(--color-text)}#start-poi-confirm-modal .modal-footer{display:flex;gap:10px;justify-content:flex-end}.sidebar-actions{display:flex;justify-content:space-evenly;align-items:center;width:100%;margin-bottom:18px}.icon-btn{width:38px;height:38px;border-radius:6px;background:var(--interactive-bg);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--interactive-border);color:var(--color-text-secondary);transition:background var(--transition),color var(--transition),border var(--transition),box-shadow var(--transition)}.icon-btn:hover,.icon-btn:focus{background:var(--interactive-bg-hover);color:var(--color-text);border-color:var(--interactive-border-hover);box-shadow:var(--shadow-hover)}.sidebar-content{flex:1;min-height:0;overflow-y:hidden;padding:8px 0;box-sizing:border-box;display:flex;flex-direction:column}.projects-list li{padding:8px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-panel);display:flex;justify-content:space-between;align-items:center;font-size:.92rem;color:var(--color-text);cursor:pointer;transition:background var(--transition),color var(--transition),box-shadow var(--transition)}.project-item.selected{background:var(--interactive-bg-active);color:var(--color-text);border-color:var(--interactive-border-active);box-shadow:var(--shadow-selected);transform:translateY(-2px)}.project-item.selected .project-title,.project-item.selected .project-meta-item,.project-item.selected .project-pois,.project-item.selected .project-tags{color:var(--color-text-strong)}.project-item.selected .project-status{background:var(--interactive-bg);color:var(--color-text);border:1px solid var(--interactive-border)}.projects-list li:hover,.projects-list li:focus{background:var(--interactive-bg-hover);color:var(--color-text);outline:none}.subtabs{display:flex;gap:10px;margin-bottom:16px;padding:0 5px;font-size:1rem}.data-inner-tabs{display:flex;gap:6px;margin-top:0;margin-bottom:12px;padding:8px 10px 0;flex-wrap:wrap;flex-shrink:0}.data-inner-panels{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.data-inner-panel{display:flex;flex-direction:column;gap:14px;min-height:0;overflow-x:hidden;padding-bottom:12px}.data-primary-tabs{display:flex;gap:2px;margin-bottom:8px;padding:3px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px}.data-primary-tab-btn{flex:1;padding:6px 12px;border-radius:6px;height:30px;min-height:30px;border:none;background:transparent;color:var(--color-text-secondary);transition:background var(--transition),color var(--transition),box-shadow var(--transition);display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;font-weight:500;cursor:pointer;white-space:nowrap;font-size:.8rem}.data-primary-tab-btn:hover:not(.disabled),.data-primary-tab-btn:focus:not(.disabled){background:var(--interactive-bg-hover);color:var(--color-text)}.data-primary-tab-btn.active{background:var(--color-accent);color:#fff;box-shadow:0 1px 3px #00000026}.data-primary-tab-btn.disabled{opacity:.4;cursor:not-allowed;color:var(--color-muted);background:transparent}#subtab-data .subtab-body{display:flex;flex-direction:column;overflow-y:hidden;overflow-x:hidden}.data-primary-tabs{flex-shrink:0}.data-primary-panels,.data-primary-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}#subtab-data .data-form{display:flex;flex-direction:column;flex:1;min-height:0;gap:0;overflow:hidden}.data-primary-panel.hidden{display:none}.data-inner-panels--fixed,.data-inner-panels--fixed .data-inner-panel{overflow:visible;max-height:none}.data-inner-panels--fixed #data-panel-import,.data-inner-panels--fixed #data-panel-preview{overflow-y:auto;max-height:calc(100vh - 280px);flex:1;padding-bottom:16px}.live-layers-container{display:flex;flex-direction:column;gap:20px;padding:8px 0;overflow-y:auto;max-height:calc(100vh - 300px);scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb, #555) var(--scrollbar-track, transparent)}.live-layers-container::-webkit-scrollbar{width:6px}.live-layers-container::-webkit-scrollbar-track{background:transparent}.live-layers-container::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #555);border-radius:3px}.live-layers-container::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, #777)}.live-layer-category{background:var(--color-panel);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.live-layer-category-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--interactive-bg);border-bottom:1px solid var(--color-border);font-weight:600;color:var(--color-text-strong)}.live-layer-category-header i{font-size:1.1rem;color:var(--color-accent)}.live-layer-category-title{font-size:.95rem}.live-layer-options{display:flex;flex-direction:column;padding:8px 0}.live-layer-toggle{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;transition:background var(--transition);position:relative}.live-layer-toggle:hover:not(.disabled){background:var(--interactive-bg-hover)}.live-layer-toggle.disabled{cursor:not-allowed;opacity:.6}.live-layer-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.live-layer-toggle-slider{position:relative;width:40px;height:22px;background:var(--color-border);border-radius:22px;transition:background var(--transition);flex-shrink:0}.live-layer-toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:2px;top:2px;background:#fff;border-radius:50%;transition:transform var(--transition);box-shadow:0 1px 3px #0003}.live-layer-toggle input:checked+.live-layer-toggle-slider{background:var(--color-accent)}.live-layer-toggle input:checked+.live-layer-toggle-slider:before{transform:translate(18px)}.live-layer-toggle input:focus-visible+.live-layer-toggle-slider{outline:2px solid var(--color-accent);outline-offset:2px}.live-layer-toggle input:disabled+.live-layer-toggle-slider{background:var(--color-border);opacity:.5}.live-layer-label{font-size:.95rem;color:var(--color-text);flex:1}.live-layer-unavailable{font-size:.8rem;color:var(--color-muted);background:var(--interactive-bg);padding:2px 8px;border-radius:4px;margin-left:auto}.live-layers-status{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--interactive-bg);border-radius:var(--radius-md);margin-top:8px}.live-layers-count{font-size:.9rem;color:var(--color-text-secondary)}.live-layers-refresh-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-panel);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.85rem;cursor:pointer;transition:all var(--transition)}.live-layers-refresh-btn:hover{background:var(--interactive-bg-hover);border-color:var(--interactive-border-hover)}.weather-status-strip{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:linear-gradient(135deg,#3c8cc826,#1e64a026);border:1px solid rgba(60,140,200,.3);border-radius:var(--radius-md);margin-bottom:12px;gap:8px}.weather-status-strip.hidden{display:none}.weather-status-item{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--color-text)}.weather-status-item i{font-size:1rem;color:var(--color-primary)}.weather-status-item span{font-weight:500;font-variant-numeric:tabular-nums}.weather-status-alerts{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--radius-sm);background:#64646433;font-size:.8rem;color:var(--color-muted)}.weather-status-alerts.has-alerts{background:#dc354526;color:#dc3545}.weather-status-alerts.has-alerts i{color:#dc3545}.weather-status-alerts i{font-size:.9rem}.weather-hud-overlay{position:absolute;top:56px;right:12px;z-index:100;background:#14191ed9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:12px 16px;min-width:140px;box-shadow:0 4px 16px #0000004d}.weather-hud-overlay.hidden{display:none}.weather-hud-dismiss{position:absolute;top:6px;right:6px;width:20px;height:20px;padding:0;border:none;background:#ffffff1a;border-radius:50%;color:var(--color-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:all var(--transition)}.weather-hud-dismiss:hover{background:#fff3;color:var(--color-text)}.weather-hud-content{display:flex;flex-direction:column;gap:4px;padding-right:16px}.weather-hud-temp{font-size:1.75rem;font-weight:600;color:var(--color-text);line-height:1.1}.weather-hud-conditions{font-size:.9rem;color:var(--color-muted)}.weather-hud-timeofday{font-size:.8rem;color:var(--color-muted);margin-top:4px}.live-layer-toggle.loading .live-layer-toggle-slider:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:12px;height:12px;border:2px solid transparent;border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.connect-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--color-muted)}.connect-placeholder i{font-size:3rem;margin-bottom:16px;opacity:.5}.connect-placeholder p{font-size:.95rem;margin-bottom:8px}.connect-placeholder small{font-size:.85rem;opacity:.8}.media-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-bottom:8px}.media-gallery-card{border:1px solid var(--color-border);border-radius:10px;padding:8px;background:var(--color-panel);display:flex;flex-direction:column;gap:8px;align-items:center;min-height:110px;position:relative}.media-gallery-thumb{width:100%;height:60px;border-radius:6px;background:var(--color-input-bg);display:flex;align-items:center;justify-content:center;overflow:hidden}.media-gallery-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.media-gallery-meta-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.media-gallery-count{font-size:.9rem;color:var(--color-text-muted)}#subtab-media .subtab-body{display:flex;flex-direction:column;overflow-y:hidden;overflow-x:hidden}#subtab-media .media-form{display:flex;flex-direction:column;flex:1;min-height:0;gap:0}.media-inner-tabs{display:flex;gap:10px;margin-bottom:16px;padding:6px 5px 0;flex-wrap:wrap;flex-shrink:0}.media-inner-panels{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow-y:auto}.media-inner-panel{display:flex;flex-direction:column;gap:12px;min-height:0}#sidebar-current .subtab-panels{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:none;border:none}#sidebar-current .subtab-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:none;border:none;border-radius:0;margin:0}#sidebar-current .subtab-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:18px;box-sizing:border-box}#sidebar-current .subtab-body input[type=text],#sidebar-current .subtab-body input[type=url],#sidebar-current .subtab-body input[type=email],#sidebar-current .subtab-body input[type=number],#sidebar-current .subtab-body textarea,#sidebar-current .subtab-body select{max-width:100%;box-sizing:border-box}#subtab-poi .subtab-body{display:flex;flex-direction:column;overflow-y:hidden;overflow-x:hidden}#subtab-poi .sidebar-search,#subtab-poi .sidebar-actions{flex-shrink:0}#subtab-poi .poi-list{flex:1 1 auto;min-height:0;overflow-y:auto;max-height:none}#sidebar-current .footer-bar{flex-shrink:0;position:relative;width:100%;margin:auto 0 0;border-radius:0 0 var(--radius-lg) var(--radius-lg);z-index:20}.subtab-btn{flex:1;padding:7px 12px;border-radius:6px;height:32px;min-height:32px;border:1px solid var(--interactive-border);background:var(--interactive-bg);color:var(--color-text-secondary);transition:background var(--transition),color var(--transition),border var(--transition),box-shadow var(--transition);display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.2}.subtab-btn:hover,.subtab-btn:focus{background:var(--interactive-bg-hover);color:var(--color-text);border-color:var(--interactive-border-hover);box-shadow:var(--shadow-hover)}.subtab-btn.active{background:var(--interactive-bg-active);color:var(--color-text);border-color:var(--interactive-border-active);box-shadow:var(--shadow-selected)}[data-animations=on] .subtabs .subtab-btn{transform:scale(.9);transform-origin:center center;transition:transform .18s cubic-bezier(.25,.1,.25,1),background var(--transition),color var(--transition),border var(--transition),box-shadow var(--transition)}@media(hover:hover)and (pointer:fine){[data-animations=on] .subtabs .subtab-btn:hover{transform:scale(1)}}[data-animations=on] .subtabs .subtab-btn:focus-visible{transform:scale(1)}[data-animations=on] .subtabs .subtab-btn.active{transform:scale(1.05)}@media(hover:hover)and (pointer:fine){[data-animations=on] .subtabs .subtab-btn.active:hover{transform:scale(1.08)}}[data-animations=off] .subtabs .subtab-btn{transform:none}@media(hover:none)and (pointer:coarse){[data-animations=on] .subtabs .subtab-btn,[data-animations=off] .subtabs .subtab-btn{transform:none}}@media(prefers-reduced-motion:reduce){.subtabs .subtab-btn{transform:none!important;transition:background var(--transition),color var(--transition),border var(--transition),box-shadow var(--transition)!important}}@media(hover:hover)and (pointer:fine){[data-animations=on] .nav-icon-button:hover{transform:scale(1.08) translateY(-1px)}[data-animations=on] .nav-icon-button:active{transform:scale(.96)}}[data-animations=off] .nav-icon-button:hover,[data-animations=off] .nav-icon-button:active{transform:none}@media(hover:hover)and (pointer:fine){[data-animations=on] .sidebar-actions .icon-btn:hover{transform:scale(1.1) translateY(-2px)}[data-animations=on] .sidebar-actions .icon-btn:active{transform:scale(.95)}}[data-animations=off] .sidebar-actions .icon-btn:hover,[data-animations=off] .sidebar-actions .icon-btn:active{transform:none}@keyframes mixxAiGlow{0%,to{box-shadow:0 0 #3b82f600,0 0 20px #3b82f64d,0 8px 25px #0000004d}50%{box-shadow:0 0 0 8px #3b82f626,0 0 30px #8b5cf680,0 12px 35px #0006}}@keyframes mixxAiShimmer{0%{background-position:-100% 0}to{background-position:200% 0}}@keyframes mixxAiBreathing{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.02);filter:brightness(1.1)}}.mode-selector .ai-btn{position:relative;transition:transform .3s cubic-bezier(.34,1.56,.64,1),filter .3s ease}@media(hover:hover)and (pointer:fine){[data-animations=on] .mode-selector:hover{animation:mixxAiGlow 1.5s ease-in-out infinite;border-radius:50%}[data-animations=on] .mode-selector:hover .ai-btn{transform:scale(1.12) translateY(-3px);filter:brightness(1.15) saturate(1.1)}[data-animations=on] .mode-selector:after{content:"";position:absolute;inset:0;border-radius:50%;background:linear-gradient(120deg,transparent 0%,transparent 40%,rgba(255,255,255,.4) 50%,transparent 60%,transparent 100%);background-size:200% 100%;opacity:0;pointer-events:none;transition:opacity .3s ease}[data-animations=on] .mode-selector:hover:after{opacity:1;animation:mixxAiShimmer 1.2s ease-in-out infinite}[data-animations=on] .mode-selector:active .ai-btn{transform:scale(.95);filter:brightness(1.3) saturate(1.2)}}[data-animations=on] .mode-selector[aria-pressed=true] .ai-btn{animation:mixxAiBreathing 3s ease-in-out infinite}[data-animations=off] .mode-selector:hover .ai-btn,[data-animations=off] .mode-selector:active .ai-btn{transform:none;filter:brightness(1.05)}[data-animations=off] .mode-selector:after{display:none}@media(hover:hover)and (pointer:fine){[data-animations=on] .project-item:hover{transform:translate(4px)}}[data-animations=off] .project-item:hover{transform:none}@media(hover:hover)and (pointer:fine){[data-animations=on] .poi-list-item:hover{transform:translate(4px)}}[data-animations=off] .poi-list-item:hover{transform:none}@keyframes validationShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}[data-animations=on] input:invalid:not(:-moz-placeholder).touched{animation:validationShake .4s ease-out;border-color:var(--color-danger, #ef4444)!important;box-shadow:0 0 0 2px #ef444433!important}[data-animations=on] .input-error,[data-animations=on] input:invalid:not(:placeholder-shown).touched{animation:validationShake .4s ease-out;border-color:var(--color-danger, #ef4444)!important;box-shadow:0 0 0 2px #ef444433!important}[data-animations=off] input:invalid:not(:-moz-placeholder).touched{border-color:var(--color-danger, #ef4444)!important;box-shadow:0 0 0 2px #ef444433!important}[data-animations=off] .input-error,[data-animations=off] input:invalid:not(:placeholder-shown).touched{border-color:var(--color-danger, #ef4444)!important;box-shadow:0 0 0 2px #ef444433!important}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center;color:var(--color-muted)}.empty-state__icon{font-size:2.5rem;margin-bottom:12px;opacity:.5;color:var(--color-accent)}.empty-state__title{font-size:1rem;font-weight:600;margin-bottom:6px;color:var(--color-text)}.empty-state__description{font-size:.875rem;line-height:1.5;max-width:280px}@keyframes emptyStateEntrance{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}[data-animations=on] .empty-state{animation:emptyStateEntrance .3s ease-out}:root{--ease-panel: cubic-bezier(.22, .61, .36, 1);--panel-transition-duration: 1.3s;--panel-perspective: 1000px}[data-animations=on] .editor-column,[data-animations=on] .viewer-column{perspective:var(--panel-perspective);perspective-origin:center center;transform-style:preserve-3d;contain:none!important;transform:none!important;backface-visibility:visible!important;overflow:visible!important}[data-animations=on] .panel-slot{perspective:var(--panel-perspective);perspective-origin:center center;transform-style:preserve-3d;overflow:visible!important}[data-animations=on] .workspace-panel{transform-origin:center center;transform-style:preserve-3d;will-change:transform,opacity,filter;backface-visibility:hidden;--workspace-translate-x: 0px;--workspace-translate-y: 0px;--workspace-translate-z: 0px;--workspace-rotate-x: 0deg;--workspace-rotate-y: 0deg}[data-animations=on] .workspace-panel--preview{opacity:.9;transform:scale(.95) translateZ(-50px);filter:brightness(.92);z-index:1}[data-animations=on] .workspace-panel--active{opacity:1;transform:scale(1) translateZ(0);filter:brightness(1);box-shadow:0 20px 60px #00000040,0 8px 25px #00000026;z-index:10}[data-animations=on] .workspace-panel{transition:transform var(--panel-transition-duration) var(--ease-panel),opacity var(--panel-transition-duration) var(--ease-panel),filter var(--panel-transition-duration) var(--ease-panel)}[data-animations=on] .workspace-panel.vw-start-small{transform:scale(.88) translateZ(-70px)!important;opacity:.7!important;filter:brightness(.85)!important;transition:none!important}[data-animations=on] .workspace-panel.vw-exiting{transition:transform 1.5s var(--ease-panel),opacity 1.5s var(--ease-panel),filter 1.5s var(--ease-panel)!important}[data-animations=on] .workspace-panel.vw-start-preview{transform:scale(.95) translateZ(-50px)!important;opacity:.9!important;filter:brightness(.92)!important;transition:none!important}[data-animations=on] .workspace-panel.vw-entering{transition:transform 1s var(--ease-panel),opacity 1s var(--ease-panel),filter 1s var(--ease-panel)!important}@media(hover:hover)and (pointer:fine){[data-animations=on] .workspace-panel--preview:hover{opacity:1;transform:scale(.97) translateZ(-30px);filter:brightness(1);box-shadow:0 15px 45px #0003;transition:all .2s var(--ease-panel);z-index:2}}[data-animations=off] .workspace-panel,[data-animations=off] .workspace-panel--preview,[data-animations=off] .workspace-panel--active{opacity:1;transform:none;transition:none;animation:none;filter:none;box-shadow:none}@media(prefers-reduced-motion:reduce){.workspace-panel,.workspace-panel--preview,.workspace-panel--active{transition:opacity .15s ease!important;animation:none!important;transform:none!important;filter:none!important}}@media(hover:hover)and (pointer:fine){[data-animations=on] .btn:active,[data-animations=on] .btn-primary:active,[data-animations=on] .btn-secondary:active{transform:scale(.97)}}[data-animations=off] .btn:active,[data-animations=off] .btn-primary:active,[data-animations=off] .btn-secondary:active{transform:none}@keyframes modalEntranceSubtle{0%{opacity:0;transform:scale(.96) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}[data-animations=on] .modal:not(.hidden) .modal-content{animation:modalEntranceSubtle .2s ease-out}[data-animations=off] .modal .modal-content{animation:none}@media(hover:hover)and (pointer:fine){[data-animations=on] .text-chip:hover{transform:translateY(-1px)}[data-animations=on] .text-chip:active{transform:translateY(0) scale(.98)}}[data-animations=off] .text-chip:hover,[data-animations=off] .text-chip:active{transform:none}.data-inner-tab-btn,.media-inner-tab-btn{flex:0 0 auto;padding:4px 14px;border-radius:14px;height:28px;min-height:28px;border:none;background:transparent;color:var(--color-text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;transition:background var(--transition),color var(--transition)}.data-inner-tab-btn:hover,.data-inner-tab-btn:focus,.media-inner-tab-btn:hover,.media-inner-tab-btn:focus{background:var(--interactive-bg-hover);color:var(--color-text)}.data-inner-tab-btn.active,.media-inner-tab-btn.active{background:var(--interactive-bg-active);color:var(--color-text);box-shadow:inset 0 0 0 1px var(--color-border)}.editor-column{grid-area:editor;display:flex;flex-direction:column;gap:18px;min-height:0;height:100%;contain:layout style;transform:translateZ(0);backface-visibility:hidden;transition:width var(--panel-motion-duration) var(--panel-motion-ease);will-change:width;position:relative;z-index:3}.editor-header{display:flex;align-items:center;justify-content:space-between}.mode-selector{width:44px;height:44px;border-radius:50%;background:var(--color-panel);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);color:var(--color-text);position:relative;overflow:visible;transition:box-shadow .3s ease,background .25s ease,border-color .25s ease,transform .3s cubic-bezier(.34,1.56,.64,1);transform-origin:center center;z-index:10}.mode-selector.ai-dormant,.mode-selector:not(.ai-listening):not(.ai-thinking):not(.ai-speaking):not(.ai-error){box-shadow:0 0 8px #ffffff26,0 4px 12px #ffffff1a;animation:modeSelectorBreathing 3s ease-in-out infinite}@keyframes modeSelectorBreathing{0%,to{box-shadow:0 0 8px #ffffff26,0 4px 12px #ffffff1a}50%{box-shadow:0 0 12px #ffffff40,0 6px 16px #ffffff26}}.mode-selector .ai-btn{width:48px;height:48px;-o-object-fit:contain;object-fit:contain;display:block}.mode-selector.ai-active{box-shadow:var(--shadow-glow);background:var(--interactive-bg-active);border-color:var(--interactive-border-active)}.mode-selector.ai-active:before,.mode-selector.ai-active:after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;border-radius:50%;border:2px solid var(--interactive-border-active);transform:translate(-50%,-50%) scale(1);opacity:0;pointer-events:none}.mode-selector.ai-active:before{animation:aiButtonPulse 1.6s ease-out infinite}.mode-selector.ai-active:after{animation:aiButtonPulse 1.6s ease-out infinite;animation-delay:.45s}.ai-pulse-dot{width:12px;height:12px;border-radius:50%;background:var(--color-accent);display:inline-flex;margin-right:10px;position:relative;box-shadow:var(--shadow-glow)}.ai-pulse-dot:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(90,139,255,.55);opacity:0;animation:aiPulseDot 1.6s ease-out infinite}.view-switcher-row{display:inline-flex;align-items:center;gap:8px;background:var(--color-panel);border-radius:999px;padding:6px;border:1px solid var(--color-border);justify-content:center}.view-switcher-row button{min-width:46px;padding:6px 12px;border-radius:999px;background:transparent;color:var(--color-text-secondary);font-weight:500;transition:background var(--transition),color var(--transition),border var(--transition)}.view-switcher-row button.active{background:var(--interactive-bg-active);color:var(--color-text);border:1px solid var(--interactive-border-active)}.timeline-header{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:.95rem}.timeline-caption{margin:0;font-size:.9rem;color:var(--timeline-caption-text)}.panel-slot{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:18px}.viewer-column{grid-area:viewer;display:flex;flex-direction:column;min-height:0;height:100%;gap:18px;contain:layout style;transform:translateZ(0);backface-visibility:hidden;transition:width var(--panel-motion-duration) var(--panel-motion-ease);will-change:width}.panel-slot--viewer{flex:1 1 50%;min-height:0;display:flex;flex-direction:column;gap:0;height:auto;transform-style:preserve-3d;perspective:inherit;position:relative;pointer-events:none}.panel-slot--viewer>*{pointer-events:auto}.panel-slot--viewer>.workspace-panel{flex:1;min-height:0}.panel-slot--editor>.workspace-panel{flex:1;min-height:0;display:flex;flex-direction:column}.panel-slot--editor{transform-style:preserve-3d;perspective:inherit;position:relative}.workspace-panel{display:flex;flex-direction:column;gap:14px;position:relative;transform-style:preserve-3d;backface-visibility:hidden;--workspace-translate-x: 0px;--workspace-translate-y: 0px;--workspace-translate-z: 0px;--workspace-rotate-x: 0deg;--workspace-rotate-y: 0deg;transform:translate3d(var(--workspace-translate-x),0,var(--workspace-translate-z)) rotateX(var(--workspace-rotate-x)) rotateY(var(--workspace-rotate-y));transition:transform var(--panel-motion-duration) var(--panel-motion-ease),filter var(--panel-motion-duration) var(--panel-motion-ease),opacity var(--panel-motion-duration) var(--panel-motion-ease),box-shadow var(--panel-motion-duration) var(--panel-motion-ease);will-change:transform,filter,opacity;pointer-events:auto}[data-animations=off] .workspace-panel--active,:not([data-animations]) .workspace-panel--active{transform:none;opacity:1}[data-animations=off] .workspace-panel--preview,:not([data-animations]) .workspace-panel--preview{transform:none;opacity:1}[data-animations=off] .workspace-panel--preview-top,:not([data-animations]) .workspace-panel--preview-top{transform:none}[data-animations=off] .workspace-panel--preview-bottom,:not([data-animations]) .workspace-panel--preview-bottom{transform:none}@media(prefers-reduced-motion:reduce){:root{--layout-perspective: none}.workspace-panel{transition:none!important;--workspace-translate-x: 0px !important;--workspace-translate-y: 0px !important;--workspace-translate-z: 0px !important;--workspace-rotate-x: 0deg !important;--workspace-rotate-y: 0deg !important;transform:none!important;filter:none!important;opacity:1!important}.workspace-panel--active,.workspace-panel--preview,.workspace-panel--preview-top,.workspace-panel--preview-bottom{box-shadow:inherit!important}.mode-selector.ai-active:before,.mode-selector.ai-active:after,.ai-pulse-dot:after{animation:none!important;opacity:0}.attachment-card,.attachment-action-btn,.attachment-overflow-toggle,.attachment-progress-bar,.attachment-thumbnail .progress-spinner{transition:none;animation:none}}.map-panel{position:relative;padding:0;gap:0;overflow:hidden;background:transparent;--map-header-height: 56px;pointer-events:auto}.map-panel .panel-header{position:absolute;top:0;left:0;right:0;padding:10px 18px;border-radius:var(--radius-lg) var(--radius-lg) 12px 12px;background-color:#11111626;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1200;pointer-events:auto}#map3dPanel .panel-header{padding:8px 18px}.map-panel .map-panel-body{background:transparent;border:none;border-radius:0}#map3dPanel{--map-header-height: 48px}.map-panel .map-toolbar{top:calc(8px + var(--map-header-height))}.map-panel .timeline-pill{top:calc(4px + var(--map-header-height))}.panel-header{display:flex;align-items:center;justify-content:space-between}.panel-badge{display:inline-flex;gap:6px;align-items:center;padding:6px 12px;border-radius:10px;background:var(--color-panel);border:1px solid var(--color-border);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:#e7e9eabf}[data-theme=light] .panel-badge{color:var(--color-text-strong)}.panel-lock-btn{width:32px;height:32px;border-radius:10px;background:var(--color-panel);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--interactive-border);transition:background var(--transition),color var(--transition)}.panel-lock-btn:hover{background:var(--interactive-bg-hover);color:var(--color-text)}.layer-selector-wrapper{position:relative;display:inline-flex}.panel-layer-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:10px;background:var(--color-panel);border:1px solid var(--interactive-border);color:var(--color-text);font-size:16px;transition:background var(--transition),color var(--transition);cursor:pointer}.panel-layer-btn:hover{background:var(--interactive-bg-hover)}.panel-layer-btn[aria-expanded=true]{background:var(--interactive-bg-hover);border-color:var(--color-primary)}.layer-label{font-weight:500;white-space:nowrap}.layer-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:220px;background:var(--color-panel);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d;padding:4px;z-index:1000}.layer-dropdown-menu.hidden{display:none}.layer-option{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;color:var(--color-text);text-align:left;border-radius:8px;cursor:pointer;transition:background var(--transition)}.layer-option:hover{background:var(--interactive-bg-hover)}.layer-option.active{background:var(--color-primary-alpha);color:var(--color-primary)}.layer-option i{font-size:18px;margin-top:2px;flex-shrink:0}.layer-option span{font-weight:500;display:block}.layer-option small{display:block;font-size:11px;opacity:.7;margin-top:2px}.text-panel-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.text-author-area{flex:1;min-height:0;padding:16px;border-radius:var(--radius-md);background:var(--color-panel);border:1px solid var(--color-border);color:var(--color-text);overflow-y:auto;line-height:1.6}.text-author-area.readonly{opacity:.7}.map-panel-body{flex:1;min-height:0;position:relative;background:var(--color-panel);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:0;display:flex;overflow:hidden;pointer-events:auto}.map-canvas{flex:1;position:relative;pointer-events:auto}.map-toolbar-shell{display:contents}.map-toolbar{position:absolute;top:16px;left:16px;display:flex;flex-direction:column;gap:8px;z-index:1000;padding:10px;border-radius:12px;border:1px solid #2c3240;background:#151922b8;box-shadow:0 6px 22px #0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}[data-theme=light] .map-toolbar{background:#ffffffb8;border:1px solid #d6d9e0;box-shadow:0 6px 22px #222e5014}.map-toolbar--3d{left:16px;right:auto}.panel-slot--viewer .map-toolbar{display:none}.panel-slot--viewer .map-surface,.panel-slot--viewer .map-canvas,.panel-slot--viewer .map-panel-body{pointer-events:auto!important}.panel-slot--editor .map-toolbar{display:flex}.map-toolbar.legacy-toolbar-hidden{display:none!important}.map-nav-3d{position:absolute;bottom:16px;right:16px;display:none;flex-direction:column;gap:8px;z-index:1005}.map-nav-btn{width:36px;height:36px;border-radius:10px;background:var(--overlay-bg);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;transition:background var(--transition),transform var(--transition)}.map-nav-btn:hover,.map-nav-btn:focus{background:var(--interactive-bg-hover);transform:translateY(-1px)}.panel-slot--viewer.active-on-left:after{content:"Active on left";position:absolute;top:14px;right:18px;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:999px;background:var(--interactive-bg-active);color:var(--color-text-secondary);pointer-events:none}.map-tool-btn{width:38px;height:38px;border-radius:10px;background:#1f2430db;color:#d7deed;border:1px solid #2f3545;display:grid;place-items:center;transition:transform .12s ease,background-color .12s ease,color .12s ease,border-color .12s ease,box-shadow .12s ease;padding:0;cursor:pointer}.map-tool-btn:hover{background:#262c3beb;border-color:#3a4255}.map-tool-btn.active{background:#58a6ff;color:#0d1117;border-color:#3f8ae0}.map-tool-btn:active{transform:scale(.96)}.map-tool-btn:focus-visible{outline:2px solid #58a6ff;outline-offset:2px}[data-theme=light] .map-tool-btn{background:#f6f7fbdb;color:#2a3142;border:1px solid #e4e6ef;box-shadow:inset 0 0 0 1px #ffffff59}[data-theme=light] .map-tool-btn:hover{background:#e9ecf6eb;border-color:#cdd3e3}[data-theme=light] .map-tool-btn.active{background:#2a6df2;color:#fff;border-color:#1f5dda;box-shadow:0 4px 12px #1f29371a}[data-theme=light] .map-tool-btn:focus-visible{outline-color:#2a6df2}.map-surface{width:100%;height:100%;pointer-events:auto!important;position:relative;z-index:1;touch-action:auto!important}#cesiumContainer,#cesiumContainer *,#leafletMap,#leafletMap *{pointer-events:auto!important;touch-action:auto!important}.cesium-viewer,.cesium-viewer-cesiumWidgetContainer,.cesium-widget canvas{pointer-events:auto!important;touch-action:auto!important}.timeline-pill{position:absolute;top:0;left:50%;transform:translate(-50%);background:#181820eb;padding:6px 16px;border-radius:12px;font-size:.85rem;color:var(--color-text);z-index:1300;height:40px;display:flex;align-items:center;box-shadow:0 2px 8px #5a8bff2e}[data-theme=light] .timeline-pill{background:linear-gradient(135deg,#fff,#eef2ff);color:var(--color-text);border:1px solid rgba(48,62,110,.2);box-shadow:0 6px 18px #0f184024}.workspace-panel.center-active{min-height:520px;padding:0}.workspace-panel.center-active .panel-header{position:relative;height:56px;padding:10px 18px;background:#11111626;border-radius:var(--radius-lg) var(--radius-lg) 12px 12px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1200}.workspace-panel.center-active .map-panel-body,.workspace-panel.center-active .text-panel-body{flex:1;min-height:0;background:var(--color-panel);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:0;display:flex;overflow:hidden}@media(max-width:1024px){:root{--nav-pad: 0 20px;--nav-gap: 12px;--layout-gap: 18px;--layout-padding: 18px;--layout-columns: 1fr;--layout-areas: "editor" "viewer";--nav-center-order: 3;--nav-center-width: 100%}.viewer-column,.panel-slot--viewer{gap:18px}}@media(max-width:640px){:root{--nav-pad: 12px 18px;--nav-gap: 12px;--nav-height: auto;--layout-gap: 14px;--layout-padding: 14px;--sidebar-pad: 18px;--card-pad: 16px}}.modal{position:fixed;inset:0;min-height:100vh;padding:clamp(18px,4vh,40px) clamp(12px,4vw,40px);background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;overflow-y:auto}.modal-content{background:var(--modal-bg, var(--surface-elevated));border-radius:var(--modal-radius, var(--radius-lg));box-shadow:var(--modal-shadow, var(--shadow-elevated));padding:var(--modal-pad, 20px 22px);max-width:var(--modal-max-width, 720px);width:var(--modal-width, auto);max-height:var(--modal-max-height, calc(100vh - 120px) );overflow:auto}.modal-content--compact{--modal-pad: 16px 18px;--modal-max-width: 640px}.modal-content--large{--modal-pad: 24px 28px;--modal-max-width: 880px}#poi-modal .modal-content{--modal-max-width: var(--poi-modal-max-width);--modal-pad: var(--poi-modal-pad);--modal-radius: var(--poi-modal-radius, var(--modal-radius, var(--radius-lg)))}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-thumb{background:var(--scroll-thumb, rgba(90, 139, 255, .35));border-radius:999px}.modal-content::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover, rgba(90, 139, 255, .5))}.modal-content::-webkit-scrollbar-track{background:var(--scroll-track, rgba(255, 255, 255, .08))}@media(max-height:820px){.modal{align-items:flex-start;padding-top:clamp(12px,4vh,32px)}}#poi-picker-modal .modal-content,.modal-content--themed{background:linear-gradient(165deg,#18181fb8,#0e0f18ad);border:1.5px solid rgba(118,137,255,.18);box-shadow:0 24px 58px #0c0e2073;width:min(1200px,96vw);padding:14px 16px 12px;align-items:stretch;backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);border-radius:14px;max-height:min(82vh,760px);overflow-y:auto;margin-top:clamp(12px,4vh,28px)}[data-theme=light] #poi-modal .modal-content,[data-theme=light] #poi-picker-modal .modal-content,[data-theme=light] .modal-content--themed{background:linear-gradient(165deg,#ffffffeb,#fafafce0);border:1.5px solid rgba(90,139,255,.22);box-shadow:0 24px 58px #00000014}#profile-settings-modal .modal-content{width:min(520px,94vw);max-height:85vh;overflow:hidden}#profile-settings-modal .modal-content--wide{width:min(520px,94vw)}#profile-settings-modal .modal-body{gap:0;padding:0;align-items:stretch;overflow-y:auto;max-height:calc(85vh - 140px)}#profile-settings-modal .modal-body--tabs{padding:0}.settings-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);background:var(--color-surface);position:sticky;top:0;z-index:1}.settings-tab{flex:1;padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-muted);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.settings-tab:hover{color:var(--color-text);background:var(--color-hover)}.settings-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background:transparent}.settings-tab i{font-size:1rem}.settings-panel{display:none;padding:16px;animation:fadeIn .2s ease}.settings-panel.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}#profile-settings-modal .error-message,#profile-settings-modal .success-message{margin:8px 16px;padding:8px 12px;font-size:.8rem;border-radius:6px}#profile-settings-modal .modal-header{padding:14px 18px;font-size:1.05rem;border-bottom:none}#profile-settings-modal .modal-footer{padding:12px 18px;border-top:1px solid var(--color-border)}#profile-settings-modal .field{margin-bottom:12px}#profile-settings-modal .field label{display:block;margin-bottom:4px;font-size:.8rem;font-weight:500}#profile-settings-modal .form-control{width:100%;padding:8px 10px;font-size:.85rem}#profile-settings-modal .password-section-header{margin:14px 0 10px;padding-top:14px;border-top:1px solid var(--color-border)}#profile-settings-modal .password-section-header h4{font-size:.85rem;font-weight:600;margin:0;color:var(--color-text)}#profile-settings-modal .password-section-header .optional{font-weight:400;color:var(--color-muted);font-size:.75rem}#profile-settings-modal form{width:100%}#profile-settings-modal .danger-zone{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border);width:100%}#profile-settings-modal .danger-zone h4{font-size:.85rem;font-weight:600;margin:0 0 6px;color:#ef4444}#profile-settings-modal .danger-zone p{font-size:.8rem;margin-bottom:10px;line-height:1.4;color:var(--color-muted)}#profile-settings-modal .btn-danger{padding:8px 14px;font-size:.8rem}.preferences-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px 20px;color:var(--color-muted);font-size:.9rem}.preferences-loading .spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preferences-content.hidden{display:none}.preferences-section{margin-bottom:20px}.preferences-section:last-of-type{margin-bottom:16px}.preferences-section h4{font-size:.8rem;font-weight:600;color:var(--color-accent);margin:0 0 10px;display:flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:.03em}.preferences-section h4 i{font-size:.9rem}.preference-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--color-border-light, rgba(255,255,255,.06))}.preference-item:last-child{border-bottom:none}.preference-item label{font-size:.85rem;color:var(--color-text);flex:1}.preference-item .form-select{width:auto;min-width:140px;padding:6px 28px 6px 10px;font-size:.8rem;background-position:right 8px center}.preference-item--toggle{padding:10px 0}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border);transition:.2s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.2s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px var(--color-accent-faded, rgba(90, 139, 255, .3))}.preferences-reset{margin-top:20px;padding-top:16px;border-top:1px solid var(--color-border);text-align:center}.preferences-reset .btn-secondary{font-size:.8rem;padding:8px 16px}.delete-account-modal{max-width:480px;width:90vw}.delete-account-modal .modal-header h3{margin:0 0 4px;font-size:1.25rem;color:var(--color-text)}.delete-account-modal .modal-subtitle{color:var(--color-muted);font-size:.9rem;margin:0;font-weight:400}.delete-choose-options{display:flex;flex-direction:column;gap:12px;width:100%}.delete-choice-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:16px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.delete-choice-btn:hover{background:var(--color-bg-hover);border-color:var(--color-accent)}.delete-choice-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.delete-choice-btn i{font-size:1.5rem;color:var(--color-accent);margin-bottom:4px}.delete-choice-btn span{font-weight:600;color:var(--color-text);font-size:1rem}.delete-choice-btn small{color:var(--color-muted);font-size:.85rem}.delete-choice-btn--danger:hover{border-color:var(--color-danger);background:#ef444414}.delete-choice-btn--danger i{color:var(--color-danger)}.delete-reason-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;width:100%}.delete-reason-chip{padding:8px 16px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:20px;cursor:pointer;transition:all .2s ease;font-size:.9rem;color:var(--color-text)}.delete-reason-chip:hover{background:var(--color-bg-hover);border-color:var(--color-accent)}.delete-reason-chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.delete-reason-chip.selected{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent)}.delete-reason-textarea{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-elevated);color:var(--color-text);font-family:inherit;font-size:.95rem;resize:vertical;min-height:80px}.delete-reason-textarea:focus{border-color:var(--color-accent);outline:none}.delete-reason-textarea::-moz-placeholder{color:var(--color-muted)}.delete-reason-textarea::placeholder{color:var(--color-muted)}.delete-warning{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;margin-bottom:20px;width:100%}.delete-warning i{color:var(--color-danger);font-size:1.5rem;flex-shrink:0}.delete-warning p{margin:0;color:var(--color-text);line-height:1.5;font-size:.95rem}.delete-confirm-input{width:100%}.delete-confirm-input label{display:block;margin-bottom:8px;color:var(--color-text);font-size:.95rem}.delete-confirm-input label strong{font-family:monospace;background:var(--color-bg-elevated);padding:2px 6px;border-radius:4px;letter-spacing:.05em}.delete-confirm-input input{width:100%;padding:12px;font-size:1rem;text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-elevated);color:var(--color-text);font-family:monospace}.delete-confirm-input input:focus{border-color:var(--color-danger);outline:none}.delete-error{color:var(--color-danger);font-size:.9rem;margin-top:12px;padding:8px 12px;background:#ef44441a;border-radius:6px;width:100%}.delete-goodbye-message{text-align:center;padding:20px 0;width:100%}.delete-goodbye-message i{font-size:3rem;color:var(--color-success);margin-bottom:16px;display:block}.delete-goodbye-message p{margin:0 0 8px;color:var(--color-text);font-size:1rem}.delete-goodbye-info{color:var(--color-muted);font-size:.9rem}.delete-receipt-download{display:flex;justify-content:center;margin-top:16px;width:100%}.delete-receipt-download .btn{display:inline-flex;align-items:center;gap:8px}[data-theme=light] .delete-choice-btn{background:#fffc}[data-theme=light] .delete-choice-btn:hover{background:#5a8bff14}[data-theme=light] .delete-reason-chip{background:#fffc}[data-theme=light] .delete-reason-chip.selected{background:#5a8bff26}[data-theme=light] .delete-reason-textarea,[data-theme=light] .delete-confirm-input input{background:#ffffffe6}#poi-picker-modal .modal-body{display:flex;flex-direction:column;gap:14px;font-size:.96rem;align-items:stretch;max-height:60vh;overflow-y:auto;padding-bottom:4px}.poi-picker-list{max-height:400px;overflow-y:auto;margin-bottom:8px}.modal-body{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:.92rem;width:100%}#poi-modal .modal-body{display:flex;flex-direction:column;gap:10px;font-size:.96rem;align-items:stretch;max-height:60vh;overflow-y:auto;padding-bottom:4px}.modal-header{font-weight:600;font-size:1rem;margin-bottom:18px;gap:10px}.modal-header h2,.modal-header h3{font-size:1.15rem}.modal-body{display:flex;flex-direction:column;gap:14px;font-size:.9rem}.modal-footer{margin-top:20px;display:flex;justify-content:flex-end;gap:10px}.modal-footer .btn,.modal-footer button{padding:8px 14px;font-size:.9rem}.share-section{margin-bottom:1.5rem}.share-input-group{display:flex;gap:.5rem;align-items:center}.share-input-group input{flex:1}.share-input-group select{min-width:120px}.share-collaborators{list-style:none;padding:0;margin:0;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);max-height:300px;overflow-y:auto}.share-collaborator-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--color-border)}.share-collaborator-item:last-child{border-bottom:none}.share-collaborator-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.share-collaborator-name{display:flex;align-items:center;gap:.5rem;font-weight:500}.share-collaborator-email{font-size:.875rem;color:var(--color-muted)}.share-collaborator-actions{display:flex;gap:.5rem;align-items:center}.permission-select{padding:.375rem .5rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-panel);color:var(--color-text);font-size:.875rem}.btn-icon-danger{background:transparent;border:none;color:var(--color-error);cursor:pointer;padding:.5rem;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:background .2s}.btn-icon-danger:hover{background:#ef44441a}.btn-icon-danger:disabled{opacity:.5;cursor:not-allowed}.collab-section{border-top:1px solid var(--color-border);padding-top:1.5rem}.collab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.collab-header h3{margin:0;font-size:1rem}.collab-status{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;background:var(--color-bg);color:var(--color-muted);border:1px solid var(--color-border)}.collab-status--active{background:#10b9811a;color:#10b981;border-color:#10b981}.collab-actions{display:flex;gap:.5rem;margin-bottom:1rem}.collab-invite{margin-bottom:1rem}.collab-invite label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.875rem}.collab-invite-group{display:flex;gap:.5rem}.collab-invite-group input{flex:1;font-family:monospace;font-size:.85rem}.collab-help-text{margin-top:.5rem;font-size:.75rem;color:var(--color-muted)}.collab-users{margin-top:1rem}.collab-users h4{margin:0 0 .75rem;font-size:.875rem}.collab-users-list{list-style:none;padding:0;margin:0;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);max-height:150px;overflow-y:auto}.collab-user-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-bottom:1px solid var(--color-border)}.collab-user-item:last-child{border-bottom:none}.collab-user-item i{color:var(--color-accent)}.collab-user-empty{padding:1rem;text-align:center;color:var(--color-muted);font-size:.875rem}.poi-actions{display:flex;flex-direction:var(--poi-direction, row);align-items:var(--poi-align, center);justify-content:var(--poi-justify, flex-end);gap:var(--poi-gap, 12px);margin-top:var(--poi-margin-top, 18px)}.poi-form{display:flex;flex-direction:column;gap:16px;width:100%}.poi-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px 14px;align-items:start}.poi-field--col-full{grid-column:1 / -1}.poi-coordinates-grid{grid-column:1 / -1;display:grid;grid-template-columns:52px repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}.poi-field{display:flex;flex-direction:column;gap:4px;padding:6px 8px;background:#12131cbf;border:1px solid rgba(90,139,255,.14);border-radius:12px;transition:border-color .2s ease,box-shadow .2s ease}.poi-field:hover{border-color:#5a8bff47;box-shadow:0 8px 18px #181b3047}[data-theme=light] .poi-field{background:#fffffff5;border:1px solid var(--color-border);box-shadow:0 10px 28px #0f184014}[data-theme=light] .poi-field:hover{border-color:var(--interactive-border-hover);box-shadow:0 12px 30px #0f18401f}.poi-field-label{font-size:.85rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#f0f2ffb8}[data-theme=light] .poi-field-label{color:var(--color-text-strong)}.poi-field-optional{font-size:.72rem;font-weight:500;color:#f0f2ff80;margin-left:6px;text-transform:none;letter-spacing:normal}[data-theme=light] .poi-field-optional{color:var(--color-muted)}.poi-coordinates-grid .poi-field{height:100%}.poi-coordinates-grid .poi-reposition-btn{align-self:stretch}.poi-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.poi-field--wide{padding:8px}#poi-modal input,#poi-modal textarea,#poi-modal select{background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:8px}#poi-modal input:focus,#poi-modal textarea:focus,#poi-modal select:focus{border-color:var(--color-accent, #5a8bff);outline:none}#poi-modal textarea{min-height:60px;resize:vertical;line-height:1.4}#poi-modal select#poi-category{padding:8px 36px 8px 12px;font-size:.9rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;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='%235a8bff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px}#poi-modal select#poi-category:hover{border-color:#5a8bff80}#poi-modal select#poi-category option{background:var(--color-input-bg);color:var(--color-text);padding:8px}#poi-modal input[type=datetime-local]::-webkit-calendar-picker-indicator{color:var(--color-text);filter:brightness(0) invert(1);opacity:.85}#poi-modal input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}[data-theme=light] #poi-modal input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:none;opacity:.7}[data-theme=light] #poi-modal input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}.poi-list{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:6px}.poi-save-btn{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:10px;padding:10px 20px;font-weight:700;background:linear-gradient(140deg,#1dbf73,#18a864);color:#fff;box-shadow:0 12px 30px #1dbf734d;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.poi-save-btn:hover,.poi-save-btn:focus{transform:translateY(-1px);box-shadow:0 16px 34px #1dbf736b}.poi-save-btn i{font-size:1.1rem;color:inherit}.poi-reposition-btn{display:inline-flex;align-items:center;justify-content:center;width:48px;height:100%;min-height:46px;border-radius:12px;border:1px solid rgba(90,139,255,.35);background:#1c1e2dc2;color:#94b0fff2;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease}.poi-reposition-btn:hover,.poi-reposition-btn:focus{border-color:#5a8bff99;background:#282a40eb;color:#bfd1ff;transform:translateY(-1px) scale(1.02)}.poi-reposition-btn i{font-size:1.1rem}[data-theme=light] .poi-reposition-btn{background:#fff;border-color:#3b82f659;color:var(--color-accent);box-shadow:0 10px 26px #0f18401f}[data-theme=light] .poi-reposition-btn:hover,[data-theme=light] .poi-reposition-btn:focus{background:#3b82f614;border-color:#3b82f680;color:var(--color-accent)}@media(max-width:640px){.poi-form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.poi-coordinates-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-auto-rows:1fr}.poi-coordinates-grid .poi-reposition-btn{width:100%}}.poi-cancel-btn{padding:9px 18px;border-radius:10px;border:1px solid rgba(90,139,255,.2);background:transparent;color:#f0f2ffc7;font-weight:600;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.poi-cancel-btn:hover,.poi-cancel-btn:focus{background:#5a8bff29;border-color:#5a8bff73;color:#f4f6ff}[data-theme=light] .poi-cancel-btn{background:#3b82f614;border-color:var(--color-border);color:var(--color-text)}[data-theme=light] .poi-cancel-btn:hover,[data-theme=light] .poi-cancel-btn:focus{background:#3b82f629;border-color:#3b82f673;color:var(--color-text-strong)}@media(max-width:540px){:root{--poi-modal-pad: 24px 20px 22px}.poi-field-grid{grid-template-columns:1fr;gap:12px}.poi-actions{--poi-justify: space-between}}.poi-list-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;background:var(--color-panel);border:1px solid var(--color-border);font-size:.9rem;color:var(--color-text);transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .22s ease,transform .18s ease;box-shadow:var(--shadow-soft)}.poi-list-item.active{background:var(--interactive-bg-active);border-color:var(--interactive-border-active);color:var(--color-text);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.poi-list-item.active .poi-badge,.poi-list-item.active .poi-coords{color:var(--color-text)}.poi-list-item:hover,.poi-list-item:focus-visible{background:var(--interactive-bg-hover);border-color:var(--interactive-border-hover);color:var(--color-text);box-shadow:var(--shadow-soft);outline:none}.info-tab{display:flex;flex-direction:column;gap:18px;padding:18px 12px;overflow-x:hidden}.info-field{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.info-label{font-weight:500;color:var(--color-text);margin-bottom:2px}.info-title{font-size:1.1rem;font-weight:600;padding:8px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text)}.info-title.field-error{border-color:var(--color-danger);box-shadow:0 0 0 2px var(--color-danger)}.info-location{font-size:1rem;padding:7px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text)}.info-thumbnail{margin-bottom:12px;width:100%;max-width:220px;height:80px;-o-object-fit:cover;object-fit:cover;border-radius:8px;border:2px solid var(--color-accent);cursor:pointer;transition:box-shadow .2s}.info-thumbnail:focus,.info-thumbnail:hover{box-shadow:0 0 0 3px var(--color-accent)}.info-description{margin-top:2px;min-height:60px;padding:8px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text);resize:vertical}.info-categories{margin-top:18px;display:flex;flex-wrap:wrap;gap:6px}.category-chip{background:var(--color-accent);color:var(--color-white);border-radius:999px;padding:4px 12px;font-size:.95rem;font-weight:700;margin-right:4px;letter-spacing:.01em}.info-status{margin:0;display:inline-block;padding:4px 14px;border-radius:999px;font-size:.95rem;font-weight:600;background:var(--status-default-bg);color:var(--status-default-text);border:1px solid var(--status-default-border)}.info-status.draft{background:var(--status-draft-bg);color:var(--status-draft-text)}.info-status.published{background:var(--status-published-bg);color:var(--status-published-text)}.field-error-message{color:var(--color-danger);font-size:.92rem;margin-top:2px}.info-section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent);margin:20px 0 16px}.info-section{margin-top:12px;padding:16px;background:var(--color-panel);border:1px solid var(--color-border);border-radius:12px}.info-section-header{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:600;color:var(--color-text);margin:0 0 4px}.info-section-header:before{content:"";width:3px;height:16px;background:var(--color-accent);border-radius:2px}.info-section-helper{font-size:.8rem;color:var(--color-text-muted);margin:0 0 14px;padding-left:11px;line-height:1.4}.info-field--toggle{margin-bottom:14px;padding:10px 12px;background:#5a8bff14;border:1px solid rgba(90,139,255,.2);border-radius:8px}.info-toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;color:var(--color-text)}.info-toggle-label input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:38px;height:20px;background:var(--color-border);border-radius:10px;position:relative;cursor:pointer;transition:background .2s ease}.info-toggle-label input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #0003}.info-toggle-label input[type=checkbox]:checked{background:var(--color-accent)}.info-toggle-label input[type=checkbox]:checked:after{transform:translate(18px)}.info-toggle-text{font-size:.9rem}.info-page-content{display:flex;flex-direction:column;gap:12px;padding-top:4px}.info-page-content.hidden{display:none}.info-fieldset{border:1px solid var(--color-border);border-radius:10px;padding:14px 14px 12px;margin:0;background:#ffffff05;transition:border-color .2s ease,box-shadow .2s ease}.info-fieldset:focus-within{border-color:#5a8bff66;box-shadow:0 0 0 3px #5a8bff14}.info-fieldset-legend{font-size:.85rem;font-weight:600;color:var(--color-text);padding:0 8px;margin-left:-4px}.info-toggle-label--legend{display:inline-flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;cursor:pointer;padding:2px 0}.info-toggle-label--legend span{transition:color .2s ease}.info-toggle-label--legend:has(input:not(:checked)) span{color:var(--color-text-muted)}.info-toggle-label--legend input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:32px;height:18px;background:var(--color-border);border-radius:9px;position:relative;cursor:pointer;transition:background .2s ease;flex-shrink:0}.info-toggle-label--legend input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 2px #0003}.info-toggle-label--legend input[type=checkbox]:checked{background:var(--color-accent)}.info-toggle-label--legend input[type=checkbox]:checked:after{transform:translate(14px)}.info-toggle-label--legend input[type=checkbox]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.info-fieldset:has(.info-toggle-label--legend input:not(:checked))>div:not(legend){opacity:.35;pointer-events:none;filter:grayscale(.3)}.info-fieldset .info-field{margin-bottom:10px}.info-fieldset .info-field:last-child{margin-bottom:0}.info-field-hint{font-size:.75rem;color:var(--color-text-muted);margin-top:3px}.info-field--mode-toggle{display:inline-flex;gap:0;margin-bottom:10px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:2px}.info-radio-label{display:flex;align-items:center;justify-content:center;gap:0;cursor:pointer;font-size:.8rem;color:var(--color-text-secondary);padding:5px 12px;border-radius:4px;transition:all .15s ease}.info-radio-label:has(input:checked){background:var(--color-accent);color:#fff}.info-radio-label input[type=radio]{display:none}#info-page-why-bullets{display:flex;flex-direction:column;gap:6px}#info-page-why-bullets input{padding:8px 12px 8px 28px;border-radius:6px;border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text);font-size:.85rem;position:relative}#info-page-why-bullets input::-moz-placeholder{color:var(--color-text-muted)}#info-page-why-bullets input::placeholder{color:var(--color-text-muted)}#info-page-why-bullets input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #5a8bff26}.info-field:has(#info-page-why-bullets){position:relative}#info-page-why-bullets input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6'%3E%3Ccircle cx='3' cy='3' r='3' fill='%235a8bff'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center}.info-page-themes-list{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.info-page-themes-list:empty{display:none}.info-page-theme-card{display:grid;grid-template-columns:1fr auto;gap:6px 8px;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background:#ffffff08;position:relative}.info-page-theme-card input{grid-column:1}.info-page-theme-card textarea{grid-column:1 / -1}.info-page-theme-card input,.info-page-theme-card textarea{padding:6px 10px;border-radius:5px;border:1px solid var(--color-border);background:#00000026;color:var(--color-text);font-size:.85rem}.info-page-theme-card input::-moz-placeholder,.info-page-theme-card textarea::-moz-placeholder{color:var(--color-text-muted)}.info-page-theme-card input::placeholder,.info-page-theme-card textarea::placeholder{color:var(--color-text-muted)}.info-page-theme-card input:focus,.info-page-theme-card textarea:focus{border-color:var(--color-accent);outline:none}.info-page-theme-card textarea{min-height:44px;resize:vertical}.info-page-theme-remove{grid-column:2;grid-row:1;align-self:center;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#ef444426;color:var(--color-danger);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.info-page-theme-remove:hover{background:var(--color-danger);color:#fff}.info-page-media-list{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.info-page-media-list:empty{display:none}.info-page-media-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;background:#ffffff08}.info-page-media-thumb{width:44px;height:44px;border-radius:6px;-o-object-fit:cover;object-fit:cover;background:#0000004d;flex-shrink:0}.info-page-media-info{flex:1;min-width:0}.info-page-media-title{font-size:.85rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-page-media-caption{width:100%;padding:5px 8px;margin-top:4px;border-radius:5px;border:1px solid var(--color-border);background:#00000026;color:var(--color-text);font-size:.8rem}.info-page-media-caption::-moz-placeholder{color:var(--color-text-muted)}.info-page-media-caption::placeholder{color:var(--color-text-muted)}.info-page-media-caption:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #5a8bff1a}.info-page-media-remove{width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#ef444426;color:var(--color-danger);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.info-page-media-remove:hover{background:var(--color-danger);color:#fff}.info-add-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;font-size:.8rem;font-weight:500;background:#5a8bff1a;border:1px dashed rgba(90,139,255,.4);border-radius:6px;color:var(--color-accent);cursor:pointer;transition:all .15s ease}.info-add-btn:hover{background:#5a8bff2e;border-style:solid}.info-add-btn i{font-size:1rem}.info-add-btn:disabled{opacity:.4;cursor:not-allowed}[data-theme=light] .info-section{background:#fff9}[data-theme=light] .info-field--toggle{background:#5a8bff0f}[data-theme=light] .info-fieldset{background:#ffffff80}[data-theme=light] .info-page-theme-card,[data-theme=light] .info-page-media-item{background:#00000008}[data-theme=light] .info-page-theme-card input,[data-theme=light] .info-page-theme-card textarea,[data-theme=light] #info-page-why-bullets input,[data-theme=light] .info-page-media-caption{background:#fffc}[data-theme=light] .info-add-btn{background:#5a8bff14}[data-theme=light] .info-add-btn:hover{background:#5a8bff26}.required-indicator{color:var(--color-danger);font-weight:400}.category-input-container{display:flex;gap:8px;align-items:center}.info-category-input{flex:1;padding:7px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text);font-size:.95rem}.info-category-input:focus{border-color:var(--color-accent);outline:none}.info-add-category-btn{flex-shrink:0}.remove-category-btn{background:transparent;border:none;color:#ffffffb3;font-size:1rem;cursor:pointer;padding:0;line-height:1}.remove-category-btn:hover{color:#fff}.media-tab{display:flex;flex-direction:column;gap:18px;padding:18px 12px;overflow-x:hidden}.media-uploader{border:1px solid var(--color-border);border-radius:12px;padding:16px;background:linear-gradient(150deg,#18181f,#15151c);box-shadow:0 20px 36px #08091452}.media-dropzone{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,#1b1b23f2,#12121af2);cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition),background var(--transition);outline:none;transform:translateY(0)}.media-dropzone:focus,.media-dropzone:hover{border-color:var(--color-accent);box-shadow:0 0 0 3px #5a8bff40,0 24px 40px #09091473;transform:translateY(-2px)}.media-dropzone-icon{width:48px;height:48px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#5a8bff47,#5a8bff1f);color:#fff;font-size:1.4rem;flex-shrink:0;box-shadow:0 12px 20px #13182859}.media-dropzone-copy{display:flex;flex-direction:column;gap:4px}.media-dropzone-title{font-size:1rem;font-weight:600;color:var(--color-text)}.media-dropzone-subtitle{font-size:.9rem;color:#e7e7eab8}.media-dropzone-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.media-upload-btn,.media-url-btn{padding:var(--media-btn-pad);border-radius:8px;font-weight:600;font-size:var(--media-btn-font);cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition),transform var(--transition);border:1px solid var(--color-border);background:var(--color-panel);color:var(--color-text);box-shadow:var(--shadow-soft);transform:translateY(0)}.media-url-btn:hover,.media-url-btn:focus{background:#ffffff14;transform:translateY(-1px)}.media-layout{display:flex;gap:18px;min-height:0;width:100%;flex-wrap:wrap}.media-grid-section{flex:1 1 360px;display:flex;flex-direction:column;min-height:0;border-radius:12px;border:1px solid var(--color-border);background:linear-gradient(150deg,#18181f,#13131a);padding:16px;box-shadow:0 24px 46px #0809145c;min-width:0}.media-grid-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.media-grid-title{font-size:1rem;font-weight:600;color:var(--color-text)}.media-grid-count{font-size:.8rem;color:#e7e7eaad}.media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;overflow-y:auto;overflow-x:hidden;padding-right:2px}.media-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:10px;background:linear-gradient(160deg,#1b1b23f5,#101018f5);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;text-align:left;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition),background var(--transition);outline:none;transform:translateY(0)}.media-card:hover,.media-card:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px #5a8bff3d,0 18px 36px #090a1666;transform:translateY(-3px)}.media-card.selected{border-color:#5a8bff8c;background:linear-gradient(165deg,#5a8bff38,#161828eb);box-shadow:0 0 0 3px #5a8bff52,0 26px 48px #0e122485;transform:translateY(-4px)}.media-card-thumb{width:100%;aspect-ratio:16 / 10;border-radius:8px;background:var(--surface-muted);overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}.media-card-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.media-card-thumb.video{background:radial-gradient(circle at center,#5a8bff38,#14141ceb);color:#fff;font-size:1.6rem}.media-card-thumb.document{background:linear-gradient(135deg,#ff58583d,#5a8bff1a);color:#ffffffd9;font-size:1.4rem}.media-card-badge{position:absolute;top:8px;right:8px;background:#5a8bff3d;color:#fff;font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:999px;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(90,139,255,.35);box-shadow:0 6px 12px #0a0d1873}.media-card-name{font-size:.92rem;font-weight:600;color:var(--color-text)}.media-card-type{font-size:.78rem;color:#e7e7eaad}.media-details{flex:1 1 280px;display:flex;flex-direction:column;gap:14px;border-radius:12px;border:1px solid var(--color-border);background:linear-gradient(150deg,#18181f,#13131a);padding:16px;box-shadow:0 24px 46px #0809145c;min-width:0;max-width:360px}.media-details-header{display:flex;flex-direction:column;gap:4px}.media-details-title{font-size:1rem;font-weight:600;color:var(--color-text)}.media-details-type{font-size:.85rem;color:#e7e7eaad}.media-details-list{display:flex;flex-direction:column;gap:10px}.media-details-row{display:flex;flex-direction:column;gap:4px}.media-details-row dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#e7e7ea85}.media-details-row dd{margin:0;font-size:.9rem;color:#e7e7eadb;line-height:1.35}.media-token{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:8px;background:linear-gradient(155deg,#1b1b23f0,#101017f0);border:1px solid rgba(90,139,255,.22);box-shadow:0 12px 26px #08091459}.media-token code{font-size:.8rem;color:#ffffffc7;word-break:break-all}.media-token-copy,.media-secondary-action,.media-danger-action{padding:8px 12px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition);border:1px solid var(--color-border);background:var(--color-panel);color:var(--color-text);box-shadow:var(--shadow-soft)}.media-token-copy:hover,.media-token-copy:focus{background:#5a8bff2e;border-color:#5a8bff4d;color:#fff}.media-details-actions{display:flex;gap:10px;flex-wrap:wrap}.media-secondary-action:hover,.media-secondary-action:focus{background:#ffffff14}.media-danger-action{color:#ffb4c1;border-color:#d33f5759;background:#d33f5729}.media-danger-action:hover,.media-danger-action:focus{background:#d33f5740;color:#fff}body.xr-undocked .workspace-panel{transform:translateZ(0) scale(.98);box-shadow:0 20px 40px var(--xr-panel-shadow);transition:transform .25s ease,box-shadow .25s ease}body.xr-undocked .panel-slot--editor .workspace-panel{transform:translateY(-6px) scale(1.02);box-shadow:0 24px 48px var(--xr-panel-shadow-elevated)}body.xr-undocked .viewer-column .workspace-panel{opacity:.92}.placement-hud{background:var(--xr-hud-bg);color:var(--xr-hud-text);font-size:.95rem;font-weight:600;padding:8px 16px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 6px 18px #5a8bff33;margin:12px auto;text-align:center;z-index:12}.placement-hud.hidden{display:none}.dimmed{opacity:.4;transition:opacity .2s ease;pointer-events:none}.poi-chip-highlight{animation:poiChipGlow 1.2s ease-out forwards}@keyframes poiChipGlow{0%{box-shadow:0 0 #5a8bff66}40%{box-shadow:0 0 16px #5a8bff8c}to{box-shadow:0 0 #5a8bff00}}.poi-actions .btn-adjust-location{background:transparent;color:#5a8bff;border:1px dashed rgba(90,139,255,.6)}.poi-actions .btn-adjust-location:hover,.poi-actions .btn-adjust-location:focus{background:#5a8bff14;color:#3d6ff0;border-color:#3d6ff0}@media(max-width:1100px){.media-layout{flex-direction:column}.media-details{flex:unset}}.cesium-viewer .cesium-widget-credits,.cesium-credit-lightbox{display:none!important}#cesiumContainer{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;background:radial-gradient(circle at 30% 20%,rgba(90,139,255,.15),transparent 50%),radial-gradient(circle at 70% 80%,rgba(130,255,220,.1),transparent 50%),#0c0c0d}#cesiumContainer:before{content:"";position:absolute;inset:0;z-index:10;pointer-events:none;background:radial-gradient(circle at 30% 20%,rgba(90,139,255,.15),transparent 50%),radial-gradient(circle at 70% 80%,rgba(130,255,220,.1),transparent 50%),#0c0c0d;opacity:1;transition:opacity .5s ease-out}#cesiumContainer.cesium-loaded:before{opacity:0;pointer-events:none}#cesiumContainer:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:11;width:48px;height:48px;border:3px solid rgba(90,139,255,.2);border-top-color:#5a8bff;border-radius:50%;animation:cesium-loading-spin 1s linear infinite;pointer-events:none;opacity:1;transition:opacity .5s ease-out}#cesiumContainer.cesium-loaded:after{opacity:0}@keyframes cesium-loading-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@media(prefers-reduced-motion:reduce){#cesiumContainer:after{animation:none}}#cesiumContainer .cesium-viewer,#cesiumContainer .cesium-viewer-cesiumWidgetContainer,#cesiumContainer .cesium-widget{position:absolute;inset:0;width:100%!important;height:100%!important}#cesiumContainer .cesium-widget canvas{display:block;width:100%!important;height:100%!important}#map3dPanel .map-panel-body{position:relative;flex:1;min-height:0;overflow:hidden}.cesium-placeholder{position:absolute;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0d1117,#161b22,#0d1117);transition:opacity 1.5s ease-out,visibility 1.5s ease-out}.cesium-placeholder.hidden{opacity:0;visibility:hidden;pointer-events:none}.cesium-placeholder__content{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.cesium-placeholder__globe{width:140px;height:140px;border-radius:50%;position:relative;overflow:hidden;border:2px solid rgba(90,139,255,.3);box-shadow:0 0 50px #5a8bff40,0 0 100px #5a8bff1a}.cesium-placeholder__globe:before{content:"";position:absolute;top:0;left:0;width:400%;height:100%;background:url(/assets/img/globe.jpg) repeat-x center center;background-size:auto 100%;animation:globe-scroll 40s linear infinite;pointer-events:none}.cesium-placeholder__globe:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 50%,transparent 40%,rgba(0,0,0,.4) 70%,rgba(0,0,0,.7) 100%),radial-gradient(circle at 30% 25%,rgba(255,255,255,.2) 0%,transparent 40%),radial-gradient(circle at 50% 50%,transparent 60%,rgba(100,180,255,.12) 80%,rgba(60,140,220,.08) 100%);pointer-events:none}@keyframes globe-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.cesium-placeholder__btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;font-size:15px;font-weight:500;color:#fff;background:linear-gradient(135deg,#5a8bff,#4a7aee);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 16px #5a8bff4d}.cesium-placeholder__btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #5a8bff66;background:linear-gradient(135deg,#6a9bff,#5a8aff)}.cesium-placeholder__btn:active{transform:translateY(0)}.cesium-placeholder__btn i{font-size:18px}.cesium-placeholder__controls{display:flex;flex-direction:column;align-items:center;gap:16px;opacity:1;transition:opacity .4s ease-out}.cesium-placeholder__controls.fade-out{opacity:0;pointer-events:none}.cesium-placeholder__remember{display:flex;align-items:center;gap:8px;font-size:13px;color:#fff9;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cesium-placeholder__remember input[type=checkbox]{width:16px;height:16px;accent-color:#5a8bff;cursor:pointer}.cesium-placeholder__remember:hover{color:#fffc}.cesium-placeholder__loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;opacity:0;transition:opacity .4s ease-in;pointer-events:none;position:absolute;inset:0}.cesium-placeholder__loader.active{opacity:1}.cesium-placeholder__loader-track{width:200px;height:4px;background:#ffffff26;border-radius:4px;overflow:hidden}.cesium-placeholder__loader-bar{width:0%;height:100%;background:linear-gradient(90deg,#5a8bff,#7aa3ff);border-radius:4px;transition:width .3s ease-out}.cesium-placeholder__loader-text{font-size:13px;color:#ffffffb3;letter-spacing:.02em;min-width:180px;text-align:center}@media(prefers-reduced-motion:reduce){.cesium-placeholder__globe:before{animation:none}.cesium-placeholder__loader-bar{transition:none}}.cesium-cloud-overlay{position:absolute;inset:0;pointer-events:none;z-index:50;opacity:0;transition:opacity .8s ease;background:url(/assets/img/cloud-DDg6FtT1.png) center/cover no-repeat}.cesium-cloud-overlay.active{opacity:.85}.cesium-fade-overlay{position:absolute;inset:0;pointer-events:none;z-index:55;background:#000;opacity:0;visibility:hidden;transition:opacity 1.2s ease-out,visibility 1.2s ease-out}.cesium-fade-overlay.active{opacity:1;visibility:visible}.cesium-fade-overlay.fade-out{opacity:0;visibility:hidden}.location-transition-pill{position:absolute;top:24px;left:50%;transform:translate(-50%);padding:10px 18px;border-radius:999px;background:#000000a6;color:#fff;font-size:14px;font-weight:400;letter-spacing:.02em;white-space:nowrap;opacity:0;transition:opacity .4s ease;z-index:60;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #0000004d}.location-transition-pill.active{opacity:1}.location-transition-pill strong{font-weight:600}@keyframes aiButtonPulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.65}to{transform:translate(-50%,-50%) scale(1.75);opacity:0}}@keyframes aiPulseDot{0%{transform:scale(.6);opacity:.9}to{transform:scale(1.75);opacity:0}}@keyframes fadeout{0%{opacity:1;transform:translate(-50%) translateY(0)}90%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(20px)}}.attachment-preview-area{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-divider)}.attachment-preview-area.hidden{display:none}.attachment-cards-container{display:flex;flex-direction:column;gap:8px}.attachment-card{display:flex;align-items:center;gap:12px;padding:10px;background:var(--interactive-bg);border:1px solid var(--color-border-subtle);border-radius:6px;transition:all .2s ease;position:relative}.attachment-card:hover{background:var(--interactive-bg-hover);border-color:var(--interactive-border-hover)}.attachment-card:focus-within{outline:2px solid var(--focus-ring-strong);outline-offset:2px}.attachment-thumbnail{width:48px;height:48px;flex-shrink:0;border-radius:4px;overflow:hidden;background:var(--surface-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.attachment-thumbnail img,.attachment-thumbnail video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.attachment-thumbnail .file-icon{font-size:24px;color:var(--color-muted)}.attachment-thumbnail .progress-overlay{position:absolute;inset:0;background:var(--overlay-dark);display:flex;align-items:center;justify-content:center}.attachment-thumbnail .progress-spinner{width:24px;height:24px;border:3px solid var(--color-border-subtle);border-top-color:var(--color-accent);border-radius:50%;animation:attachmentSpin .8s linear infinite}@keyframes attachmentSpin{to{transform:rotate(360deg)}}.attachment-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.attachment-filename{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted)}.attachment-type-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:var(--interactive-bg-active);border-radius:3px;font-size:10px;font-weight:600;text-transform:uppercase;color:var(--color-accent)}.attachment-size{font-size:11px;color:var(--text-muted)}.attachment-progress{width:100%;height:3px;background:var(--color-border-subtle);border-radius:3px;overflow:hidden;margin-top:4px}.attachment-progress-bar{height:100%;background:linear-gradient(90deg,var(--btn-primary-bg-start),var(--btn-primary-bg-end));border-radius:3px;transition:width .3s ease}.attachment-card.error{border-color:var(--color-error);background:var(--notification-error-bg)}.attachment-error-message{font-size:11px;color:var(--color-error);margin-top:2px}.attachment-error-actions{display:flex;gap:8px;margin-top:6px}.attachment-error-actions button{padding:4px 8px;font-size:11px;border-radius:3px;border:1px solid;background:transparent;cursor:pointer;transition:all .2s ease}.attachment-error-actions .btn-retry{color:var(--color-accent);border-color:var(--color-accent)}.attachment-error-actions .btn-retry:hover{background:var(--interactive-bg)}.attachment-error-actions .btn-remove-error{color:var(--color-error);border-color:var(--color-error)}.attachment-error-actions .btn-remove-error:hover{background:var(--notification-error-bg)}.attachment-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.attachment-card:hover .attachment-actions,.attachment-card:focus-within .attachment-actions{opacity:1}.attachment-action-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--interactive-bg);border:1px solid var(--color-border-subtle);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-size:14px}.attachment-action-btn:hover{background:var(--interactive-bg-hover);color:var(--text-primary);border-color:var(--interactive-border-hover)}.attachment-action-btn:focus{outline:2px solid var(--focus-ring-strong);outline-offset:2px}.attachment-action-btn.btn-remove{color:#ff5a5acc}.attachment-action-btn.btn-remove:hover{background:#ff5a5a1a;color:#ff5a5a;border-color:#ff5a5a66}.attachment-overflow-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;margin-top:4px;background:var(--interactive-bg);border:1px dashed var(--color-border);border-radius:4px;color:var(--text-muted);font-size:12px;cursor:pointer;transition:all .2s ease}.attachment-overflow-toggle:hover{background:var(--interactive-bg-hover);border-color:var(--interactive-border-hover);color:var(--text-secondary)}.attachment-overflow-toggle i{transition:transform .2s ease}.attachment-overflow-toggle[aria-expanded=true] i{transform:rotate(180deg)}.attachment-card.overflow-hidden{display:none}.attachment-lightbox{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center}.attachment-lightbox.hidden{display:none}.lightbox-backdrop{position:absolute;inset:0;background:#000000e6;cursor:pointer}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;background:#141414f2;border-radius:8px;overflow:hidden;box-shadow:0 20px 60px #00000080}.lightbox-close{position:absolute;top:12px;right:12px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#0009;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;font-size:20px;cursor:pointer;z-index:10;transition:all .2s ease}.lightbox-close:hover{background:#ffffff1a;border-color:#fff6}.lightbox-body{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 40px 20px;min-width:300px;min-height:300px}.lightbox-body img,.lightbox-body video,.lightbox-body audio{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.lightbox-body video{background:#000}.lightbox-footer{padding:16px 24px;background:#0009;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;gap:16px}.lightbox-filename{font-size:14px;font-weight:500;color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lightbox-filesize{font-size:12px;color:#ffffff80;white-space:nowrap}@media(max-width:768px){.attachment-card{padding:8px}.attachment-thumbnail{width:40px;height:40px}.attachment-actions{opacity:1}.lightbox-body{padding:50px 20px 10px}.lightbox-footer{padding:12px 16px;flex-direction:column;align-items:flex-start;gap:8px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.publish-section{margin:0;padding:10px 12px;border:1px solid var(--color-border-subtle, rgba(255, 255, 255, .08));border-radius:8px;background:linear-gradient(180deg,#ffffff05,#ffffff0a);color:var(--color-text)}.publish-section:last-child{border-bottom:none}.publish-section h3{font-size:13px;font-weight:600;color:var(--color-text-strong);margin:0 0 10px;text-transform:uppercase;letter-spacing:.4px}.radio-label,.checkbox-label{display:flex;align-items:center;gap:6px;padding:4px 6px;margin:0;border-radius:6px;cursor:pointer;border:1px solid transparent;transition:background .2s ease,border-color .2s ease}.radio-label:hover,.checkbox-label:hover{background:#5a8bff14;border-color:#5a8bff33}.radio-label input[type=radio],.radio-label input[type=checkbox],.checkbox-label input[type=radio],.checkbox-label input[type=checkbox]{width:18px;height:18px;margin:0;cursor:pointer}.radio-label span,.checkbox-label span{font-size:13px;color:var(--color-text);flex:1}.radio-label input[type=radio]:checked+span,.checkbox-label input[type=checkbox]:checked+span{color:var(--color-text-strong);font-weight:600}#publish-modal .modal-body{display:flex;flex-direction:column;gap:10px;width:100%}#publish-modal .modal-content{--modal-width: min(480px, 98vw);--modal-max-width: 480px}.publish-tabs{display:flex;gap:3px;background:var(--color-bg-elevated, #1e1e24);padding:3px;border-radius:8px;border:1px solid var(--color-border-subtle, rgba(255, 255, 255, .1))}.publish-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:none;border-radius:6px;background:transparent;color:var(--color-text-muted, #9ca3af);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.publish-tab:hover:not(.active){background:#ffffff0d;color:var(--color-text, #e5e7eb)}.publish-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.publish-tab-icon{font-size:14px}.publish-tab-content{display:flex;flex-direction:column;gap:8px}.publish-tab-content.hidden{display:none}.publish-description{font-size:12px;color:var(--color-text-muted, #9ca3af);line-height:1.4;margin:0;padding:8px 10px;background:var(--color-bg-elevated, #26262d);border-radius:6px}#publish-modal .publish-section{margin:0;display:flex;flex-direction:column;gap:4px}#publish-modal .form-control{padding:6px 10px!important;font-size:13px!important}#publish-modal select.form-control{padding:6px 8px!important}.form-label{font-size:12px;font-weight:600;color:var(--color-text-strong, #e5e7eb)}.form-hint{font-size:11px;color:var(--color-text-muted, #6b7280);margin:0;line-height:1.3}.publish-slug-preview{display:flex;align-items:center;background:var(--color-bg-elevated, #26262d);border:1px solid var(--color-border-subtle, rgba(255, 255, 255, .1));border-radius:6px;overflow:hidden}.slug-prefix{padding:8px 2px 8px 10px;font-size:12px;color:var(--color-text-muted, #6b7280);white-space:nowrap;background:var(--color-bg-elevated, #26262d)}.form-control--inline{border:none;border-radius:0;background:transparent;padding-left:0}.form-control--inline:focus{box-shadow:none;outline:none}.publish-slug-preview:focus-within{border-color:var(--color-primary, #667eea);box-shadow:0 0 0 2px #667eea33}.radio-group{display:flex;gap:12px}[data-theme=light] .publish-tabs{background:#f5f6fbe6;border-color:#303e6e29}[data-theme=light] .publish-tab:hover:not(.active){background:#0000000d}[data-theme=light] .publish-description{background:#f5f6fbe6}[data-theme=light] .publish-slug-preview{background:#f5f6fbe6;border-color:#303e6e29}.radio-label input[type=radio]:disabled+span,.checkbox-label input[type=checkbox]:disabled+span{color:var(--color-muted);cursor:not-allowed}.publish-status{padding:12px;background:linear-gradient(180deg,#5a8bff1f,#5a8bff0f);border:1px solid rgba(90,139,255,.24);border-radius:8px;margin-top:8px;color:var(--color-text)}.publish-progress{display:flex;align-items:center;gap:10px}.publish-progress .progress-spinner{width:18px;height:18px;border:2px solid var(--color-border-subtle);border-top-color:var(--color-accent);border-radius:50%;animation:attachmentSpin .8s linear infinite}.publish-progress span{font-size:12px;color:var(--color-text);font-weight:600}#password-section.hidden{display:none}.radio-label input[type=radio]:disabled,.checkbox-label input[type=checkbox]:disabled{opacity:.6}[data-theme=light] .radio-label:hover,[data-theme=light] .checkbox-label:hover{background:#5a8bff1f;border-color:#5a8bff47}[data-theme=light] .publish-status{background:linear-gradient(180deg,#5a8bff24,#5a8bff14);border-color:#5a8bff47}.hosted-info-card,#hosted-info-section>div{background:linear-gradient(165deg,#5a8bff24,#121320e6)!important;border-radius:12px!important;padding:14px 16px!important;border:1px solid rgba(90,139,255,.26)!important;box-shadow:0 16px 36px #00000040}.hosted-info-card h4,#hosted-info-section h4{margin:0 0 8px!important;font-size:14px!important;font-weight:700!important;color:var(--color-text-strong)!important}.hosted-info-card p,#hosted-info-section p{margin:0!important;font-size:13px!important;color:var(--color-muted)!important;line-height:1.55!important}.hosted-info-card strong,#hosted-info-section strong{color:var(--color-text-strong)!important}[data-theme=light] .hosted-info-card,[data-theme=light] #hosted-info-section>div{background:linear-gradient(165deg,#fffffffa,#eff2ffeb)!important;border-color:#5a8bff47!important;box-shadow:0 12px 28px #0f18401a}.publish-success-modal{max-width:480px;text-align:center;padding:32px 40px}.publish-success-content{animation:publishSuccessFadeIn .4s ease-out}.publish-success-content.hidden{display:none}@keyframes publishSuccessFadeIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.publish-success-icon{width:80px;height:80px;margin:0 auto 20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;animation:publishIconPulse 2s ease-in-out infinite}.publish-success-icon--cloud{background:linear-gradient(135deg,#10b98133,#10b9811a);color:#10b981;border:2px solid rgba(16,185,129,.3)}.publish-success-icon--download{background:linear-gradient(135deg,#667eea33,#667eea1a);color:#667eea;border:2px solid rgba(102,126,234,.3)}@keyframes publishIconPulse{0%,to{transform:scale(1);box-shadow:0 0 #10b9814d}50%{transform:scale(1.02);box-shadow:0 0 20px 4px #10b98126}}.publish-success-icon--download{animation-name:publishDownloadPulse}@keyframes publishDownloadPulse{0%,to{transform:scale(1);box-shadow:0 0 #667eea4d}50%{transform:scale(1.02);box-shadow:0 0 20px 4px #667eea26}}.publish-success-icon--error{background:linear-gradient(135deg,#ef444433,#ef44441a);color:#ef4444;border:2px solid rgba(239,68,68,.3);animation-name:publishErrorPulse}@keyframes publishErrorPulse{0%,to{transform:scale(1);box-shadow:0 0 #ef44444d}50%{transform:scale(1.02);box-shadow:0 0 20px 4px #ef444426}}.publish-success-title{font-size:24px;font-weight:700;color:var(--color-text-strong);margin:0 0 8px}.publish-success-subtitle{font-size:14px;color:var(--color-muted);margin:0 0 24px}.publish-success-url-box{background:#0003;border:1px solid var(--color-border);border-radius:12px;padding:16px;margin-bottom:20px}.publish-success-url-label{display:block;font-size:12px;color:var(--color-muted);margin-bottom:8px;text-align:left}.publish-success-url-row{display:flex;gap:8px}.publish-success-url-input{flex:1;background:var(--color-input-bg);border:1px solid var(--color-border);border-radius:8px;padding:10px 14px;font-size:13px;font-weight:600;color:#667eea;font-family:var(--font-mono);cursor:text}.publish-success-url-input:focus{outline:none;border-color:var(--color-accent)}.publish-success-copy-btn{background:var(--color-accent);border:none;border-radius:8px;padding:10px 14px;color:#fff;font-size:16px;cursor:pointer;transition:all .2s ease}.publish-success-copy-btn:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.publish-success-copy-btn.copied{background:#10b981}.publish-success-copy-btn.copied i:before{content:""}.publish-success-info{display:flex;flex-direction:column;gap:10px;margin-bottom:24px;padding:16px;background:#10b98114;border-radius:12px;border:1px solid rgba(16,185,129,.15)}.publish-success-info-item{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--color-text)}.publish-success-info-item i{font-size:16px;color:#10b981}.publish-success-actions{display:flex;gap:12px;justify-content:center;margin-bottom:20px}.publish-success-open-btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.publish-success-actions .btn-primary,.publish-success-actions .btn-secondary{min-width:140px;padding:12px 24px;font-size:14px;font-weight:600}.publish-success-actions .btn-primary i,.publish-success-actions .btn-secondary i{font-size:16px}.publish-success-tip{font-size:12px;color:var(--color-muted);margin:0;padding:12px 16px;background:#ffffff08;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:8px}.publish-success-tip i{color:#f59e0b;font-size:14px}.publish-success-tip a{color:var(--color-accent);text-decoration:underline}.publish-success-tip a:hover{color:var(--color-accent-hover)}.publish-error-title{color:#ef4444!important}.publish-error-details{text-align:left;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:12px;margin-bottom:20px;overflow:hidden}.publish-error-details-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.15);font-size:13px;font-weight:600;color:#ef4444}.publish-error-details-text{margin:0;padding:12px 16px;font-size:12px;font-family:var(--font-mono);color:var(--color-text);white-space:pre-wrap;word-break:break-word;max-height:120px;overflow-y:auto;background:transparent}[data-theme=light] .publish-error-details{background:#ef44440d}.publish-success-steps{text-align:left;background:#667eea14;border-radius:12px;padding:20px;margin-bottom:20px;border:1px solid rgba(102,126,234,.15)}.publish-success-steps-title{font-size:14px;font-weight:600;color:var(--color-text-strong);margin:0 0 12px}.publish-success-steps-list{list-style:none;padding:0;margin:0;counter-reset:steps}.publish-success-steps-list li{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--color-border-subtle);counter-increment:steps;position:relative;padding:10px 0 10px 32px}.publish-success-steps-list li:last-child{border-bottom:none}.publish-success-steps-list li:before{content:counter(steps);position:absolute;left:0;width:22px;height:22px;background:#667eea33;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#667eea}.publish-success-steps-list li i{color:#667eea;font-size:16px}.publish-success-steps-list li span{font-size:13px;color:var(--color-text)}.publish-success-hosting-options{margin-bottom:24px}.publish-success-hosting-label{font-size:12px;color:var(--color-muted);margin:0 0 10px}.publish-success-hosting-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.hosting-badge{background:#ffffff0f;border:1px solid var(--color-border);border-radius:6px;padding:6px 12px;font-size:12px;color:var(--color-text);font-weight:500}[data-theme=light] .publish-success-modal{background:#fff}[data-theme=light] .publish-success-url-box{background:#00000008}[data-theme=light] .publish-success-info{background:#10b9810f}[data-theme=light] .publish-success-steps{background:#667eea0f}[data-theme=light] .publish-success-tip{background:#00000008}[data-theme=light] .hosting-badge{background:#0000000a}.delete-project-modal{max-width:500px;padding:0;overflow:hidden}.delete-project-header{background:linear-gradient(135deg,#ef444426,#ef44440d);padding:2rem;text-align:center;border-bottom:1px solid rgba(239,68,68,.2)}.delete-project-icon{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,#ef444433,#ef44441a);display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:#ef4444;border:2px solid rgba(239,68,68,.3);animation:deleteIconPulse 2s ease-in-out infinite}@keyframes deleteIconPulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 12px #ef444400}}.delete-project-title{margin:0;font-size:1.375rem;font-weight:600;color:var(--color-text)}.delete-project-body{padding:1.5rem 2rem}.delete-project-warning{color:var(--color-muted);margin:0 0 1rem;font-size:.9375rem}.delete-project-info{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.25rem}.delete-project-name{font-weight:600;font-size:1.125rem;color:var(--color-text);margin-bottom:.25rem}.delete-project-url{font-size:.8125rem;color:var(--color-muted);word-break:break-all;font-family:var(--font-mono)}.delete-project-consequences{background:#ef44440f;border:1px solid rgba(239,68,68,.15);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.delete-project-consequences h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#ef4444;display:flex;align-items:center;gap:.5rem}.delete-project-consequences ul{margin:0;padding:0;list-style:none}.delete-project-consequences li{font-size:.8125rem;color:var(--color-text);padding:.375rem 0;display:flex;align-items:center;gap:.625rem}.delete-project-consequences li i{color:#ef4444;font-size:.75rem;opacity:.7}.delete-project-note{display:flex;align-items:flex-start;gap:.625rem;padding:.875rem 1rem;background:#667eea14;border-radius:8px;font-size:.8125rem;color:var(--color-muted);margin-bottom:1.25rem}.delete-project-note i{color:var(--color-accent);font-size:1rem;flex-shrink:0;margin-top:.125rem}.delete-project-confirm{margin-bottom:.5rem}.delete-project-confirm label{display:block;font-size:.875rem;font-weight:500;color:var(--color-text);margin-bottom:.5rem}.delete-confirm-input{width:100%;padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);font-size:.9375rem;transition:all .2s ease}.delete-confirm-input:focus{outline:none;border-color:#ef4444;box-shadow:0 0 0 3px #ef444426}.delete-confirm-input.valid{border-color:#10b981}.delete-confirm-input.invalid{border-color:#ef4444}.delete-confirm-hint{font-size:.75rem;color:var(--color-muted);margin:.375rem 0 0;min-height:1rem}.delete-confirm-hint.error{color:#ef4444}.delete-project-actions{display:flex;gap:.75rem;padding:1.25rem 2rem;border-top:1px solid var(--color-border);background:var(--color-panel)}.delete-project-actions .btn-secondary{flex:1}.delete-project-actions .btn-danger{flex:1.5;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s ease}.delete-project-actions .btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 4px 12px #ef444459}.delete-project-actions .btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.delete-project-actions .btn-danger:active:not(:disabled){transform:translateY(0)}[data-theme=light] .delete-project-modal{background:#fff}[data-theme=light] .delete-project-header{background:linear-gradient(135deg,#ef44441a,#ef444408)}[data-theme=light] .delete-project-info{background:#00000005}[data-theme=light] .delete-project-consequences{background:#ef44440a}[data-theme=light] .delete-project-note{background:#667eea0f}.role-switcher-card{background:var(--color-panel);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-soft);color:var(--color-text);transition:all var(--transition)}.role-switcher-card.role-changing{transform:scale(.98);box-shadow:var(--shadow-elevated)}.role-switcher-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border-subtle)}.role-switcher-title{font-size:1.1rem;font-weight:600;color:var(--color-text-strong);margin:0}.device-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.device-type{font-size:.85rem;font-weight:500;color:var(--color-text)}.device-size{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.role-buttons{display:flex;gap:12px;margin-bottom:16px}.role-btn{flex:1;display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--interactive-bg);color:var(--color-text);cursor:pointer;transition:all var(--transition);position:relative;overflow:hidden}.role-btn:hover{background:var(--interactive-bg-hover);border-color:var(--interactive-border-hover);transform:translateY(-1px);box-shadow:var(--shadow-hover)}.role-btn:active{transform:translateY(0)}.role-btn.active{background:var(--interactive-bg-active);border-color:var(--interactive-border-active);box-shadow:var(--shadow-selected);color:var(--color-text-strong)}.role-btn.active:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-accent)}.role-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.role-btn:disabled:hover{background:var(--interactive-bg);border-color:var(--color-border);box-shadow:none}.role-btn i{font-size:1.5rem;color:var(--color-accent);opacity:.8;transition:all var(--transition)}.role-btn.active i{opacity:1;transform:scale(1.1)}.icon-controller:before{content:""}.icon-display:before{content:""}.role-btn-content{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.role-btn-title{font-size:.95rem;font-weight:600;color:inherit}.role-btn-desc{font-size:.8rem;color:var(--color-text-secondary);line-height:1.2}.role-btn.active .role-btn-desc{color:var(--color-text)}.role-status{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--color-border-subtle)}.connection-indicator{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:500}.connection-indicator i{font-size:1rem;transition:all var(--transition)}.connection-indicator.connected{color:var(--status-published-text)}.connection-indicator.connected i{color:var(--status-published-bg);animation:sync-pulse 2s ease-in-out infinite}.connection-indicator.disconnected{color:var(--color-text-secondary)}.connection-indicator.disconnected i{color:var(--color-muted)}.icon-sync:before{content:""}.capability-hints{display:flex;flex-direction:column;align-items:flex-end}.hint{font-size:.75rem;color:var(--color-text-secondary);font-style:italic}.role-notification{position:absolute;top:-50px;left:50%;transform:translate(-50%) translateY(-10px);display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius-md);font-size:.85rem;font-weight:500;opacity:0;transition:all .3s ease;z-index:1000;pointer-events:none;white-space:nowrap}.role-notification.show{opacity:1;transform:translate(-50%) translateY(0)}.role-notification--success{background:var(--status-published-bg);color:var(--status-published-text);border:1px solid var(--status-published-border)}.role-notification--error{background:var(--color-danger);color:var(--text-inverse);border:1px solid var(--color-danger)}.role-notification--info{background:var(--status-default-bg);color:var(--status-default-text);border:1px solid var(--status-default-border)}body.role-controller .display-only,body.role-display .controller-only{display:none!important}body.role-display .map-toolbar .edit-controls,body.role-display .sidebar .poi-create-btn,body.role-display .navbar-center .edit-tools{opacity:.5;pointer-events:none}body.role-display .map-canvas{cursor:default!important}@keyframes sync-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@media(max-width:768px){.role-buttons{flex-direction:column}.role-btn{padding:12px}.device-info{align-items:flex-start}.role-status{flex-direction:column;align-items:flex-start;gap:8px}.capability-hints{align-items:flex-start}}.sidebar .role-switcher-card{margin-bottom:16px;padding:16px}.sidebar .role-btn{padding:12px}.sidebar .role-btn i{font-size:1.2rem}.sync-modal .role-switcher-card{margin-top:20px}.bg-backdrop{position:fixed;inset:0;background:radial-gradient(circle at 20% 20%,var(--bg-grid-accent1),transparent 45%),radial-gradient(circle at 80% 0%,var(--bg-grid-accent2),transparent 50%),var(--bg-grid-bg);overflow:hidden;pointer-events:none;z-index:0}.bg-backdrop:before{content:"";position:absolute;width:220%;height:220%;top:-60%;left:-60%;background:repeating-linear-gradient(110deg,var(--bg-grid-line) 0 2px,transparent 2px 16px);animation:bg-rotate-grid 720s linear infinite;opacity:.33}.bg-backdrop:after{content:"";position:absolute;width:220%;height:220%;top:-60%;left:-60%;background:repeating-linear-gradient(110deg,var(--bg-grid-line-2) 0 2px,transparent 2px 16px);animation:bg-rotate-grid 720s linear infinite;animation-direction:reverse;opacity:.12;filter:blur(4px)}.bg-orb{position:absolute;border-radius:50%;filter:blur(1px);opacity:.8;animation:bg-float 42s ease-in-out infinite}.bg-orb.orb-a{width:260px;height:260px;background:radial-gradient(circle,var(--bg-grid-orb-1) 0%,rgba(0,0,0,0) 70%);top:15%;left:60%}.bg-orb.orb-b{width:340px;height:340px;background:radial-gradient(circle,var(--bg-grid-orb-2) 0%,rgba(0,0,0,0) 70%);bottom:10%;right:55%;animation-duration:60s;animation-delay:-10s}@keyframes bg-rotate-grid{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bg-float{0%,to{transform:translate3d(-30%,-25%,0)}50%{transform:translate3d(10%,15%,0) scale(1.1)}}.auth-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.auth-field label{font-size:.9rem;font-weight:500;color:var(--color-text)}.auth-field input{width:100%;padding:10px 12px;font-size:.95rem;border-radius:8px;background:var(--color-input-bg);color:var(--color-text);border:1px solid var(--color-input-border);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.auth-field input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #5a8bff1f}.auth-field input::-moz-placeholder{color:var(--color-placeholder)}.auth-field input::placeholder{color:var(--color-placeholder)}.field-hint{font-size:.8rem;color:var(--color-muted);margin-top:-2px}.field-optional{font-size:.85rem;color:var(--color-muted);font-weight:400}.required-indicator{color:var(--color-accent);margin-left:2px}.auth-error{padding:10px 12px;background:#e666661f;border:1px solid rgba(230,102,102,.3);border-radius:8px;color:#f99;font-size:.9rem;margin-top:8px;display:flex;align-items:center;gap:8px}.auth-error:before{content:"";font-size:1.1rem}.auth-success{padding:10px 12px;background:#4ef2a81f;border:1px solid rgba(78,242,168,.3);border-radius:8px;color:#4ef2a8;font-size:.9rem;margin-top:8px;display:flex;align-items:center;gap:8px}.auth-success:before{content:"✓";font-size:1.1rem;font-weight:700}.auth-switch{text-align:center;padding:12px 16px 0;font-size:.9rem;color:var(--color-text-secondary);border-top:1px solid var(--color-border);margin-top:12px}.auth-switch-btn{background:none;border:none;color:var(--color-accent);font-weight:500;cursor:pointer;padding:0;text-decoration:underline;transition:color .2s ease}.auth-switch-btn:hover{color:#7a9fff}.auth-switch-btn:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}#register-modal .modal-body,#login-modal .modal-body{padding:20px}#register-modal .modal-footer,#login-modal .modal-footer{padding:16px 20px;display:flex;gap:10px;justify-content:flex-end}#register-modal .modal-header,#login-modal .modal-header{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:600}.btn-primary.loading,.btn-secondary.loading{position:relative;color:transparent;pointer-events:none}.btn-primary.loading:after,.btn-secondary.loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:btn-spinner .6s linear infinite}@keyframes btn-spinner{to{transform:rotate(360deg)}}.mixx-ai-panel{position:fixed;top:60px;right:20px;bottom:25px;width:clamp(320px,22vw,360px);transform:translate(calc(100% + 20px));background:var(--panel-semi-transparent);border-left:1px solid var(--border-semi-transparent);box-shadow:-14px 0 30px #00000059;backdrop-filter:blur(16px) saturate(1.05);-webkit-backdrop-filter:blur(16px) saturate(1.05);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;overflow:hidden;z-index:900;pointer-events:none;transition:transform 2.4s cubic-bezier(.3,0,.1,1)}.mixx-ai-panel.hidden{transform:translate(calc(100% + 20px));pointer-events:none}.mixx-ai-panel.visible{transform:translate(0);pointer-events:auto}.mixx-ai-panel__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.mixx-ai-panel__title{display:inline-flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.06em;font-size:1rem;color:var(--color-text, #e7e7ea)}:root{--ai-color-dormant: rgba(255, 255, 255, .8);--ai-color-dormant-glow: rgba(255, 255, 255, .5);--ai-color-listening: rgba(134, 239, 172, 1);--ai-color-listening-glow: rgba(134, 239, 172, .6);--ai-color-thinking: rgba(59, 130, 246, 1);--ai-color-thinking-glow: rgba(59, 130, 246, .6);--ai-color-speaking: rgba(147, 197, 253, 1);--ai-color-speaking-glow: rgba(147, 197, 253, .6);--ai-color-error: rgba(239, 68, 68, 1);--ai-color-error-glow: rgba(239, 68, 68, .6)}.mixx-ai-logo{width:22px;height:22px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 0 6px var(--ai-color-dormant-glow));transition:filter .3s ease}.mixx-ai-logo.ai-dormant,.mixx-ai-logo:not(.ai-listening):not(.ai-thinking):not(.ai-speaking){animation:aiPulseDormant 3s ease-in-out infinite}@keyframes aiPulseDormant{0%,to{filter:drop-shadow(0 0 4px var(--ai-color-dormant-glow));transform:scale(1)}50%{filter:drop-shadow(0 0 8px var(--ai-color-dormant));transform:scale(1.02)}}.mixx-ai-logo.ai-listening{animation:aiPulseListening 1.2s ease-in-out infinite}@keyframes aiPulseListening{0%,to{filter:drop-shadow(0 0 6px var(--ai-color-listening-glow));transform:scale(1)}50%{filter:drop-shadow(0 0 14px var(--ai-color-listening));transform:scale(1.06)}}.mixx-ai-logo.ai-thinking{animation:aiPulseThinking 1.5s ease-in-out infinite}@keyframes aiPulseThinking{0%,to{filter:drop-shadow(0 0 6px var(--ai-color-thinking-glow));transform:scale(1)}50%{filter:drop-shadow(0 0 12px var(--ai-color-thinking));transform:scale(1.04)}}.mixx-ai-logo.ai-speaking,.mixx-ai-logo.pulsing{animation:aiPulseSpeaking 1s ease-in-out infinite}@keyframes aiPulseSpeaking{0%,to{filter:drop-shadow(0 0 6px var(--ai-color-speaking-glow));transform:scale(1)}50%{filter:drop-shadow(0 0 14px var(--ai-color-speaking));transform:scale(1.06)}}.mixx-ai-logo.ai-error{animation:aiPulseError 1s ease-in-out infinite}@keyframes aiPulseError{0%,to{filter:drop-shadow(0 0 6px var(--ai-color-error-glow));transform:scale(1)}50%{filter:drop-shadow(0 0 14px var(--ai-color-error));transform:scale(1.04)}}.mode-selector.ai-error{box-shadow:0 0 0 12px #ef444440,0 0 30px #ef444466,0 0 60px #ef444433;background:color-mix(in srgb,var(--interactive-bg-active) 80%,transparent 20%);transform:scale(2);z-index:10100;animation:modeSelectorPulseRed .8s ease-in-out infinite}@keyframes modeSelectorPulseRed{0%,to{box-shadow:0 0 0 12px #ef444440,0 0 30px #ef444466,0 0 60px #ef444433;transform:scale(2)}50%{box-shadow:0 0 0 16px #ef444466,0 0 45px #ef44448c,0 0 90px #ef444459;transform:scale(2.08)}}.mixx-ai-panel__tts,.mixx-ai-panel__clear,.mixx-ai-panel__close{border:1px solid var(--color-border, rgba(255, 255, 255, .08));background:transparent;color:var(--color-text, #e7e7ea);padding:6px 10px;border-radius:10px;cursor:pointer}.mixx-ai-panel__tts{margin-right:8px;font-size:1rem}.mixx-ai-panel__tts:hover{background:#ffffff0d}.mixx-ai-panel__tts.tts-off{opacity:.5}.mixx-ai-panel__tts.tts-off:hover{opacity:.8}.mixx-ai-panel__clear{margin-right:8px;opacity:.7}.mixx-ai-panel__clear:hover{opacity:1;background:#ffffff0d}.mixx-ai-panel__log{flex:1;overflow-y:auto;padding:12px;border:1px solid var(--border-semi-transparent);border-radius:12px;background:var(--panel-semi-transparent);color:var(--color-text, #e7e7ea)}.mixx-ai-panel__input{display:flex;gap:8px;align-items:center}.mixx-ai-panel__input input{flex:1;padding:10px 12px;border-radius:12px;border:1px solid var(--border-semi-transparent);background:var(--bg-semi-transparent);color:var(--color-text, #e7e7ea)}.mixx-ai-panel__input button{padding:10px 10.8px;border-radius:12px;border:none;background:var(--color-accent, #5a8bff);color:#fff;font-weight:700;cursor:pointer;transition:all .2s ease}.mixx-ai-panel__input button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5a8bff4d}.mixx-ai-mic-btn{background:var(--panel-80-transparent)!important;border:1px solid var(--border-semi-transparent)!important;color:var(--color-text, #e7e7ea)!important;padding:10px 14px!important}.mixx-ai-mic-btn:hover{background:var(--accent-panel-mix)!important;border-color:var(--color-accent, #5a8bff)!important;box-shadow:0 4px 12px #5a8bff33!important}.mixx-ai-mic-btn.is-listening{background:#ff525226!important;border-color:#ff525266!important;color:#ff5252!important;animation:micPulse 1.5s ease-in-out infinite}@keyframes micPulse{0%,to{box-shadow:0 0 #ff525266}50%{box-shadow:0 0 0 6px #ff525200}}.mixx-ai-mic-btn i{font-size:.95rem}.mixx-ai-message{margin-bottom:12px;display:flex;flex-direction:column;gap:4px;animation:messageSlideIn .3s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mixx-ai-message__label{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.7}.mixx-ai-message__bubble{padding:10px 14px;border-radius:16px;max-width:85%;word-wrap:break-word;line-height:1.5;white-space:pre-line;font-size:.9rem}.mixx-ai-message--user{align-items:flex-end}.mixx-ai-message--user .mixx-ai-message__bubble{background:linear-gradient(135deg,var(--color-accent, #5a8bff),var(--color-accent-strong, #89b3ff));color:#fff;border-bottom-right-radius:4px}.mixx-ai-message--assistant{align-items:flex-start}.mixx-ai-message--assistant .mixx-ai-message__bubble{background:color-mix(in srgb,var(--color-panel, #111116) 80%,transparent 20%);border:1px solid color-mix(in srgb,var(--color-border, rgba(255, 255, 255, .08)) 50%,transparent 50%);color:var(--color-text, #e7e7ea);border-bottom-left-radius:4px}.mixx-ai-message--typing{align-items:flex-start}.mixx-ai-message--typing .mixx-ai-message__bubble{background:color-mix(in srgb,var(--color-panel, #111116) 70%,transparent 30%);border:1px dashed color-mix(in srgb,var(--color-border, rgba(255, 255, 255, .08)) 50%,transparent 50%);color:var(--color-muted, rgba(231, 231, 234, .68));padding:8px 12px;font-style:italic}:root[data-theme=light] .mixx-ai-panel,body.light-mode .mixx-ai-panel,.theme-light .mixx-ai-panel{background:color-mix(in srgb,var(--color-panel, #ffffff) 50%,transparent 50%);border-left:1px solid color-mix(in srgb,var(--color-border, rgba(0, 0, 0, .08)) 50%,transparent 50%);border-radius:16px 0 0 16px}:root[data-theme=light] .mixx-ai-panel__log,body.light-mode .mixx-ai-panel__log,.theme-light .mixx-ai-panel__log{border:1px solid color-mix(in srgb,var(--color-border, rgba(0, 0, 0, .08)) 50%,transparent 50%);background:color-mix(in srgb,var(--color-panel, #ffffff) 50%,transparent 50%);color:var(--color-text, #1f2030)}:root[data-theme=light] .mixx-ai-panel__input input,body.light-mode .mixx-ai-panel__input input,.theme-light .mixx-ai-panel__input input{border:1px solid color-mix(in srgb,var(--color-border, rgba(0, 0, 0, .08)) 50%,transparent 50%);background:color-mix(in srgb,var(--color-bg, #f5f6fb) 50%,transparent 50%);color:var(--color-text, #1f2030)}:root[data-theme=light] .mixx-ai-mic-btn,body.light-mode .mixx-ai-mic-btn,.theme-light .mixx-ai-mic-btn{background:color-mix(in srgb,var(--color-panel, #ffffff) 80%,transparent 20%)!important;border:1px solid color-mix(in srgb,var(--color-border, rgba(0, 0, 0, .12)) 50%,transparent 50%)!important;color:var(--color-text, #1f2030)!important}:root[data-theme=light] .mixx-ai-mic-btn:hover,body.light-mode .mixx-ai-mic-btn:hover,.theme-light .mixx-ai-mic-btn:hover{background:color-mix(in srgb,var(--color-accent, #5a8bff) 15%,var(--color-panel, #ffffff) 85%)!important}.profile-menu{z-index:10001!important}.poi-item.highlighted,.poi-list-item.highlighted,[data-poi].highlighted{animation:poi-highlight-pulse .5s ease-out 3;background:#3b82f633!important;box-shadow:0 0 0 2px var(--color-accent, #3b82f6)}.text-chip--poi.highlighted{animation:poi-highlight-pulse .5s ease-out 3;background:#3b82f64d!important;box-shadow:0 0 0 2px var(--color-accent, #3b82f6),0 0 12px #3b82f666}.poi-highlight-pulse{animation:marker-pulse .6s ease-out 3}@keyframes poi-highlight-pulse{0%{box-shadow:0 0 #3b82f680}50%{box-shadow:0 0 0 8px #3b82f600}to{box-shadow:0 0 #3b82f600}}@keyframes marker-pulse{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.3);filter:brightness(1.5)}to{transform:scale(1);filter:brightness(1)}}.dashboard-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.dashboard-overlay.visible{opacity:1;visibility:visible}.dashboard-panel{position:fixed;top:0;right:0;width:min(800px,90vw);height:100vh;background:var(--color-panel);border-left:1px solid var(--color-border);z-index:9999;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-8px 0 32px #0003}.dashboard-panel.open{transform:translate(0)}.dashboard-panel-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;background:var(--color-bg);flex-shrink:0}.dashboard-panel-header h2{margin:0;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:.75rem;color:var(--color-text)}.dashboard-panel-header h2 i{color:var(--color-accent)}.dashboard-header-actions{display:flex;align-items:center;gap:.5rem}.dashboard-control-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-panel);color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:1.125rem}.dashboard-control-btn:hover{background:var(--color-bg);border-color:var(--color-accent);color:var(--color-accent)}.dashboard-panel-content{flex:1;overflow:hidden;position:relative;background:var(--color-bg)}.dashboard-iframe{width:100%;height:100%;border:none;background:var(--color-bg)}.dashboard-loading-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-bg);color:var(--color-muted);gap:1rem;z-index:1}.dashboard-loading-state p{margin:0;font-size:.875rem}.dashboard-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:dashboard-spin .8s linear infinite}@keyframes dashboard-spin{to{transform:rotate(360deg)}}.dashboard-iframe:not([src=""])~.dashboard-loading-state,.dashboard-iframe[data-loaded=true]~.dashboard-loading-state{display:none}.dashboard-panel.expanded{width:100vw;border-left:none}.dashboard-overlay.expanded{display:none}@media(max-width:640px){.dashboard-panel{width:100vw}}.tour-overlay{position:fixed;inset:0;background:transparent;z-index:10000;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.tour-overlay.active{opacity:1;visibility:visible}.tour-overlay.no-target{background:#000000bf}body.tour-active{overflow:hidden}.tour-highlight{position:absolute;border-radius:12px;background:transparent;box-shadow:0 0 0 4px var(--color-accent, #3b82f6),0 0 0 9999px #000000bf;z-index:10001;pointer-events:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.tour-tooltip{position:absolute;background:var(--color-panel, #1a1a2e);border:1px solid var(--color-border, #2d2d44);border-radius:16px;padding:1.5rem;width:340px;max-width:calc(100vw - 2rem);z-index:10002;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff0d inset}@keyframes tourTooltipSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tour-tooltip-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.tour-tooltip-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--color-accent, #3b82f6),var(--color-accent-hover, #2563eb));display:flex;align-items:center;justify-content:center;flex-shrink:0}.tour-tooltip-icon i{font-size:1.5rem;color:#fff}.tour-tooltip-title{font-size:1.25rem;font-weight:600;color:var(--color-text, #e5e7eb);line-height:1.3}.tour-tooltip-desc{font-size:.9375rem;line-height:1.6;color:var(--color-muted, #9ca3af);margin-bottom:1.25rem}.tour-tooltip-footer{display:flex;flex-direction:column;gap:1rem}.tour-step-counter{font-size:.75rem;color:var(--color-muted, #9ca3af);text-align:center}.tour-progress{display:flex;justify-content:center;gap:6px}.tour-progress-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border, #2d2d44);transition:all .3s ease}.tour-progress-dot.completed{background:var(--color-accent, #3b82f6);opacity:.4}.tour-progress-dot.active{background:var(--color-accent, #3b82f6);transform:scale(1.25);box-shadow:0 0 8px var(--color-accent, #3b82f6)}.tour-actions{display:flex;gap:.75rem;justify-content:flex-end}.tour-btn{padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.tour-btn-skip{background:transparent;color:var(--color-muted, #9ca3af);border:1px solid var(--color-border, #2d2d44)}.tour-btn-skip:hover{background:var(--color-bg, #0a0a14);color:var(--color-text, #e5e7eb);border-color:var(--color-text, #e5e7eb)}.tour-btn-next{background:var(--color-accent, #3b82f6);color:#fff}.tour-btn-next:hover{background:var(--color-accent-hover, #2563eb);transform:translate(2px)}.tour-btn-next i{transition:transform .2s ease}.tour-btn-next:hover i{transform:translate(3px)}.tour-skip-all{text-align:center;font-size:.75rem;color:var(--color-muted, #9ca3af);cursor:pointer;padding:.5rem;margin-top:.5rem;opacity:.7;transition:opacity .2s ease}.tour-skip-all:hover{opacity:1;text-decoration:underline}@media(max-width:480px){.tour-tooltip{width:calc(100vw - 2rem);padding:1.25rem}.tour-tooltip-icon{width:40px;height:40px}.tour-tooltip-icon i{font-size:1.25rem}.tour-tooltip-title{font-size:1.125rem}.tour-tooltip-desc{font-size:.875rem}}[data-animations=off] .tour-overlay,[data-animations=off] .tour-highlight{transition:none}[data-animations=off] .tour-tooltip{animation:none}[data-animations=off] .tour-progress-dot,[data-animations=off] .tour-btn{transition:none}[data-animations=off] .tour-btn-next:hover,[data-animations=off] .tour-btn-next:hover i{transform:none}.concierge-overlay{position:fixed;inset:0;z-index:10000;background:#000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .5s cubic-bezier(.4,0,.2,1),visibility .5s ease;overflow:hidden}.concierge-overlay.concierge-visible{opacity:1;visibility:visible}.concierge-overlay.concierge-exit{opacity:0;visibility:hidden}.concierge-bg{position:absolute;inset:0;z-index:0;overflow:hidden}.concierge-bg-gradient{position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 50% 50%,rgba(90,139,255,.08) 0%,transparent 50%),radial-gradient(ellipse 60% 80% at 30% 20%,rgba(90,139,255,.05) 0%,transparent 40%),radial-gradient(ellipse 50% 60% at 70% 80%,rgba(120,80,200,.04) 0%,transparent 40%),linear-gradient(180deg,#050508,#0a0a12,#050508);animation:bgPulse 8s ease-in-out infinite}@keyframes bgPulse{0%,to{opacity:1}50%{opacity:.85}}.concierge-bg-particles{position:absolute;inset:0;overflow:hidden}.concierge-bg-particles span{position:absolute;width:2px;height:2px;background:#5a8bff80;border-radius:50%;box-shadow:0 0 8px #5a8bff66}.concierge-bg-particles span:nth-child(1){left:10%;top:20%;animation:particleFloat 12s ease-in-out infinite}.concierge-bg-particles span:nth-child(2){left:20%;top:60%;animation:particleFloat 15s ease-in-out infinite 1s}.concierge-bg-particles span:nth-child(3){left:35%;top:30%;animation:particleFloat 10s ease-in-out infinite 2s}.concierge-bg-particles span:nth-child(4){left:50%;top:70%;animation:particleFloat 14s ease-in-out infinite .5s}.concierge-bg-particles span:nth-child(5){left:65%;top:25%;animation:particleFloat 11s ease-in-out infinite 3s}.concierge-bg-particles span:nth-child(6){left:75%;top:55%;animation:particleFloat 13s ease-in-out infinite 1.5s}.concierge-bg-particles span:nth-child(7){left:85%;top:35%;animation:particleFloat 16s ease-in-out infinite 2.5s}.concierge-bg-particles span:nth-child(8){left:15%;top:80%;animation:particleFloat 9s ease-in-out infinite 4s}.concierge-bg-particles span:nth-child(9){left:45%;top:15%;animation:particleFloat 17s ease-in-out infinite .8s}.concierge-bg-particles span:nth-child(10){left:90%;top:75%;animation:particleFloat 12s ease-in-out infinite 3.5s}@keyframes particleFloat{0%,to{transform:translateY(0) translate(0);opacity:.3}25%{transform:translateY(-30px) translate(10px);opacity:.6}50%{transform:translateY(-15px) translate(-15px);opacity:.4}75%{transform:translateY(-40px) translate(5px);opacity:.7}}.concierge-container{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:40px;max-width:520px;width:90%;padding:48px 32px;transform:scale(0);opacity:0;animation:conciergeScaleIn 3s cubic-bezier(.16,1,.3,1) forwards}@keyframes conciergeScaleIn{0%{opacity:0;transform:scale(0)}30%{opacity:1}to{opacity:1;transform:scale(1)}}.concierge-orb-wrapper{display:flex;flex-direction:column;align-items:center;gap:20px;margin-bottom:16px}.concierge-orb{position:relative;width:180px;height:180px;border-radius:50%;background:transparent;display:flex;align-items:center;justify-content:center;transition:filter .4s ease,transform .4s ease}.concierge-orb-img{width:140px;height:140px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 0 40px var(--ai-color-dormant-glow)) drop-shadow(0 0 80px rgba(255,255,255,.15));z-index:1;transition:filter .3s ease,transform .3s ease}.concierge-level-bars{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);display:flex;gap:4px;height:32px;align-items:flex-end;opacity:0;transition:opacity .3s ease}.concierge-level-bars span{width:3px;background:linear-gradient(to top,var(--ai-color-listening-glow),var(--ai-color-listening));border-radius:1.5px;transition:height .08s ease}.concierge-orb.concierge-idle .concierge-orb-img{animation:conciergeIdleGlow 4s ease-in-out infinite}@keyframes conciergeIdleGlow{0%,to{filter:drop-shadow(0 0 30px var(--ai-color-dormant-glow)) drop-shadow(0 0 60px rgba(255,255,255,.1));transform:scale(1)}50%{filter:drop-shadow(0 0 50px var(--ai-color-dormant)) drop-shadow(0 0 100px rgba(255,255,255,.2));transform:scale(1.02)}}.concierge-orb.concierge-listening .concierge-orb-img{animation:conciergeListeningGlow 1.5s ease-in-out infinite}.concierge-orb.concierge-listening .concierge-level-bars{opacity:1}.concierge-orb.concierge-listening .concierge-level-bars span:nth-child(1){animation:levelBar1 .5s ease-in-out infinite}.concierge-orb.concierge-listening .concierge-level-bars span:nth-child(2){animation:levelBar2 .4s ease-in-out infinite}.concierge-orb.concierge-listening .concierge-level-bars span:nth-child(3){animation:levelBar3 .45s ease-in-out infinite}.concierge-orb.concierge-listening .concierge-level-bars span:nth-child(4){animation:levelBar4 .35s ease-in-out infinite}.concierge-orb.concierge-listening .concierge-level-bars span:nth-child(5){animation:levelBar5 .55s ease-in-out infinite}@keyframes levelBar1{0%,to{height:8px}50%{height:24px}}@keyframes levelBar2{0%,to{height:12px}50%{height:28px}}@keyframes levelBar3{0%,to{height:16px}50%{height:32px}}@keyframes levelBar4{0%,to{height:10px}50%{height:20px}}@keyframes levelBar5{0%,to{height:14px}50%{height:26px}}@keyframes conciergeListeningGlow{0%,to{filter:drop-shadow(0 0 40px var(--ai-color-listening-glow)) drop-shadow(0 0 80px rgba(134,239,172,.25));transform:scale(1)}50%{filter:drop-shadow(0 0 60px var(--ai-color-listening)) drop-shadow(0 0 120px rgba(134,239,172,.35));transform:scale(1.03)}}.concierge-orb.concierge-thinking .concierge-orb-img{animation:conciergeThinkingGlow 2s ease-in-out infinite}@keyframes conciergeThinkingGlow{0%,to{filter:drop-shadow(0 0 35px var(--ai-color-thinking-glow)) drop-shadow(0 0 70px rgba(59,130,246,.15)) brightness(1)}50%{filter:drop-shadow(0 0 45px var(--ai-color-thinking)) drop-shadow(0 0 90px rgba(59,130,246,.25)) brightness(1.1)}}.concierge-orb.concierge-speaking .concierge-orb-img{animation:conciergeSpeakingGlow 1s ease-in-out infinite}@keyframes conciergeSpeakingGlow{0%,to{filter:drop-shadow(0 0 50px var(--ai-color-speaking-glow)) drop-shadow(0 0 100px rgba(147,197,253,.3));transform:scale(1)}50%{filter:drop-shadow(0 0 70px var(--ai-color-speaking)) drop-shadow(0 0 140px rgba(147,197,253,.4));transform:scale(1.015)}}.concierge-indicator{font-size:.7rem;font-weight:400;color:var(--ai-color-dormant);text-transform:uppercase;letter-spacing:.2em;min-height:18px;opacity:0;transition:opacity .3s ease,color .3s ease}.concierge-orb.concierge-listening+.concierge-indicator,.concierge-orb-wrapper:has(.concierge-listening) .concierge-indicator{color:var(--ai-color-listening)}.concierge-orb.concierge-thinking+.concierge-indicator,.concierge-orb-wrapper:has(.concierge-thinking) .concierge-indicator{color:var(--ai-color-thinking)}.concierge-orb.concierge-speaking+.concierge-indicator,.concierge-orb-wrapper:has(.concierge-speaking) .concierge-indicator{color:var(--ai-color-speaking)}.concierge-indicator.active{opacity:1}.concierge-caption{min-height:48px;max-height:100px;width:100%;padding:0 16px;background:transparent;border:none;color:#ffffffeb;font-size:1.25rem;font-weight:300;line-height:1.6;text-align:center;overflow-y:auto;letter-spacing:.01em}.concierge-caption.typing:after{content:"";display:inline-block;width:2px;height:1.1em;background:#5a8bffcc;margin-left:3px;vertical-align:text-bottom;animation:cursorBlink .8s steps(1) infinite}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}.concierge-begin-btn{padding:8px 24px;border-radius:20px;border:1px solid rgba(255,255,255,.1);background:transparent;color:#ffffff80;font-size:.8rem;font-weight:400;letter-spacing:.05em;cursor:pointer;transition:all .25s ease;margin-top:16px}.concierge-begin-btn:hover{background:#ffffff0d;border-color:#fff3;color:#fffc}:root[data-theme=light] .concierge-overlay,body.light-mode .concierge-overlay,.theme-light .concierge-overlay{background:#f8f9fc}:root[data-theme=light] .concierge-bg-gradient,body.light-mode .concierge-bg-gradient,.theme-light .concierge-bg-gradient{background:radial-gradient(ellipse 80% 50% at 50% 50%,rgba(90,139,255,.06) 0%,transparent 50%),radial-gradient(ellipse 60% 80% at 30% 20%,rgba(90,139,255,.04) 0%,transparent 40%),radial-gradient(ellipse 50% 60% at 70% 80%,rgba(120,80,200,.03) 0%,transparent 40%),linear-gradient(180deg,#f5f7fc,#eef1f8,#f5f7fc)}:root[data-theme=light] .concierge-bg-particles span,body.light-mode .concierge-bg-particles span,.theme-light .concierge-bg-particles span{background:#5a8bff66;box-shadow:0 0 6px #5a8bff4d}:root[data-theme=light] .concierge-caption,body.light-mode .concierge-caption,.theme-light .concierge-caption{color:var(--color-text, #1f2030)}:root[data-theme=light] .concierge-begin-btn,body.light-mode .concierge-begin-btn,.theme-light .concierge-begin-btn{border-color:#0000001f;color:#00000080}:root[data-theme=light] .concierge-begin-btn:hover,body.light-mode .concierge-begin-btn:hover,.theme-light .concierge-begin-btn:hover{background:#0000000a;border-color:#0003;color:#000000b3}:root[data-theme=light] .concierge-indicator,body.light-mode .concierge-indicator,.theme-light .concierge-indicator{color:var(--color-accent, #5a8bff)}[data-animations=off] .concierge-overlay{transition:none}[data-animations=off] .concierge-container{animation:none;transform:scale(1);opacity:1}[data-animations=off] .concierge-bg-gradient{animation:none}[data-animations=off] .concierge-bg-particles span{animation:none;opacity:.5}[data-animations=off] .concierge-orb-img,[data-animations=off] .concierge-orb.concierge-idle .concierge-orb-img,[data-animations=off] .concierge-orb.concierge-listening .concierge-orb-img,[data-animations=off] .concierge-orb.concierge-thinking .concierge-orb-img,[data-animations=off] .concierge-orb.concierge-speaking .concierge-orb-img{animation:none}[data-animations=off] .concierge-level-bars span{animation:none;height:16px}[data-animations=off] .concierge-caption.typing:after{animation:none}@media(max-width:480px){.concierge-container{padding:32px 20px;gap:28px}.concierge-orb{width:140px;height:140px}.concierge-orb-img{width:110px;height:110px}.concierge-caption{font-size:1.1rem}}[data-animations=on],.enhanced-mode{--enhance-spring: cubic-bezier(.34, 1.56, .64, 1);--enhance-smooth: cubic-bezier(.4, 0, .2, 1);--enhance-bounce: cubic-bezier(.68, -.55, .265, 1.55);--enhance-snap: cubic-bezier(.25, .46, .45, .94);--enhance-duration-fast: .15s;--enhance-duration: .25s;--enhance-duration-slow: .4s;--enhance-glow-primary: rgba(102, 126, 234, .4);--enhance-glow-accent: rgba(118, 75, 226, .35);--enhance-shimmer-start: rgba(255, 255, 255, 0);--enhance-shimmer-mid: rgba(255, 255, 255, .12);--enhance-shimmer-end: rgba(255, 255, 255, 0)}[data-animations=on] .sidebar,.enhanced-mode .sidebar{transition:transform var(--enhance-duration) var(--enhance-smooth),box-shadow var(--enhance-duration) var(--enhance-smooth),opacity var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .sidebar:hover,.enhanced-mode .sidebar:hover{box-shadow:0 0 40px -10px var(--enhance-glow-primary),var(--shadow-elevated)}[data-animations=on] .workspace-panel,.enhanced-mode .workspace-panel{transition:box-shadow var(--enhance-duration) var(--enhance-smooth),transform var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .workspace-panel:hover,.enhanced-mode .workspace-panel:hover{box-shadow:0 0 40px -10px var(--enhance-glow-primary),0 0 60px -20px var(--enhance-glow-accent),var(--shadow-elevated)}[data-animations=on] .sidebar-tabs,.enhanced-mode .sidebar-tabs{position:relative}[data-animations=on] .tab-btn,.enhanced-mode .tab-btn{position:relative;overflow:hidden;transition:all var(--enhance-duration) var(--enhance-spring),transform var(--enhance-duration-fast) var(--enhance-spring)}[data-animations=on] .tab-btn:before,.enhanced-mode .tab-btn:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.15) 0%,transparent 60%);opacity:0;transition:opacity var(--enhance-duration-fast) ease;pointer-events:none}[data-animations=on] .tab-btn:hover:before,.enhanced-mode .tab-btn:hover:before{opacity:1}[data-animations=on] .tab-btn:hover,.enhanced-mode .tab-btn:hover{transform:translateY(-2px)}[data-animations=on] .tab-btn:active,.enhanced-mode .tab-btn:active{transform:translateY(0) scale(.98)}[data-animations=on] .tab-btn[data-tab=projects].active,.enhanced-mode .tab-btn[data-tab=projects].active{animation:enhancedTabPulse 2s ease-in-out infinite}[data-animations=on] .tab-btn[data-tab=current].active,.enhanced-mode .tab-btn[data-tab=current].active{box-shadow:0 0 12px 1px var(--enhance-glow-primary),var(--tab-shadow-active, var(--shadow-elevated));animation:none}@keyframes enhancedTabPulse{0%,to{box-shadow:0 0 0 0 var(--enhance-glow-primary),var(--tab-shadow-active, var(--shadow-elevated))}50%{box-shadow:0 0 16px 2px var(--enhance-glow-primary),var(--tab-shadow-active, var(--shadow-elevated))}}[data-animations=on] .tab-btn.active:after,.enhanced-mode .tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:50%;width:40%;height:3px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);transform:translate(-50%);border-radius:2px 2px 0 0;animation:enhancedTabIndicator .3s var(--enhance-spring) forwards}@keyframes enhancedTabIndicator{0%{width:0%;opacity:0}to{width:40%;opacity:1}}[data-animations=on] .subtab-btn,[data-animations=on] .data-primary-tab-btn,.enhanced-mode .subtab-btn,.enhanced-mode .data-primary-tab-btn{position:relative;overflow:hidden;transition:all var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .subtab-btn:hover,[data-animations=on] .data-primary-tab-btn:hover:not(.disabled),.enhanced-mode .subtab-btn:hover,.enhanced-mode .data-primary-tab-btn:hover:not(.disabled){transform:translateY(-1px);background:var(--interactive-bg-hover)}[data-animations=on] .subtab-btn.active,[data-animations=on] .data-primary-tab-btn.active,[data-animations=on] .data-inner-tab-btn.active,[data-animations=on] .media-inner-tab-btn.active,.enhanced-mode .subtab-btn.active,.enhanced-mode .data-primary-tab-btn.active,.enhanced-mode .data-inner-tab-btn.active,.enhanced-mode .media-inner-tab-btn.active{animation:enhancedTabPulseSync 3.5s ease-in-out infinite}@keyframes enhancedTabPulseSync{0%,to{box-shadow:0 0 0 0 var(--enhance-glow-secondary, rgba(99, 102, 241, .3))}50%{box-shadow:0 0 12px 3px var(--enhance-glow-secondary, rgba(99, 102, 241, .5))}}[data-animations=on] .media-inner-tab-btn,[data-animations=on] .data-inner-tab-btn,.enhanced-mode .media-inner-tab-btn,.enhanced-mode .data-inner-tab-btn{position:relative;overflow:hidden;transition:all var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .media-inner-tab-btn:hover,[data-animations=on] .data-inner-tab-btn:hover,.enhanced-mode .media-inner-tab-btn:hover,.enhanced-mode .data-inner-tab-btn:hover{transform:translateY(-1px);background:var(--interactive-bg-hover)}[data-animations=on] .projects-list,.enhanced-mode .projects-list{scroll-behavior:smooth}[data-animations=on] .projects-list li,.enhanced-mode .projects-list li{position:relative;transition:all var(--enhance-duration) var(--enhance-smooth),transform var(--enhance-duration-fast) var(--enhance-spring);transform-origin:left center}[data-animations=on] .projects-list li.animate-in,.enhanced-mode .projects-list li.animate-in{animation:enhancedListItemIn .4s var(--enhance-spring) forwards;animation-delay:calc(var(--item-index, 0) * 50ms);opacity:0;transform:translate(-20px)}@keyframes enhancedListItemIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}[data-animations=on] .projects-list li:hover,.enhanced-mode .projects-list li:hover{transform:translate(4px);background:var(--interactive-bg-hover)}[data-animations=on] .projects-list li:hover:before,.enhanced-mode .projects-list li:hover:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:linear-gradient(180deg,var(--color-accent),var(--enhance-glow-accent));border-radius:0 3px 3px 0;animation:enhancedListIndicator .2s var(--enhance-spring) forwards}@keyframes enhancedListIndicator{0%{height:0;opacity:0}to{height:60%;opacity:1}}[data-animations=on] .projects-list li.active,.enhanced-mode .projects-list li.active{box-shadow:inset 0 0 0 1px var(--color-accent),0 0 20px -5px var(--enhance-glow-primary)}[data-animations=on] .projects-list li:active,.enhanced-mode .projects-list li:active{transform:scale(.98)}[data-animations=on] .icon-btn,.enhanced-mode .icon-btn{position:relative;overflow:hidden;transition:all var(--enhance-duration-fast) var(--enhance-spring),box-shadow var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .icon-btn:hover,.enhanced-mode .icon-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px -2px var(--enhance-glow-primary)}[data-animations=on] .icon-btn:hover i,.enhanced-mode .icon-btn:hover i{animation:enhancedIconBounce .4s var(--enhance-bounce)}@keyframes enhancedIconBounce{0%,to{transform:scale(1)}30%{transform:scale(1.2)}50%{transform:scale(.9)}70%{transform:scale(1.1)}}[data-animations=on] .icon-btn:active,.enhanced-mode .icon-btn:active{transform:translateY(0) scale(.95)}[data-animations=on] #add-btn:hover i,.enhanced-mode #add-btn:hover i{animation:enhancedAddSpin .5s var(--enhance-spring)}@keyframes enhancedAddSpin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(90deg) scale(1.2)}to{transform:rotate(0) scale(1)}}[data-animations=on] #delete-btn:hover,.enhanced-mode #delete-btn:hover{box-shadow:0 4px 12px -2px #ef444466}[data-animations=on] #delete-btn:hover i,.enhanced-mode #delete-btn:hover i{animation:enhancedDeleteShake .4s ease}@keyframes enhancedDeleteShake{0%,to{transform:translate(0)}20%{transform:translate(-2px) rotate(-5deg)}40%{transform:translate(2px) rotate(5deg)}60%{transform:translate(-2px) rotate(-3deg)}80%{transform:translate(2px) rotate(3deg)}}[data-animations=on] .sidebar-search,.enhanced-mode .sidebar-search{position:relative;transition:all var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .sidebar-search input,.enhanced-mode .sidebar-search input{transition:all var(--enhance-duration) var(--enhance-smooth),box-shadow var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .sidebar-search:focus-within,.enhanced-mode .sidebar-search:focus-within{transform:scale(1.02)}[data-animations=on] .sidebar-search input:focus,.enhanced-mode .sidebar-search input:focus{box-shadow:0 0 0 3px var(--focus-ring-strong),0 4px 16px -4px var(--enhance-glow-primary)}[data-animations=on] .sidebar-search:focus-within i,.enhanced-mode .sidebar-search:focus-within i{animation:enhancedSearchPulse .5s var(--enhance-spring);color:var(--color-accent)}@keyframes enhancedSearchPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}[data-animations=on] .info-form input,[data-animations=on] .info-form textarea,[data-animations=on] .info-form select,.enhanced-mode .info-form input,.enhanced-mode .info-form textarea,.enhanced-mode .info-form select{transition:all var(--enhance-duration) var(--enhance-smooth),box-shadow var(--enhance-duration) var(--enhance-smooth),border-color var(--enhance-duration-fast) ease}[data-animations=on] .info-form input:focus,[data-animations=on] .info-form textarea:focus,[data-animations=on] .info-form select:focus,.enhanced-mode .info-form input:focus,.enhanced-mode .info-form textarea:focus,.enhanced-mode .info-form select:focus{transform:translateY(-1px);box-shadow:0 0 0 3px var(--focus-ring-strong),0 8px 20px -8px var(--enhance-glow-primary)}[data-animations=on] .info-field:focus-within .info-label,.enhanced-mode .info-field:focus-within .info-label{color:var(--color-accent);animation:enhancedLabelPop .25s var(--enhance-spring)}@keyframes enhancedLabelPop{0%{transform:translateY(0)}50%{transform:translateY(-2px)}to{transform:translateY(0)}}[data-animations=on] .sidebar-content,.enhanced-mode .sidebar-content{transition:opacity var(--enhance-duration-slow) var(--enhance-smooth),transform var(--enhance-duration-slow) var(--enhance-smooth)}[data-animations=on] .sidebar-content.hidden,.enhanced-mode .sidebar-content.hidden{opacity:0;transform:translate(-10px);pointer-events:none}[data-animations=on] .sidebar-content:not(.hidden),.enhanced-mode .sidebar-content:not(.hidden){animation:enhancedContentIn .35s var(--enhance-spring)}@keyframes enhancedContentIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}[data-animations=on] .subtab-content,.enhanced-mode .subtab-content{transition:opacity var(--enhance-duration) var(--enhance-smooth),transform var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .subtab-content.hidden,.enhanced-mode .subtab-content.hidden{opacity:0;transform:translateY(8px)}[data-animations=on] .subtab-content:not(.hidden),.enhanced-mode .subtab-content:not(.hidden){animation:enhancedSubtabContentIn .3s var(--enhance-spring)}@keyframes enhancedSubtabContentIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}[data-animations=on] .skeleton,.enhanced-mode .skeleton{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--color-panel) 0%,var(--interactive-bg) 50%,var(--color-panel) 100%);background-size:200% 100%;animation:enhancedShimmer 1.5s infinite linear;border-radius:var(--radius-md)}@keyframes enhancedShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}[data-animations=on] .skeleton-text,.enhanced-mode .skeleton-text{height:1em;width:80%;margin-bottom:.5em}[data-animations=on] .skeleton-title,.enhanced-mode .skeleton-title{height:1.5em;width:60%;margin-bottom:.75em}[data-animations=on] .skeleton-avatar,.enhanced-mode .skeleton-avatar{width:40px;height:40px;border-radius:50%}[data-animations=on] .skeleton-button,.enhanced-mode .skeleton-button{height:36px;width:100px;border-radius:var(--radius-md)}[data-animations=on] .info-thumbnail,.enhanced-mode .info-thumbnail{transition:all var(--enhance-duration) var(--enhance-smooth),box-shadow var(--enhance-duration-slow) var(--enhance-smooth);cursor:pointer}[data-animations=on] .info-thumbnail:hover,.enhanced-mode .info-thumbnail:hover{transform:scale(1.08);box-shadow:0 16px 40px -8px #00000059,0 0 0 3px var(--color-accent)}[data-animations=on] .info-thumbnail:active,.enhanced-mode .info-thumbnail:active{transform:scale(.98)}[data-animations=on] .category-chip,[data-animations=on] .info-categories .chip,.enhanced-mode .category-chip,.enhanced-mode .info-categories .chip{transition:all var(--enhance-duration-fast) var(--enhance-spring),box-shadow var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .category-chip:hover,[data-animations=on] .info-categories .chip:hover,.enhanced-mode .category-chip:hover,.enhanced-mode .info-categories .chip:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px -4px var(--enhance-glow-primary)}[data-animations=on] .category-chip.animate-in,[data-animations=on] .info-categories .chip.animate-in,.enhanced-mode .category-chip.animate-in,.enhanced-mode .info-categories .chip.animate-in{animation:enhancedChipIn .3s var(--enhance-bounce) forwards}@keyframes enhancedChipIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}[data-animations=on] .category-chip.removing,[data-animations=on] .info-categories .chip.removing,.enhanced-mode .category-chip.removing,.enhanced-mode .info-categories .chip.removing{animation:enhancedChipOut .2s var(--enhance-smooth) forwards}@keyframes enhancedChipOut{to{opacity:0;transform:scale(.5)}}[data-animations=on] .poi-list li,.enhanced-mode .poi-list li{transition:all var(--enhance-duration) var(--enhance-smooth),transform var(--enhance-duration-fast) var(--enhance-spring)}[data-animations=on] .poi-list li:hover,.enhanced-mode .poi-list li:hover{transform:translate(4px);background:var(--interactive-bg-hover)}[data-animations=on] .poi-list li:active,.enhanced-mode .poi-list li:active{transform:scale(.98)}[data-animations=on] .projects-list::-webkit-scrollbar-thumb,[data-animations=on] .poi-list::-webkit-scrollbar-thumb,.enhanced-mode .projects-list::-webkit-scrollbar-thumb,.enhanced-mode .poi-list::-webkit-scrollbar-thumb{-webkit-transition:background var(--enhance-duration) ease;transition:background var(--enhance-duration) ease}[data-animations=on] .projects-list:hover::-webkit-scrollbar-thumb,[data-animations=on] .poi-list:hover::-webkit-scrollbar-thumb,.enhanced-mode .projects-list:hover::-webkit-scrollbar-thumb,.enhanced-mode .poi-list:hover::-webkit-scrollbar-thumb{background:var(--color-accent)}[data-animations=on][data-glass=true] .sidebar,.enhanced-mode.glass-mode .sidebar{background:#1a1a2ebf;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1)}[data-theme=light][data-animations=on][data-glass=true] .sidebar,[data-theme=light] .enhanced-mode.glass-mode .sidebar{background:#ffffffbf;border:1px solid rgba(0,0,0,.08)}[data-animations=on] .btn-primary,[data-animations=on] .btn-secondary,.enhanced-mode .btn-primary,.enhanced-mode .btn-secondary{position:relative;overflow:hidden;transition:all var(--enhance-duration) var(--enhance-spring),box-shadow var(--enhance-duration) var(--enhance-smooth)}[data-animations=on] .btn-primary:hover,.enhanced-mode .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px -4px var(--enhance-glow-primary),0 0 0 1px #ffffff1a inset}[data-animations=on] .btn-primary:active,.enhanced-mode .btn-primary:active{transform:translateY(0) scale(.98)}[data-animations=on] .btn-primary:after,.enhanced-mode .btn-primary:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);transform:translate(-100%);transition:transform .6s ease;pointer-events:none}[data-animations=on] .btn-primary:hover:after,.enhanced-mode .btn-primary:hover:after{transform:translate(100%)}[data-animations=on] .success-flash,.enhanced-mode .success-flash{animation:enhancedSuccessFlash .5s var(--enhance-spring)}@keyframes enhancedSuccessFlash{0%{box-shadow:0 0 #10b98199}50%{box-shadow:0 0 20px 4px #10b9814d}to{box-shadow:0 0 #10b98100}}[data-animations=on] .error-shake,.enhanced-mode .error-shake{animation:enhancedErrorShake .5s var(--enhance-smooth)}@keyframes enhancedErrorShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}[data-animations=on] .loading-spinner,.enhanced-mode .loading-spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:enhancedSpin .8s linear infinite}@keyframes enhancedSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){[data-animations=on] *,.enhanced-mode *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.settings-toggle-row.enhanced-toggle{position:relative}.settings-toggle-row.enhanced-toggle:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--color-accent),#764be2);border-radius:0 3px 3px 0;opacity:0;transition:opacity .2s ease}.settings-toggle-row.enhanced-toggle.active:before{opacity:1}.enhanced-indicator{display:none;width:8px;height:8px;background:linear-gradient(135deg,var(--color-accent),#764be2);border-radius:50%;animation:enhancedIndicatorPulse 2s ease-in-out infinite}[data-animations=on] .enhanced-indicator{display:block}@keyframes enhancedIndicatorPulse{0%,to{box-shadow:0 0 #667eea99;transform:scale(1)}50%{box-shadow:0 0 8px 2px #667eea4d;transform:scale(1.1)}}.custom-tooltip{position:absolute;z-index:100000;padding:8px 14px;border-radius:8px;font-size:.8rem;font-weight:500;line-height:1.4;max-width:320px;text-align:center;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease,transform .15s ease;transform:translateY(4px);word-wrap:break-word;background:linear-gradient(135deg,var(--color-panel, #1e1e2e) 0%,var(--surface-elevated, #252538) 100%);color:var(--color-text, #e7e7ea);border:1px solid var(--color-border, rgba(255, 255, 255, .1));box-shadow:0 8px 24px #00000059,0 4px 12px #0003,inset 0 1px #ffffff0d}.custom-tooltip.visible{opacity:1;visibility:visible;transform:translateY(0)}.custom-tooltip.tooltip-below{transform:translateY(-4px)}.custom-tooltip.tooltip-below.visible{transform:translateY(0)}[data-theme=light] .custom-tooltip{background:linear-gradient(135deg,#fff,#f8f9fa);color:#1a1a2e;border:1px solid rgba(36,42,90,.15);box-shadow:0 8px 24px #0000001f,0 4px 12px #00000014,inset 0 1px #fffc}.custom-tooltip.tooltip-disabled{background:linear-gradient(135deg,#4a4e69,#3d405b);color:#b8bbd0;font-style:italic}[data-theme=light] .custom-tooltip.tooltip-disabled{background:linear-gradient(135deg,#e8e9ed,#d1d3dc);color:#6b6f85}.timeline-slider-container{--min: 0;--max: 100;--value: 60;--percent: .6;position:relative;display:flex;flex-direction:column;gap:4px;padding:8px 14px 6px;border-radius:var(--radius-md, 12px);border:1px solid var(--timeline-border, rgba(122, 139, 255, .16));background:var(--timeline-bg, linear-gradient(180deg, rgba(22, 23, 38, .72) 0%, rgba(12, 12, 18, .4) 100%));box-shadow:var(--timeline-shadow, inset 0 0 0 1px rgba(17, 18, 34, .5), 0 10px 18px rgba(10, 12, 26, .35))}.timeline-slider-shell{position:relative;height:28px;border-radius:999px;margin-bottom:42px}.timeline-slider-shell:before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--timeline-track-bg, linear-gradient(180deg, rgba(33, 37, 62, .8) 0%, rgba(21, 22, 38, .62) 55%, rgba(12, 12, 20, .4) 100%))}.timeline-slider-track,.timeline-slider-progress,.timeline-slider-glow{position:absolute;border-radius:inherit;pointer-events:none}.timeline-slider-track{top:50%;left:16px;right:16px;height:6px;transform:translateY(-50%);background:var(--timeline-scrub-bg, linear-gradient(90deg, rgba(28, 30, 52, .9) 0%, rgba(20, 22, 38, .7) 100%));border:1px solid var(--timeline-scrub-border, rgba(122, 139, 255, .18))}.timeline-slider-progress{left:16px;top:50%;height:6px;width:max(18px,calc((100% - 32px) * var(--percent)));transform:translateY(-50%);border-radius:14px;background:linear-gradient(90deg,var(--timeline-track-start) 0%,var(--timeline-track-mid) 55%,var(--timeline-track-end) 100%);box-shadow:0 0 16px var(--timeline-glow, rgba(90, 139, 255, .45));transition:width .15s cubic-bezier(.4,0,.2,1),box-shadow .2s ease}.timeline-slider-input:active~.timeline-slider-progress{box-shadow:0 0 24px var(--timeline-glow-active, rgba(90, 139, 255, .65)),0 0 36px var(--timeline-glow-secondary, rgba(90, 139, 255, .35))}body.timeline-active .timeline-slider-progress{animation:timeline-pulse 2s ease-in-out infinite}@keyframes timeline-pulse{0%,to{box-shadow:0 0 16px #5a8bff73}50%{box-shadow:0 0 24px #5a8bffa6,0 0 36px #5a8bff40}}.timeline-slider-glow{inset:1px;background:var(--timeline-progress-bg, radial-gradient(circle at clamp(16px, calc(16px + (100% - 32px) * var(--percent)), calc(100% - 16px) ) 50%, rgba(122, 139, 255, .35) 0%, rgba(122, 139, 255, .08) 35%, rgba(122, 139, 255, 0) 70%));filter:blur(12px)}.timeline-slider-value-chip{position:absolute;top:calc(100% + 4px);bottom:auto;left:clamp(16px,calc(16px + (100% - 32px) * var(--percent)),calc(100% - 16px));transform:translate(-50%);display:inline-flex;align-items:center;justify-content:center;padding:6px 16px;border-radius:999px;border:1px solid var(--timeline-handle-border, rgba(122, 139, 255, .55));background:linear-gradient(135deg,#7a8bff52,#1c1e35e0);color:var(--color-text-strong);font-size:.85rem;font-weight:600;letter-spacing:.08em;box-shadow:0 6px 16px #5a8bff4d;min-width:140px;text-align:center;pointer-events:none;z-index:4}.timeline-slider-label{position:absolute;bottom:-32px;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#7a8bffd9;z-index:1;transition:all .3s ease;text-shadow:0 2px 8px rgba(90,139,255,.4)}@keyframes label-update{0%,to{color:#7a8bffd9;transform:scale(1)}50%{color:#89b3ff;transform:scale(1.12);text-shadow:0 2px 12px rgba(90,139,255,.7)}}.timeline-slider-label--min{left:16px}.timeline-slider-label--max{right:16px}.timeline-slider-input{position:absolute;z-index:3;width:calc(100% - 32px);height:28px;left:16px;top:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;margin:0;border-radius:inherit}.timeline-slider-input:focus-visible{outline:2px solid rgba(122,139,255,.7);outline-offset:6px}.timeline-slider-input::-webkit-slider-runnable-track{width:100%;height:100%;background:transparent;border:none}.timeline-slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;border:2px solid rgba(122,139,255,.95);background:radial-gradient(circle at 30% 30%,var(--timeline-handle-bg) 0%,var(--timeline-handle-mid) 45%,var(--timeline-handle-end) 100%);box-shadow:0 0 10px #7a8bff73,0 4px 18px #14183499;cursor:grab;position:relative;z-index:3;top:50%;transform:translateY(-50%);-webkit-transition:transform .15s ease,box-shadow .2s ease;transition:transform .15s ease,box-shadow .2s ease}.timeline-slider-input::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 16px #7a8bffa6,0 6px 24px #141834b3}.timeline-slider-input:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.25);box-shadow:0 0 20px #7a8bffd9,0 8px 32px #141834cc}.timeline-slider-input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;border:2px solid rgba(122,139,255,.95);background:radial-gradient(circle at 30% 30%,var(--timeline-handle-bg) 0%,var(--timeline-handle-mid) 45%,var(--timeline-handle-end) 100%);box-shadow:0 0 10px #7a8bff73,0 4px 18px #14183499;cursor:grab;-moz-transition:transform .15s ease,box-shadow .2s ease;transition:transform .15s ease,box-shadow .2s ease}.timeline-slider-input::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:0 0 16px #7a8bffa6,0 6px 24px #141834b3}.timeline-slider-input:active::-moz-range-thumb{cursor:grabbing;transform:scale(1.25);box-shadow:0 0 20px #7a8bffd9,0 8px 32px #141834cc}.timeline-slider-input::-ms-thumb{width:20px;height:20px;border-radius:50%;border:2px solid rgba(122,139,255,.95);background:radial-gradient(circle at 30% 30%,var(--timeline-handle-bg) 0%,var(--timeline-handle-mid) 45%,var(--timeline-handle-end) 100%);box-shadow:0 0 10px #7a8bff73,0 4px 18px #14183499;cursor:grab;-ms-transition:transform .15s ease,box-shadow .2s ease;transition:transform .15s ease,box-shadow .2s ease}.timeline-slider-input::-ms-thumb:hover{transform:scale(1.15);box-shadow:0 0 16px #7a8bffa6,0 6px 24px #141834b3}.timeline-slider-input:active::-ms-thumb{cursor:grabbing;transform:scale(1.25);box-shadow:0 0 20px #7a8bffd9,0 8px 32px #141834cc}.timeline-slider-input::-moz-range-track,.timeline-slider-input::-ms-track{height:100%;background:transparent;border:none;color:transparent}.timeline-slider-input::-moz-range-progress{background:transparent}.timeline-slider-ticks{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#e7e7eaad;pointer-events:none;padding:0 16px;margin-top:2px}.timeline-slider-ticks span{position:relative;flex:0 0 auto;display:inline-flex;flex-direction:column;align-items:center;gap:6px}.timeline-slider-ticks span:before{content:"";width:2px;height:8px;border-radius:999px;background:linear-gradient(180deg,#7a8bffa6,#7a8bff00);box-shadow:0 0 6px #7a8bff66}.timeline-slider-ticks span:after{content:attr(data-label);opacity:.72}.timeline-caption{margin:0;font-size:.8rem;color:#e7e7eab8;letter-spacing:.04em;text-transform:uppercase}.timeline-slider-value-chip{transition:left .15s cubic-bezier(.4,0,.2,1),transform .15s cubic-bezier(.4,0,.2,1)}[data-theme=light] .timeline-slider-container{background:var(--timeline-bg);border-color:var(--timeline-border);box-shadow:var(--timeline-shadow)}[data-theme=light] .timeline-slider-shell:before{background:var(--timeline-track-bg)}[data-theme=light] .timeline-slider-track{background:var(--timeline-scrub-bg);border-color:var(--timeline-scrub-border)}[data-theme=light] .timeline-slider-progress{box-shadow:0 0 16px var(--timeline-glow)}[data-theme=light] .timeline-slider-input:active~.timeline-slider-progress{box-shadow:0 0 24px var(--timeline-glow-active),0 0 36px var(--timeline-glow-secondary)}[data-theme=light] .timeline-slider-glow{background:var(--timeline-progress-bg)}[data-theme=light] .timeline-slider-value-chip{background:linear-gradient(135deg,#fffffff5,#ecf3fff5);color:var(--text-primary);border-color:var(--timeline-handle-border);box-shadow:0 8px 18px #0f184029}[data-theme=light] .timeline-slider-label,[data-theme=light] .timeline-slider-ticks{color:var(--text-secondary)}[data-theme=light] .timeline-slider-ticks span:before{background:linear-gradient(180deg,#4f46e5b3,#4f46e500);box-shadow:0 0 6px #4f46e54d}[data-theme=light] .timeline-slider-ticks span:after{color:var(--text-secondary);opacity:.8}.poi-active{opacity:1!important;filter:saturate(1.2) brightness(1.1)}.poi-inactive{opacity:.3!important;filter:saturate(.5) brightness(.7);transition:opacity .3s ease,filter .3s ease}.poi-undated{opacity:.6!important;filter:saturate(.8) brightness(.9);transition:opacity .3s ease,filter .3s ease}.text-chip--poi,.leaflet-marker-icon,.cesium-billboard{transition:opacity .3s ease,filter .3s ease,transform .2s ease}.poi-active.text-chip--poi{animation:poi-highlight-pulse 1.5s ease-in-out}@keyframes poi-highlight-pulse{0%,to{box-shadow:0 0 #5a8bff00}50%{box-shadow:0 0 16px #5a8bff99}}#xr-pair-modal{font-family:dm-sans,Inter,Segoe UI,Arial,sans-serif;color:var(--color-text, #e7e7ea)}#xr-pair-modal .xr-modal{width:min(680px,98vw);background:linear-gradient(165deg,var(--modal-gradient-start, rgba(24, 24, 31, .72)) 0%,var(--modal-gradient-end, rgba(14, 15, 24, .68)) 100%);border:1.5px solid var(--modal-border, rgba(118, 137, 255, .18));border-radius:14px;box-shadow:0 24px 58px #0c0e2073;padding:14px 16px 12px;backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);display:flex;flex-direction:column;align-items:stretch;max-height:80vh;overflow-y:auto;margin-top:0}#xr-pair-modal .modal-header{margin:0;display:flex;align-items:center;gap:12px;font-size:1.15rem;font-weight:700;letter-spacing:.01em;color:var(--color-text-strong, #f5f7ff)}#xr-pair-modal .modal-header i{font-size:1.5rem;color:var(--color-accent, #5a8bff);filter:drop-shadow(0 4px 12px color-mix(in srgb,var(--color-accent, #5a8bff) 45%,rgba(0,0,0,.35) 55%))}#xr-pair-modal .modal-body{margin:18px 0 0;padding:0;display:flex;flex-direction:column;gap:20px}#xr-pair-modal .xr-modal__lede{margin:0;font-size:.95rem;line-height:1.6;color:var(--color-muted, rgba(214, 222, 255, .85))}#xr-pair-modal .xr-modal__grid{display:grid;gap:18px}#xr-pair-modal .xr-card{background:var(--color-panel, rgba(18, 20, 36, .86));border:1px solid var(--color-border, rgba(118, 137, 255, .2));border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:14px;box-shadow:0 18px 36px #080a1a61}#xr-pair-modal .xr-card--info{background:color-mix(in srgb,var(--color-panel, rgba(18, 20, 36, .86)) 92%,var(--surface-muted, #18181f) 8%)}#xr-pair-modal .xr-section-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.26em;color:color-mix(in srgb,var(--color-accent, #7c9aff) 70%,var(--color-muted, #b0b8dd) 30%);font-weight:600}#xr-pair-modal .qr-placeholder{position:relative;min-height:200px;border-radius:12px;background:var(--color-input-bg, rgba(10, 12, 28, .92));border:1px dashed color-mix(in srgb,var(--color-accent, #7c9aff) 55%,transparent 45%);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}#xr-pair-modal .qr-placeholder:hover{border-color:color-mix(in srgb,var(--color-accent, #7c9aff) 70%,transparent 30%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent, #7c9aff) 18%,transparent 82%)}#xr-pair-modal .qr-placeholder__hint{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;color:var(--color-muted, rgba(172, 184, 255, .8));font-size:.9rem;letter-spacing:.02em;transition:opacity .25s ease,transform .25s ease}#xr-pair-modal .qr-placeholder__hint i{font-size:1.8rem;color:var(--color-accent, rgba(144, 168, 255, .92))}#xr-pair-modal .qr-placeholder--ready .qr-placeholder__hint{opacity:0;transform:translateY(6px);pointer-events:none}#xr-pair-modal .qr-code-box{background:var(--color-panel, rgba(5, 7, 18, .95));border:1px solid color-mix(in srgb,var(--color-accent, #7c9aff) 50%,var(--color-border, rgba(124, 154, 255, .5)) 50%);border-radius:12px;padding:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 18px 36px #090c1c73}#xr-pair-modal .qr-code-box canvas,#xr-pair-modal .qr-code-box img{width:168px!important;height:168px!important}#xr-pair-modal .qr-code-box .qr-fallback{color:var(--color-text, rgba(190, 198, 255, .85));font-weight:600;margin-bottom:8px}#xr-pair-modal .xr-modal__hint{margin:0;font-size:.86rem;text-align:center;color:var(--color-muted, rgba(180, 192, 255, .75))}#xr-pair-modal .xr-session-link{min-height:48px;padding:12px 16px;border-radius:12px;background:var(--color-input-bg, rgba(24, 28, 48, .88));border:1px solid color-mix(in srgb,var(--interactive-border, rgba(124, 154, 255, .32)) 80%,transparent 20%);color:var(--color-text, rgba(144, 168, 255, .95));font-weight:600;display:flex;align-items:center;word-break:break-word;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--interactive-border, rgba(80, 112, 255, .16)) 50%,transparent 50%)}#xr-pair-modal .xr-session-link a{color:inherit;text-decoration:none}#xr-pair-modal .xr-session-link a:hover,#xr-pair-modal .xr-session-link a:focus-visible{text-decoration:underline;outline:none}#xr-pair-modal .xr-card__meta{display:flex;flex-direction:column;gap:8px}#xr-pair-modal .xr-meta-text{margin:0;font-size:.9rem;line-height:1.5;color:var(--color-muted, rgba(206, 214, 255, .78))}#xr-pair-modal .xr-modal__footer{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border, rgba(118, 137, 255, .2));display:flex;justify-content:flex-end;gap:10px}#xr-pair-modal .btn-secondary{background:var(--interactive-bg, rgba(32, 36, 60, .78));color:var(--color-text, rgba(204, 214, 255, .92));border:1px solid var(--interactive-border, rgba(90, 139, 255, .32));border-radius:10px;padding:10px 22px;font-weight:600;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .2s ease}#xr-pair-modal .btn-secondary:hover,#xr-pair-modal .btn-secondary:focus-visible{background:var(--interactive-bg-hover, rgba(42, 48, 78, .96));color:var(--color-text-strong, #ffffff);border-color:var(--interactive-border-hover, rgba(124, 154, 255, .5));transform:translateY(-1px);outline:none}#xr-pair-modal .btn-primary{background:linear-gradient(140deg,var(--btn-primary-bg-start, #5a8bff) 0%,var(--btn-primary-bg-end, #7a9fff) 100%);border:none;border-radius:12px;padding:12px 28px;color:var(--btn-primary-text, #ffffff);font-weight:700;letter-spacing:.02em;box-shadow:0 22px 44px var(--btn-primary-shadow, rgba(90, 139, 255, .4));transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}#xr-pair-modal .btn-primary:hover,#xr-pair-modal .btn-primary:focus-visible{transform:translateY(-1px);box-shadow:0 26px 50px var(--btn-primary-shadow-hover, rgba(104, 156, 255, .46));filter:brightness(1.05);outline:none}#xr-pair-modal .btn-primary:active{transform:translateY(0);box-shadow:0 16px 32px var(--btn-primary-shadow-active, rgba(74, 118, 238, .38))}#xr-pair-modal .text-break{word-break:break-word}@media(min-width:560px){#xr-pair-modal .xr-modal__grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){#xr-pair-modal .xr-modal{padding:20px 18px 18px}#xr-pair-modal .xr-modal__grid{gap:16px}#xr-pair-modal .xr-card{padding:16px}}:root[data-theme=light] #xr-pair-modal .xr-modal,body.light-mode #xr-pair-modal .xr-modal,.theme-light #xr-pair-modal .xr-modal{background:linear-gradient(165deg,var(--modal-gradient-start, rgba(248, 250, 252, .95)) 0%,var(--modal-gradient-end, rgba(241, 245, 249, .9)) 100%);border-color:color-mix(in srgb,var(--color-border, rgba(48, 62, 110, .18)) 85%,transparent 15%);box-shadow:0 22px 44px #0f18401f}:root[data-theme=light] #xr-pair-modal .xr-card,body.light-mode #xr-pair-modal .xr-card,.theme-light #xr-pair-modal .xr-card{background:#fff;border-color:color-mix(in srgb,var(--color-border, rgba(48, 62, 110, .18)) 90%,transparent 10%);box-shadow:0 12px 28px #0f18401f}:root[data-theme=light] #xr-pair-modal .xr-card--info,body.light-mode #xr-pair-modal .xr-card--info,.theme-light #xr-pair-modal .xr-card--info{background:#f6f8ff}:root[data-theme=light] #xr-pair-modal .modal-header{color:var(--color-text-strong, #131429)}:root[data-theme=light] #xr-pair-modal .xr-modal__lede,:root[data-theme=light] #xr-pair-modal .xr-modal__hint,:root[data-theme=light] #xr-pair-modal .xr-meta-text,body.light-mode #xr-pair-modal .xr-modal__lede,body.light-mode #xr-pair-modal .xr-modal__hint,body.light-mode #xr-pair-modal .xr-meta-text,.theme-light #xr-pair-modal .xr-modal__lede,.theme-light #xr-pair-modal .xr-modal__hint,.theme-light #xr-pair-modal .xr-meta-text{color:var(--color-muted, #5e6278)}:root[data-theme=light] #xr-pair-modal .qr-placeholder,body.light-mode #xr-pair-modal .qr-placeholder,.theme-light #xr-pair-modal .qr-placeholder{background:#f9fbff;border-color:#3b82f659;box-shadow:inset 0 0 0 1px #3b82f61f}:root[data-theme=light] #xr-pair-modal .qr-placeholder__hint,body.light-mode #xr-pair-modal .qr-placeholder__hint,.theme-light #xr-pair-modal .qr-placeholder__hint{color:var(--color-muted, #5e6278)}:root[data-theme=light] #xr-pair-modal .qr-code-box,body.light-mode #xr-pair-modal .qr-code-box,.theme-light #xr-pair-modal .qr-code-box{background:#fff;border-color:#3b82f647;box-shadow:0 12px 28px #0f18401f}:root[data-theme=light] #xr-pair-modal .qr-code-box .qr-fallback,body.light-mode #xr-pair-modal .qr-code-box .qr-fallback,.theme-light #xr-pair-modal .qr-code-box .qr-fallback{color:var(--color-text, #1f2030)}:root[data-theme=light] #xr-pair-modal .xr-session-link,body.light-mode #xr-pair-modal .xr-session-link,.theme-light #xr-pair-modal .xr-session-link{background:#f6f8ff;color:var(--color-text, #1f2030);border-color:#3b82f647;box-shadow:inset 0 0 0 1px #3b82f624}:root[data-theme=light] #xr-pair-modal .xr-modal__footer,body.light-mode #xr-pair-modal .xr-modal__footer,.theme-light #xr-pair-modal .xr-modal__footer{border-top-color:#303e6e29}:root[data-theme=light] #xr-pair-modal .btn-secondary,body.light-mode #xr-pair-modal .btn-secondary,.theme-light #xr-pair-modal .btn-secondary{background:var(--interactive-bg, rgba(59, 130, 246, .08));color:var(--color-text, #1f2030);border-color:var(--interactive-border, rgba(59, 130, 246, .2))}:root[data-theme=light] #xr-pair-modal .btn-secondary:hover,:root[data-theme=light] #xr-pair-modal .btn-secondary:focus-visible,body.light-mode #xr-pair-modal .btn-secondary:hover,body.light-mode #xr-pair-modal .btn-secondary:focus-visible,.theme-light #xr-pair-modal .btn-secondary:hover,.theme-light #xr-pair-modal .btn-secondary:focus-visible{background:var(--interactive-bg-hover, rgba(59, 130, 246, .12));color:var(--color-text-strong, #131429);border-color:var(--interactive-border-hover, rgba(59, 130, 246, .35))}
