.grid-stack{position:relative}.grid-stack-rtl{direction:ltr}.grid-stack-rtl>.grid-stack-item{direction:rtl}.grid-stack-placeholder>.placeholder-content{background-color:#0000001a;margin:0;position:absolute;width:auto;z-index:0!important}.grid-stack>.grid-stack-item{height:var(--gs-cell-height);left:0;padding:0;position:absolute;top:0;width:var(--gs-column-width)}.grid-stack>.grid-stack-item>.grid-stack-item-content{margin:0;overflow-x:hidden;overflow-y:auto;position:absolute;width:auto}.grid-stack>.grid-stack-item.size-to-content:not(.size-to-content-max)>.grid-stack-item-content{overflow-y:hidden}.grid-stack>.grid-stack-item>.grid-stack-item-content,.grid-stack>.grid-stack-placeholder>.placeholder-content{bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left);right:var(--gs-item-margin-right);top:var(--gs-item-margin-top)}.grid-stack-item>.ui-resizable-handle{display:block;font-size:.1px;position:absolute;touch-action:none}.grid-stack-item.ui-resizable-autohide>.ui-resizable-handle,.grid-stack-item.ui-resizable-disabled>.ui-resizable-handle{display:none}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se,.grid-stack-item>.ui-resizable-sw{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23666" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 20 20"><path d="m10 3 2 2H8l2-2v14l-2-2h4l-2 2"/></svg>');background-position:50%;background-repeat:no-repeat}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-sw{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-nw{cursor:nw-resize;height:20px;left:var(--gs-item-margin-left);top:var(--gs-item-margin-top);width:20px}.grid-stack-item>.ui-resizable-n{cursor:n-resize;height:10px;left:25px;right:25px;top:var(--gs-item-margin-top)}.grid-stack-item>.ui-resizable-ne{cursor:ne-resize;height:20px;right:var(--gs-item-margin-right);top:var(--gs-item-margin-top);width:20px}.grid-stack-item>.ui-resizable-e{bottom:15px;cursor:e-resize;right:var(--gs-item-margin-right);top:15px;width:10px}.grid-stack-item>.ui-resizable-se{bottom:var(--gs-item-margin-bottom);cursor:se-resize;height:20px;right:var(--gs-item-margin-right);width:20px}.grid-stack-item>.ui-resizable-s{bottom:var(--gs-item-margin-bottom);cursor:s-resize;height:10px;left:25px;right:25px}.grid-stack-item>.ui-resizable-sw{bottom:var(--gs-item-margin-bottom);cursor:sw-resize;height:20px;left:var(--gs-item-margin-left);width:20px}.grid-stack-item>.ui-resizable-w{bottom:15px;cursor:w-resize;left:var(--gs-item-margin-left);top:15px;width:10px}.grid-stack-item.ui-draggable-dragging>.ui-resizable-handle{display:none!important}.grid-stack-item.ui-draggable-dragging{will-change:left,top}.grid-stack-item.ui-resizable-resizing{will-change:width,height}.ui-draggable-dragging,.ui-resizable-resizing{z-index:10000}.ui-draggable-dragging>.grid-stack-item-content,.ui-resizable-resizing>.grid-stack-item-content{box-shadow:1px 4px 6px #0003;opacity:.8}.grid-stack-animate,.grid-stack-animate .grid-stack-item{transition:left .3s,top .3s,height .3s,width .3s}.grid-stack-animate .grid-stack-item.grid-stack-placeholder,.grid-stack-animate .grid-stack-item.ui-draggable-dragging,.grid-stack-animate .grid-stack-item.ui-resizable-resizing{transition:left 0s,top 0s,height 0s,width 0s}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack>.grid-stack-item[gs-x="0"]{left:0}:root{--bg-app:#eef2f6;--bg-panel:#fff;--bg-header:#2c3e50;--text-header:#ecf0f1;--text-primary:#212529;--text-secondary:#6c757d;--border-color:#cbd5e1;--border-strong:#adb5bd;--hover-bg:#f8f9fa;--shadow:#00000026;--input-bg:#fff;--btn-bg:#4a6a8a;--btn-bg-hover:#5b80a4;--btn-text:#fff;--accent-primary:#007bff;--accent-primary-hover:#0056b3;--accent-success:#28a745;--accent-danger:#dc3545}[data-theme=dark]{--bg-app:#050505;--bg-panel:#1a1a1a;--bg-header:#121212;--text-header:#e0e0e0;--text-primary:#e0e0e0;--text-secondary:#a0a0a0;--border-color:#525252;--border-strong:#737373;--hover-bg:#2d2d2d;--shadow:#000000e6;--input-bg:#262626;--btn-bg:#374b5e;--btn-bg-hover:#485f75;--btn-text:#e0e0e0;--accent-primary:#4a90e2;--accent-primary-hover:#357abd}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#eef2f6;background-color:var(--bg-app);color:#212529;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;transition:background-color .3s ease,color .3s ease}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}[data-theme=dark] ::-webkit-scrollbar{width:12px}[data-theme=dark] ::-webkit-scrollbar-track{background:#1e1e1e}[data-theme=dark] ::-webkit-scrollbar-thumb{background-color:#555;border:2px solid #1e1e1e;border-radius:6px}.toast-container{bottom:20px;display:flex;flex-direction:column;gap:10px;position:fixed;right:20px;z-index:9999}.toast-item{align-items:center;animation:slideIn .3s ease-out;background-color:var(--bg-panel);border:1px solid var(--border-color);border-left-width:4px;border-radius:6px;box-shadow:0 4px 12px #00000026;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9em;gap:12px;max-width:400px;min-width:250px;padding:12px 16px}@keyframes slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.toast-item.success{border-left-color:#28a745}.toast-item.success .toast-icon{color:#28a745}.toast-item.error{border-left-color:#dc3545}.toast-item.error .toast-icon{color:#dc3545}.toast-item.warning{border-left-color:#ffc107}.toast-item.warning .toast-icon{color:#ffc107}.toast-item.info{border-left-color:#17a2b8}.toast-item.info .toast-icon{color:#17a2b8}.toast-icon{font-size:1.2em;font-weight:700}.confirm-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:10000}.confirm-modal{animation:popIn .2s ease-out;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 10px 25px #0000004d;color:var(--text-primary);max-width:400px;padding:25px;width:90%}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.confirm-modal h3{color:var(--text-primary);margin-top:0}.confirm-modal p{color:var(--text-secondary);line-height:1.5}.confirm-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.confirm-btn-cancel{background:#0000;border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);cursor:pointer;padding:8px 16px}.confirm-btn-cancel:hover{background-color:var(--hover-bg)}.confirm-btn-ok{background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px}.confirm-btn-ok:hover{background-color:var(--accent-primary-hover)}.confirm-btn-ok.danger{background-color:#dc3545}.confirm-btn-ok.danger:hover{background-color:#bd2130}.error-page-container{align-items:center;background-color:var(--bg-app);color:var(--text-primary);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh;justify-content:center;width:100vw}.error-page-content{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px var(--shadow);max-width:500px;padding:40px 50px;text-align:center;width:90%}.error-page-content h1{color:#d9534f;font-size:2em;margin-top:0}.error-page-content p{color:var(--text-primary);font-size:1.1em;line-height:1.5;margin-bottom:30px}.error-page-button{background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:1em;font-weight:600;padding:12px 24px;text-decoration:none;transition:background-color .2s}.error-page-button:hover{background-color:var(--accent-primary-hover)}.error-page-button-secondary{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);cursor:pointer;display:inline-block;font-size:1em;font-weight:600;padding:12px 24px;text-decoration:none;transition:background-color .2s}.error-page-button-secondary:hover{background-color:var(--hover-bg)}.landing-container{background-color:var(--bg-app);color:var(--text-primary);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.landing-header{background-color:var(--bg-panel);border-bottom:1px solid var(--border-color);justify-content:space-between;padding:15px 40px}.landing-header,.landing-logo-wrapper{align-items:center;display:flex}.landing-header nav{display:flex;gap:15px}.landing-btn-login,.landing-btn-signup{border:none;border-radius:4px;cursor:pointer;font-size:.95em;font-weight:600;padding:10px 20px;transition:all .2s}.landing-btn-login{background-color:initial;border:1px solid var(--border-color);color:var(--text-primary)}.landing-btn-login:hover{background-color:var(--hover-bg)}.landing-btn-signup{background-color:var(--accent-primary);color:#fff}.landing-btn-signup:hover{background-color:var(--accent-primary-hover)}.landing-main{background:radial-gradient(circle at top center,var(--bg-panel) 0,var(--bg-app) 100%);flex-grow:1;padding:40px 20px}.landing-hero,.landing-main{align-items:center;display:flex;flex-direction:column}.landing-hero{margin-bottom:60px;max-width:800px;text-align:center}.landing-hero h1{color:var(--text-primary);font-size:3em;letter-spacing:-1px;margin:0 0 15px}.landing-hero h2{color:var(--text-secondary);font-size:1.5em;font-weight:400;margin-bottom:20px;margin-top:0}.landing-hero p{color:var(--text-primary);font-size:1.2em;line-height:1.6;margin-bottom:40px;max-width:600px;opacity:.9}.pricing-section{max-width:900px;text-align:center;width:100%}.pricing-section h3{color:var(--text-primary);font-size:2em;margin-bottom:30px}.pricing-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.pricing-card{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;display:flex;flex:1 1;flex-direction:column;min-width:300px;padding:30px;text-align:left;transition:transform .2s,box-shadow .2s}.pricing-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-5px)}.pricing-card.pro{background-color:#007bff08;border:2px solid var(--accent-primary)}.card-header{border-bottom:1px solid var(--border-color);margin-bottom:20px;padding-bottom:20px}.card-title{font-size:1.4em;font-weight:700;margin:0 0 5px}.card-price,.card-title{color:var(--text-primary)}.card-price{font-size:2em;font-weight:800}.card-price span{color:var(--text-secondary);font-size:.5em;font-weight:400}.card-features{flex-grow:1;list-style:none;margin:0 0 30px;padding:0}.card-features li{align-items:flex-start;color:var(--text-secondary);display:flex;font-size:.95em;gap:10px;padding:8px 0}.feature-check{color:var(--accent-success);font-weight:700}.landing-btn-cta{background-color:var(--text-primary);border:none;border-radius:6px;color:var(--bg-app);cursor:pointer;font-size:1.1em;font-weight:700;padding:15px;transition:opacity .2s;width:100%}.landing-btn-cta:hover{opacity:.9}.landing-btn-cta.primary{background-color:#28a745;box-shadow:0 4px 14px #28a7454d;color:#fff}.landing-btn-cta.primary:hover{background-color:#218838}.landing-footer{background-color:var(--bg-panel);border-top:1px solid var(--border-color);margin-top:auto;padding:40px 20px}.footer-content{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;margin:0 auto;max-width:1000px}.footer-col{display:flex;flex-direction:column;min-width:150px}.footer-col h5{color:var(--text-primary);font-size:1em;letter-spacing:.5px;margin:0 0 15px;text-transform:uppercase}.footer-col a{color:var(--text-secondary);font-size:.95em;margin-bottom:8px;text-decoration:none;transition:color .2s}.footer-col a:hover{color:var(--accent-primary);text-decoration:underline}@media (max-width:600px){.footer-content{align-items:center;flex-direction:column;text-align:center}}.grid-stack-item-content{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:6px;bottom:0;box-shadow:0 4px 6px var(--shadow);color:var(--text-primary);display:flex;flex-direction:column;left:0;overflow:hidden!important;position:absolute;right:0;top:0}.widget-header{align-items:center;background-color:var(--bg-app);border-bottom:1px solid var(--border-color);color:var(--text-primary);cursor:move;display:flex;flex-shrink:0;font-size:.9em;font-weight:700;height:32px;justify-content:space-between;padding:4px 8px}.widget-header h3{flex-grow:1;margin:0;overflow:hidden;padding:0 5px;text-overflow:ellipsis;white-space:nowrap}.widget-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:10px;position:relative}.widget-body.no-padding{padding:0}.widget-header-controls{align-items:center;display:flex;flex-grow:1;justify-content:flex-end;margin-right:10px}.widget-header-btn{background-color:var(--accent-primary);border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.85em;padding:2px 8px}.widget-header-btn:hover{background-color:var(--accent-primary-hover)}.widget-close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5em;font-weight:700;line-height:1;padding:0 5px}.widget-close-btn:hover{color:var(--text-primary)}:host,:root{--ol-background-color:#fff;--ol-accent-background-color:#f5f5f5;--ol-subtle-background-color:#80808040;--ol-partial-background-color:#ffffffbf;--ol-foreground-color:#333;--ol-subtle-foreground-color:#666;--ol-brand-color:#0af}.ol-box{background-color:#ffffffbf;background-color:var(--ol-partial-background-color);border:1.5px solid #fff;border:1.5px solid var(--ol-background-color);border-radius:2px;box-sizing:border-box}.ol-mouse-position{position:absolute;right:8px;top:8px}.ol-scale-line{background:#ffffffbf;background:var(--ol-partial-background-color);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid #666;border:1px solid var(--ol-subtle-foreground-color);border-top:none;color:#333;color:var(--ol-foreground-color);font-size:10px;margin:1px;text-align:center;transition:all .25s;will-change:contents,width}.ol-scale-bar{bottom:8px;left:8px;position:absolute}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{background-color:#333;background-color:var(--ol-foreground-color);float:right;height:15px;width:1px;z-index:10}.ol-scale-step-text{bottom:-5px;font-size:10px;z-index:11}.ol-scale-step-text,.ol-scale-text{color:#333;color:var(--ol-foreground-color);position:absolute;text-shadow:-1.5px 0 #ffffffbf,0 1.5px #ffffffbf,1.5px 0 #ffffffbf,0 -1.5px #ffffffbf;text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color)}.ol-scale-text{bottom:25px;font-size:12px;text-align:center}.ol-scale-singlebar{border:1px solid #333;border:1px solid var(--ol-foreground-color);box-sizing:border-box;height:10px;position:relative;z-index:9}.ol-scale-singlebar-even{background-color:#666;background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:#fff;background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-unselectable,.ol-viewport{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}.ol-grabbing{cursor:grabbing}.ol-grab{cursor:move;cursor:grab}.ol-control{background-color:#80808040;background-color:var(--ol-subtle-background-color);border-radius:4px;position:absolute}.ol-zoom{left:.5em;top:.5em}.ol-rotate{right:.5em;top:.5em;transition:opacity .25s linear,visibility 0s linear}.ol-rotate.ol-hidden{opacity:0;transition:opacity .25s linear,visibility 0s linear .25s;visibility:hidden}.ol-zoom-extent{left:.5em;top:4.643em}.ol-full-screen{right:.5em;top:.5em}.ol-control button{background-color:#fff;background-color:var(--ol-background-color);border:none;border-radius:2px;color:#666;color:var(--ol-subtle-foreground-color);display:block;font-size:inherit;font-weight:700;height:1.375em;line-height:.4em;margin:1px;padding:0;text-align:center;text-decoration:none;width:1.375em}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{display:block;font-weight:400;will-change:transform}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:focus,.ol-control button:hover{color:#333;color:var(--ol-foreground-color);outline:1px solid #666;outline:1px solid var(--ol-subtle-foreground-color);text-decoration:none}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{align-items:center;bottom:.5em;display:flex;flex-flow:row-reverse;max-width:calc(100% - 1.3em);right:.5em;text-align:right}.ol-attribution a{color:#666;color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{color:#333;color:var(--ol-foreground-color);font-size:12px;margin:0;padding:1px .5em;text-shadow:0 0 2px #fff;text-shadow:0 0 2px var(--ol-background-color)}.ol-attribution li{display:inline;list-style:none}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:#ffffffbf;background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{border-radius:4px 0 0;bottom:0;right:0}.ol-attribution.ol-uncollapsible img{margin-top:-.2em;max-height:1.6em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{height:200px;left:.5em;top:4.5em}.ol-zoomslider button{height:10px;position:relative}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{bottom:.5em;left:.5em}.ol-overviewmap.ol-uncollapsible{border-radius:0 4px 0 0;bottom:0;left:0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid #666;border:1px solid var(--ol-subtle-foreground-color);height:150px;width:150px}.ol-overviewmap:not(.ol-collapsed) button{bottom:0;left:0;position:absolute}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:#80808040;background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted #666;border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}.map-container{height:100%;position:relative;width:100%}.map-tooltip{background-color:#000c;border:1px solid #ffffff4d;border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;font-size:.8em;padding:4px 8px;pointer-events:none;position:absolute;white-space:nowrap;z-index:3000}#map-controls{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:5px;box-shadow:0 2px 6px #0000004d;color:var(--text-primary);font-size:.9em;padding:8px;position:absolute;right:10px;text-align:center;top:10px;z-index:10}#map-controls label{align-items:center;cursor:pointer;display:flex;gap:5px;justify-content:flex-start}#radar-time-display{color:var(--text-secondary);font-size:.8em;margin:4px 0;min-height:1.2em}#radar-loop-controls{display:flex;gap:5px;justify-content:space-between}#radar-loop-controls button{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-primary);cursor:pointer;font-size:1.1em;padding:2px 8px}#radar-loop-controls button:hover{background-color:var(--hover-bg)}.controls-divider{border:0;border-top:1px solid var(--border-color);margin:8px 0}.ol-popup{background-color:var(--bg-panel);border:1px solid var(--border-strong);border-radius:8px;bottom:12px;box-shadow:0 4px 12px #0006;color:var(--text-primary);display:none;left:-50px;max-width:450px;min-width:300px;padding:15px;position:absolute;z-index:2000}.ol-popup:after,.ol-popup:before{border:solid #0000;content:" ";height:0;pointer-events:none;position:absolute;top:100%;width:0}.ol-popup:after{border-top-color:var(--bg-panel);border-width:10px;left:48px;margin-left:-10px}.ol-popup:before{border-top-color:var(--border-strong);border-width:11px;left:48px;margin-left:-11px}.ol-popup-closer{color:var(--text-secondary);cursor:pointer;font-size:1.2em;line-height:1;position:absolute;right:10px;text-decoration:none;top:8px}.ol-popup-closer:after{content:"✖"}.ol-popup-closer:hover{color:var(--text-primary)}#popup-content{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.9em;max-height:300px;overflow-y:auto}#popup-content h3{color:var(--text-primary);font-size:1.1em;margin-bottom:10px;margin-top:0;padding-right:20px}#popup-content p{line-height:1.4;margin:5px 0 15px}#popup-content table{border-collapse:collapse;border-top:1px solid var(--border-color);width:100%}#popup-content td,#popup-content th{border-bottom:1px solid var(--border-color);padding:8px 4px;text-align:left;vertical-align:top}#popup-content th{background-color:var(--bg-app);color:var(--text-secondary);font-weight:600;white-space:nowrap;width:35%}#popup-content td{color:var(--text-primary);overflow-wrap:break-word;white-space:normal;word-break:break-word}.drawing-container{align-items:flex-start;display:flex;flex-direction:column;gap:5px;left:10px;pointer-events:none;position:absolute;top:10px;z-index:100}.drawing-fab{align-items:center;background-color:var(--bg-panel);border:1px solid var(--border-strong);border-radius:50%;box-shadow:0 2px 6px #0000004d;color:var(--text-primary);cursor:pointer;display:flex;font-size:1.4em;height:40px;justify-content:center;pointer-events:auto;transition:transform .2s,background-color .2s;width:40px}.drawing-fab:hover{background-color:var(--hover-bg);transform:scale(1.05)}.drawing-toolbar{animation:slideDown .2s ease-out;background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:column;gap:10px;padding:10px;pointer-events:auto;width:240px}.toolbar-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:5px;padding-bottom:5px}.toolbar-header h4{color:var(--text-secondary);font-size:.9em;letter-spacing:.5px;margin:0;text-transform:uppercase}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.2em;padding:0 5px}.close-btn:hover{color:var(--text-primary)}.tool-group{grid-gap:5px;display:grid;gap:5px;grid-template-columns:repeat(4,1fr)}.draw-btn{align-items:center;aspect-ratio:1;background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;font-size:1.2em;justify-content:center;transition:all .2s}.draw-btn:hover{background:var(--hover-bg)}.draw-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.icon-selector-row{margin-bottom:8px;position:relative}.btn-open-picker{align-items:center;background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.9em;justify-content:space-between;padding:8px;transition:background-color .2s;width:100%}.btn-open-picker:hover{background-color:var(--hover-bg)}.current-icon-preview{align-items:center;display:flex;height:28px;justify-content:center;width:28px}.current-icon-preview img{height:100%;object-fit:contain;width:100%}.icon-picker-popover{animation:fadeIn .15s ease-out;background-color:var(--bg-panel);border:1px solid var(--border-strong);border-radius:6px;box-shadow:0 8px 24px #00000080;color:var(--text-primary);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;max-height:350px;overflow:hidden}.icon-picker-header{align-items:center;background-color:var(--bg-app);border-bottom:1px solid var(--border-color);color:var(--text-secondary);display:flex;flex-shrink:0;font-size:.85em;font-weight:700;justify-content:space-between;padding:8px 12px}.icon-picker-content{flex:1 1;overflow-y:auto;padding:10px}.icon-category{margin-bottom:12px}.category-title{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.75em;font-weight:700;margin-bottom:6px;padding-bottom:2px;text-transform:uppercase}.icon-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(5,1fr)}.icon-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:4px;cursor:pointer;display:flex;height:40px;justify-content:center;padding:2px;transition:background-color .1s;width:40px}.icon-btn:hover{background-color:var(--hover-bg);border-color:var(--border-color)}.icon-btn.active{background-color:#007bff33;border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary)}.icon-btn img{height:100%;object-fit:contain;pointer-events:none;width:100%}.style-panel{background:var(--bg-app);border:1px solid var(--border-color);border-radius:6px;display:flex;flex-direction:column;gap:8px;padding:10px}.style-title{color:var(--text-secondary);font-size:.75em;font-weight:700;margin-bottom:2px}.style-row{align-items:center;display:flex;gap:8px}.style-row input[type=text]{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-primary);flex:1 1;font-size:.9em;padding:6px}.style-row input[type=color]{background:none;border:none;cursor:pointer;height:32px;padding:0;width:32px}.delete-btn{background:#dc35451a;border:1px solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;font-size:.9em;margin-left:auto;padding:4px 8px}.delete-btn:hover{background:#dc3545;color:#fff}.btn-clear-all{background-color:initial;border:1px solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;font-size:.9em;font-weight:600;margin-bottom:5px;padding:8px;transition:all .2s;width:100%}.btn-clear-all:hover{background-color:#dc3545;color:#fff}.broadcast-btn{align-items:center;background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.9em;font-weight:700;gap:8px;justify-content:center;padding:10px;transition:background-color .2s;width:100%}.broadcast-btn:hover{background:#218838}.broadcast-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.chat-container{background-color:var(--bg-panel);display:flex;flex:1 1;flex-direction:column;min-height:0}.chat-log{display:flex;flex-direction:column;flex-grow:1;gap:15px;overflow-y:auto;padding:15px}.chat-message-row{align-items:flex-start;display:flex;gap:10px;max-width:85%}.chat-message-row.other{align-self:flex-start}.chat-message-row.me{align-self:flex-end;flex-direction:row-reverse}.chat-avatar-container{flex-shrink:0;height:36px;width:36px}.chat-avatar-img{border:1px solid #0000001a;border-radius:50%;object-fit:cover}.chat-avatar-img,.chat-avatar-placeholder{box-shadow:0 1px 2px #0000001a;height:100%;width:100%}.chat-avatar-placeholder{align-items:center;background-color:var(--accent-primary);border-radius:50%;color:#fff;display:flex;font-size:.85em;font-weight:700;justify-content:center;text-transform:uppercase}.chat-message-row.other .chat-avatar-placeholder{background-color:#6c757d}.chat-bubble{word-wrap:break-word;border-radius:12px;box-shadow:0 1px 1px #0000000d;font-size:.95em;line-height:1.4;min-width:0;padding:10px 14px;position:relative}.chat-bubble.other{background-color:var(--hover-bg);border:1px solid var(--border-color);border-top-left-radius:2px;color:var(--text-primary)}.chat-bubble.me{background-color:var(--accent-primary);border-top-right-radius:2px;color:#fff}[data-theme=dark] .chat-bubble.other{background-color:#2d2d2d;border:1px solid #444}.chat-bubble-header{align-items:baseline;display:flex;gap:8px;margin-bottom:4px}.chat-username{font-size:.85em;font-weight:700;opacity:.9}.chat-timestamp{font-size:.7em;opacity:.7}.chat-promote-btn{background:none;border:none;cursor:pointer;filter:grayscale(100%);font-size:.9em;opacity:0;padding:0 4px;transition:opacity .2s,transform .2s}.chat-bubble:hover .chat-promote-btn{opacity:.7}.chat-promote-btn:hover{filter:grayscale(0);opacity:1!important;transform:scale(1.2)}#chat-form{background-color:var(--bg-panel);border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:10px;padding:12px}#chat-input{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:20px;color:var(--text-primary);flex-grow:1;outline:none;padding:10px 15px;transition:border-color .2s}#chat-input:focus{border-color:var(--accent-primary)}#chat-form button{background-color:var(--accent-primary);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9em;font-weight:600;padding:8px 20px;transition:opacity .2s}#chat-form button:hover{opacity:.9}#chat-form button:disabled{background-color:var(--border-strong);cursor:not-allowed}.chat-system-message{color:var(--text-secondary);font-size:.85em;font-style:italic;margin:auto;text-align:center}.timeline-container{background-color:var(--bg-panel);height:100%;overflow:hidden;position:relative;width:100%}#timeline-svg{display:block;height:100%;width:100%}.timeline-axis line,.timeline-axis path{shape-rendering:crispEdges}.timeline-axis text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.75em}.event-marker{cursor:pointer;transition:stroke-width .1s}.event-marker:hover{stroke-width:3px}.event-label{text-anchor:middle;font-size:.75em;font-weight:500;pointer-events:none;text-shadow:0 1px 2px var(--bg-panel)}.current-time-line{stroke:#dc3545;stroke-width:1.5px;stroke-dasharray:4 2;opacity:.7;pointer-events:none}.current-time-label{fill:#dc3545;text-anchor:middle;font-size:.7em;font-weight:700}.timeline-global-tooltip{background:#1e1e1ef2;border:1px solid #555;border-radius:4px;box-shadow:0 4px 12px #00000080;color:#fff;display:none;font-size:.85em;padding:8px 12px;pointer-events:none;position:absolute;transform:translateY(-100%);white-space:nowrap;z-index:10000}.timeline-toggle-btn{background-color:#fff;background-color:var(--input-bg,#fff);border:1px solid #ccc;border:1px solid var(--border-strong,#ccc);border-radius:3px;color:#333;color:var(--text-primary,#333);cursor:pointer;font-size:.75em;opacity:.6;padding:2px 8px;position:absolute;right:5px;top:5px;transition:opacity .2s;z-index:10}.timeline-toggle-btn:hover{background-color:#eee;background-color:var(--hover-bg,#eee);opacity:1}.doc-list-container{display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.doc-header{flex-shrink:0;padding-bottom:10px}#doc-list{border:1px solid var(--border-color);border-radius:4px;flex-grow:1;list-style-type:none;margin:0;overflow-y:auto;padding:0}.doc-item,.doc-item-empty{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;display:flex;font-size:.9em;gap:10px;padding:12px 10px}.doc-item:last-child{border-bottom:none}.doc-item-empty{color:var(--text-secondary);font-style:italic;justify-content:center;padding:20px;text-align:center}.doc-item:hover{background-color:var(--hover-bg)}.doc-icon{color:var(--text-secondary);flex-shrink:0;font-size:1.4em}.doc-info{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.doc-name{color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-meta{align-items:center;color:var(--text-secondary);display:flex;font-size:.85em;gap:8px}.doc-permission-badge{background-color:var(--border-color);border-radius:3px;color:var(--text-primary);font-size:.75em;font-weight:600;padding:1px 5px}.doc-permission-badge.public{background-color:var(--accent-success);color:#fff}.doc-permission-badge.sensitive{background-color:#ffc107;border:1px solid #e0a800;color:#000}.doc-permission-badge.admin{background-color:#6c757d;color:#fff}.upload-btn{align-items:center;display:flex;font-size:.9em;gap:8px;justify-content:center;padding:10px;width:100%}.doc-delete-btn{background:none;border:none;border-radius:4px;color:var(--accent-danger);cursor:pointer;flex-shrink:0;font-size:1.4em;font-weight:700;line-height:1;opacity:.7;padding:4px 8px;transition:opacity .2s}.doc-delete-btn:hover{background-color:#dc35451a;opacity:1}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;overflow:auto;position:fixed;top:0;width:100%;z-index:2000}.modal-content{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:5px;box-shadow:0 5px 15px #0000004d;color:var(--text-primary);margin:auto;max-width:500px;padding:20px;width:90%}.modal-content h2{border-bottom:1px solid var(--border-strong);color:var(--text-primary);margin-bottom:20px;margin-top:0;padding-bottom:10px}.form-group{margin-bottom:15px}.form-group label{margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;box-sizing:border-box;color:var(--text-primary);font-size:1em;padding:10px;width:100%}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.form-actions button{border:none;border-radius:4px;cursor:pointer;font-weight:600;padding:10px 20px}.form-actions button.submit{background-color:#007bff;color:#fff}.form-actions button.cancel{background-color:#6c757d;color:#fff}.form-group textarea{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;min-height:150px;resize:vertical}.radio-group{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;display:flex;gap:20px;padding:10px}.radio-group label{align-items:center;display:flex;font-weight:400;gap:5px;margin:0}.radio-group input[type=radio]{width:auto}.form-error{background:#d9534f1a;border:1px solid #d9534f;font-size:.9em;margin-top:15px}.form-group input:disabled,.form-group select:disabled{background-color:var(--bg-app);color:var(--text-secondary);cursor:not-allowed;opacity:.8}.resource-container{background-color:var(--bg-panel);display:flex;flex-direction:column;font-size:.9em;height:100%;overflow:hidden;width:100%}.resource-list{flex:1 1;overflow-y:auto;padding:0}.resource-row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;padding:8px 12px;transition:background-color .2s}.resource-row:hover{background-color:var(--hover-bg)}.resource-main{display:flex;flex:1 1;flex-direction:column;justify-content:center;margin-right:10px;min-width:0}.resource-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:4px}.resource-name{color:var(--text-primary);cursor:default;font-size:1em;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-name.editable{cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--text-secondary);text-decoration-color:var(--text-secondary);-webkit-text-decoration-style:dotted;text-decoration-style:dotted}.resource-name.editable:hover{color:var(--accent-primary)}.resource-stats{color:var(--text-secondary);font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.85em;margin-left:10px;white-space:nowrap}.resource-stats strong{color:var(--text-primary)}.resource-track{background-color:var(--border-strong);border-radius:3px;height:6px;overflow:hidden;width:100%}.resource-fill{border-radius:3px;height:100%;transition:width .3s ease,background-color .3s ease}.edit-name-input{background-color:var(--input-bg);border:1px solid var(--accent-primary);border-radius:4px;color:var(--text-primary);flex:1 1;font-size:.9em;margin-right:10px;padding:4px 8px}.edit-cap-group{align-items:center;color:var(--text-secondary);display:flex;font-size:.9em;gap:5px;margin-right:10px}.edit-total-input{background-color:var(--input-bg);border:1px solid var(--accent-primary);border-radius:4px;color:var(--text-primary);padding:4px;text-align:center;width:50px}.resource-actions{align-items:center;background-color:var(--bg-app);border:1px solid var(--border-color);border-radius:4px;display:flex;gap:2px;padding:2px}.res-btn-mini{align-items:center;background-color:initial;border:none;border-radius:2px;color:var(--text-primary);cursor:pointer;display:flex;font-size:1.1em;height:24px;justify-content:center;padding:0;transition:all .1s;width:24px}.res-btn-mini:hover{background-color:var(--hover-bg);color:var(--accent-primary);font-weight:700}.res-btn-mini.confirm{color:var(--accent-success);font-weight:700}.res-btn-mini.cancel{color:var(--accent-danger);font-weight:700}.res-btn-mini:active{transform:translateY(1px)}.resource-step-input{-moz-appearance:textfield;background-color:var(--input-bg);border:none;border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);color:var(--text-primary);font-size:.9em;font-weight:600;height:24px;padding:0;text-align:center;width:35px}.resource-step-input::-webkit-inner-spin-button,.resource-step-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.resource-step-input:focus{background-color:var(--hover-bg);outline:none}.res-delete-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.2em;line-height:1;margin-left:6px;opacity:.5;padding:0 4px}.res-delete-btn:hover{color:var(--accent-danger);opacity:1}.resource-add-form{align-items:center;background-color:var(--bg-app);border-top:1px solid var(--border-strong);display:flex;gap:8px;padding:8px 12px}.resource-add-form input{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);font-size:.9em;padding:6px 10px}.input-name{flex:2 1}.input-cap-wrapper{align-items:center;display:flex;flex:1 1;position:relative}.input-cap-label{color:var(--text-secondary);font-size:.75em;left:8px;pointer-events:none;position:absolute}.input-cap{padding-left:75px!important;width:100%}.btn-add{font-size:.9em;font-weight:600;padding:6px 12px}.btn-add:hover{background-color:var(--accent-primary-hover)}.video-container{background-color:#000;height:100%;width:100%}.video-container iframe,.video-container video{border:none;height:100%;width:100%}.layer-list-container{display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.tabs{background-color:var(--bg-app);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0}.tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.9em;font-weight:600;padding:10px;transition:all .2s}.tab-btn:hover{background-color:var(--hover-bg);color:var(--text-primary)}.tab-btn.active{border-bottom-color:var(--accent-primary);color:var(--text-primary)}.tab-content{flex:1 1;overflow-y:auto;padding-bottom:10px}.legend-list{list-style:none;margin:0;padding:0}.legend-item{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-primary);display:flex;font-size:.85em;padding:8px 12px}.legend-swatch{border:1px solid var(--border-strong);border-radius:3px;flex-shrink:0;height:20px;margin-right:12px;width:20px}.legend-swatch.fire{background:repeating-linear-gradient(45deg,#ff00001a,#ff00001a 5px,#f006 0,#f006 7px);border-color:red}.legend-swatch.radar{background:linear-gradient(90deg,#0f0,#ff0,red,#f0f);width:60px}.add-layer-btn{align-items:center;background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.9em;font-weight:600;justify-content:center;margin-bottom:10px;padding:10px;width:100%}.add-layer-btn:hover{background-color:var(--accent-primary-hover)}#layer-list{list-style:none;margin:0;padding:0}.layer-item,.layer-item-empty{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-primary);display:flex;font-size:.9em;padding:8px 10px}.layer-item.boundary-item{align-items:flex-start!important;flex-direction:column;gap:8px}.layer-item:last-child{border-bottom:none}.layer-item-empty{color:var(--text-secondary);font-style:italic;justify-content:center;padding:20px}.layer-controls{align-items:center;display:flex;gap:10px;width:100%}.layer-name{flex-grow:1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-opacity-slider{cursor:pointer;flex-shrink:0;height:4px;width:60px}.layer-remove-btn{background:none;border:none;color:var(--accent-danger);cursor:pointer;flex-shrink:0;font-size:1.2em;opacity:.7;padding:4px;transition:opacity .2s}.layer-remove-btn:hover{color:#a71d2a;opacity:1}.layer-loading-spinner{animation:spin 1s linear infinite;border-top:2px solid var(--text-secondary);border:2px solid var(--text-secondary);border-radius:50%;border-top-color:var(--accent-primary);display:inline-block;height:12px;margin-left:8px;width:12px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.layer-section-header{background-color:var(--bg-app);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8em;font-weight:700;letter-spacing:.5px;padding:8px 10px 4px;text-transform:uppercase}.style-controls{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:10px;padding:8px 10px 8px 24px;width:100%}.style-controls input[type=color]{background:none;border:none;cursor:pointer;flex-shrink:0;height:24px;padding:0;width:24px}.style-controls input[type=range]{-webkit-appearance:none;background:var(--border-strong);border-radius:2px;cursor:pointer;flex:1 1;height:4px;min-width:60px}.style-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);border:2px solid var(--bg-panel);border-radius:50%;cursor:pointer;height:14px;width:14px}.style-label-toggle{align-items:center;background-color:initial;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.85em;gap:6px;margin-left:5px;padding:0;white-space:nowrap}.style-label-toggle input{cursor:pointer;margin:0}.layer-list-group{list-style:none;margin:0;padding:0}.radar-controls-panel{background-color:var(--hover-bg);border:1px solid var(--border-color);border-radius:4px;box-sizing:border-box;margin-top:4px;padding:6px;width:100%}.radar-time{color:var(--text-secondary);font-size:.75em;line-height:1;margin-bottom:4px;text-align:center}.radar-buttons{display:flex;gap:4px;justify-content:center}.radar-buttons button{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-primary);cursor:pointer;font-size:.8em;min-width:30px;padding:2px 8px;transition:background-color .2s}.radar-buttons button:hover{background-color:var(--bg-app)}.radar-controls-panel input[type=range]{height:4px;margin-top:6px}.radar-buttons button.btn-play{background-color:#28a745;border-color:#218838;color:#fff}.radar-buttons button.btn-play:hover{background-color:#218838}.radar-buttons button.btn-pause{background-color:#dc3545;border-color:#c82333;color:#fff}.radar-buttons button.btn-pause:hover{background-color:#c82333}.caltopo-widget-container{background-color:var(--bg-panel);display:flex;flex-direction:column;height:100%;padding:0}.caltopo-header{background-color:var(--bg-app);border-bottom:1px solid var(--border-color);flex-shrink:0;padding:10px}.caltopo-header label{color:var(--text-secondary);display:block;font-size:.85em;font-weight:600;margin-bottom:4px}.caltopo-header select{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);font-size:.9em;padding:6px;width:100%}.caltopo-options{margin-bottom:8px}.caltopo-btn-group{display:flex;gap:8px}.caltopo-btn-group button{border:1px solid #0000;border-radius:4px;cursor:pointer;flex:1 1;font-size:.9em;font-weight:600;padding:6px;white-space:nowrap}.btn-load{background-color:var(--accent-primary);color:#fff}.btn-load:hover{background-color:var(--accent-primary-hover)}.btn-load:disabled{background-color:var(--border-strong);cursor:not-allowed}.btn-toggle{background-color:var(--input-bg);border:1px solid var(--border-strong);color:var(--text-primary)}.btn-toggle:hover{background-color:var(--hover-bg)}.btn-toggle:disabled{color:var(--text-secondary);cursor:not-allowed;opacity:.6}.btn-broadcast{align-items:center;background-color:#0c0254;border:1px solid #0064d3;border-radius:4px;color:#000;cursor:pointer;display:flex;font-size:1.2em;font-weight:700;justify-content:center;padding:0 10px}.btn-broadcast:hover{background-color:#e0a800}.caltopo-list{flex:1 1;overflow-y:auto;padding:10px}.folder-group{border:1px solid var(--border-color);border-radius:4px;margin-bottom:8px;overflow:hidden}.folder-header{align-items:center;background-color:var(--hover-bg);color:var(--text-primary);cursor:pointer;display:flex;font-size:.9em;font-weight:700;justify-content:space-between;padding:8px 10px;-webkit-user-select:none;user-select:none}.folder-header:hover{background-color:var(--border-color)}.folder-content{background-color:var(--bg-panel);display:none}.folder-content.expanded{display:block}.feature-item{align-items:center;border-top:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.85em;gap:8px;padding:6px 10px 6px 20px;transition:background-color .1s}.feature-item:hover{background-color:#00ffff1a;color:var(--text-primary)}.feature-item.selected{background-color:var(--input-bg);border-left:3px solid var(--accent-primary);color:var(--text-primary);font-weight:600;padding-left:17px}.feature-icon{font-size:1.1em;text-align:center;width:18px}.feature-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feature-state-icon{font-size:.8em;opacity:.6}.empty-state{font-size:.9em;font-style:italic;padding:20px}.caltopo-status,.empty-state{color:var(--text-secondary);text-align:center}.caltopo-status{font-size:.8em;margin-top:5px}.airdata-container{background:#222;color:#fff;display:flex;flex-direction:column;height:100%;width:100%}.airdata-header{align-items:center;background:#333;border-bottom:1px solid #444;display:flex;flex-shrink:0;gap:10px;padding:8px}.airdata-header label{flex-shrink:0;font-size:.9em;font-weight:600}.airdata-header select{background:#555;border:1px solid #777;border-radius:4px;color:#fff;flex-grow:1;padding:4px}.airdata-body{flex-grow:1;position:relative}.airdata-iframe{border:none;height:100%;width:100%}.airdata-placeholder{align-items:center;color:#999;display:flex;font-size:.9em;height:100%;justify-content:center;padding:20px;text-align:center}.airdata-test-btn,.airdata-test-footer,.airdata-test-results{display:none}.image-widget-container{align-items:center;background-color:#000;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.widget-image{height:100%;object-fit:contain;width:100%}.image-controls{background:#0009;border-radius:4px;opacity:0;padding:2px;position:absolute;right:5px;top:5px;transition:opacity .2s}.image-widget-container:hover .image-controls{opacity:1}.image-controls button{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2em}.image-controls button:hover{color:var(--accent-danger)}.image-widget-empty{align-items:center;background-color:var(--bg-app);border:2px dashed var(--border-strong);box-sizing:border-box;display:flex;height:100%;justify-content:center;width:100%}.upload-area{text-align:center}.upload-area p{color:var(--text-secondary);margin-bottom:10px}.upload-btn{background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px}.upload-btn:hover{background-color:var(--accent-primary-hover)}.clock-container{background-color:var(--bg-panel);box-sizing:border-box;color:var(--text-primary);flex-direction:column;overflow:hidden;padding:5px}.clock-container,.clock-main{display:flex;height:100%;width:100%}.clock-main{align-items:center;flex:1 1;justify-content:center;min-height:0}.clock-svg{display:block;height:100%;max-height:100%;width:100%}.svg-time-large{fill:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:40px;font-weight:700}.svg-date-small{fill:var(--text-secondary);font-size:12px;font-weight:600;text-transform:uppercase}.svg-date-small,.svg-utc-tiny{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.svg-utc-tiny{fill:var(--accent-primary);font-size:8px;font-weight:400}.clock-controls{color:var(--text-secondary);display:flex;flex-shrink:0;font-size:.75em;height:20px;justify-content:center;margin-top:auto;padding-top:2px}.clock-controls label{align-items:center;cursor:pointer;display:flex}.clock-controls input{cursor:pointer}.iframe-widget-container{background-color:#fff;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;width:100%}.iframe-content{border:none;flex-grow:1;height:100%;width:100%}.iframe-footer-help{background-color:var(--bg-app);border-top:1px solid var(--border-color);color:var(--text-secondary);flex-shrink:0;font-size:.75em;padding:4px 8px;text-align:right}.iframe-footer-help a{color:var(--accent-primary);text-decoration:none}.iframe-footer-help a:hover{text-decoration:underline}.iframe-error-state{align-items:center;background-color:var(--bg-panel);color:var(--text-primary);display:flex;flex-direction:column;height:100%;justify-content:center;padding:20px;text-align:center}.iframe-error-icon{font-size:3em;margin-bottom:15px;opacity:.5}.iframe-error-url{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);font-family:monospace;margin:10px 0;max-width:100%;padding:8px;word-break:break-all}.iframe-error-actions{margin-top:15px}.iframe-btn{background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-weight:600;padding:8px 16px;text-decoration:none}.iframe-btn:hover{background-color:var(--accent-primary-hover)}.tracker-container{background-color:var(--bg-panel);color:var(--text-primary);display:flex;flex-direction:column;height:100%;overflow:hidden}.tracker-list{flex:1 1;overflow-y:auto;padding:0}.tracker-row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:12px;padding:12px}.tracker-info{display:flex;flex:1 1;flex-direction:column;gap:6px}.tracker-header{align-items:center;display:flex;font-size:.95em;justify-content:space-between}.tracker-name{font-weight:600}.tracker-timer{background-color:var(--hover-bg);border-radius:4px;font-family:monospace;font-weight:700;padding:2px 6px}.tracker-offline{color:var(--text-secondary);font-size:.85em;font-style:italic}.tracker-timeline{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;display:flex;gap:1px;height:8px;overflow:hidden}.timeline-bar{height:100%}.timeline-bar.history{background-color:var(--text-secondary);opacity:.4}.timeline-bar.active{min-width:10px;transition:background-color .5s ease,width .5s ease}.tracker-actions button{border:none;border-radius:4px;cursor:pointer;font-size:.85em;font-weight:600;padding:6px 12px}.btn-checkout{background-color:initial;border:1px solid var(--accent-danger)!important;color:var(--accent-danger)}.btn-checkout:hover{background-color:var(--accent-danger);color:#fff}.btn-checkin{background-color:var(--accent-success);color:#fff}.btn-checkin:hover{background-color:#218838}.tracker-form{align-items:center;background-color:var(--bg-app);border-top:1px solid var(--border-color);display:flex;gap:8px;padding:10px}.tracker-form .input-name{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);flex:2 1;padding:8px}.config-inputs{display:flex;gap:8px}.config-inputs label{align-items:center;color:var(--text-secondary);display:flex;font-size:.8em;gap:4px}.config-inputs input{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);padding:4px;text-align:center;width:45px}.btn-add{background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;padding:8px 16px}.dashboard-layout-wrapper{contain:layout paint style;flex:1 1;overflow-x:hidden;overflow-y:auto;padding:10px;position:relative}.layout-admin-bar{background-color:var(--bg-panel);border-bottom:1px solid var(--border-color);box-shadow:0 2px 4px #0000001a;display:flex;justify-content:flex-end;margin:-10px -10px 10px;padding:8px 12px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.save-layout-btn{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:default;font-size:.9em;padding:6px 16px;transition:background-color .2s}.save-layout-btn.has-changes{background-color:#28a745;cursor:pointer}.grid-stack{min-height:100%}.layer-drawer{bottom:0;box-shadow:-4px 0 15px #0000004d;display:flex;flex-direction:column;position:fixed;right:0;top:60px;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:360px;z-index:3000}[data-theme=light] .layer-drawer{--bg-panel:#fff;--bg-app:#f8fafc;--text-primary:#1e293b;--text-secondary:#64748b;--border-color:#e2e8f0;--border-strong:#cbd5e1;--hover-bg:#f1f5f9;--input-bg:#fff;--shadow:#0000001a}[data-theme=dark] .layer-drawer,[data-theme=light] .layer-drawer{background-color:var(--bg-panel);border-left:1px solid var(--border-color);color:var(--text-primary)}[data-theme=dark] .layer-drawer{--bg-panel:#334155;--bg-app:#1e293b;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--border-color:#475569;--border-strong:#64748b;--hover-bg:#475569;--input-bg:#0f172a;--shadow:#00000080}.layer-drawer.open{transform:translateX(0)}.drawer-handle{align-items:center;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px 0 0 8px;border-right:none;box-shadow:-2px 0 6px #0000001a;color:var(--accent-primary);cursor:pointer;display:flex;font-size:1.2em;height:80px;justify-content:center;left:-25px;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .2s,width .2s,left .2s;width:24px;z-index:3001}.drawer-handle:hover{background-color:var(--hover-bg);left:-29px;width:28px}.drawer-header{align-items:center;background-color:var(--bg-app);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:15px}.drawer-header h3{color:var(--text-primary);font-size:1.1em;font-weight:700;margin:0}.drawer-close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5em;line-height:1;padding:0 5px}.drawer-close-btn:hover{color:var(--text-primary)}.drawer-tabs{background-color:var(--bg-app);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0}.drawer-tab{background:none;border:none;border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.95em;font-weight:600;padding:12px;transition:all .2s}.drawer-tab:hover{background-color:var(--hover-bg);color:var(--text-primary)}.drawer-tab.active{background-color:var(--bg-panel);border-bottom-color:var(--accent-primary);color:var(--text-primary)}.drawer-content{background-color:var(--bg-panel);flex:1 1;overflow-y:auto;padding:0;position:relative}.drawer-content .caltopo-widget-container,.drawer-content .layer-list-container{background-color:initial!important;border:none!important;box-shadow:none!important;height:100%!important}.new-event-modal{max-width:500px;width:100%}.helper-text{color:var(--text-secondary);font-size:.85em;line-height:1.4;margin-bottom:12px}.group-selection-container{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:6px;max-height:250px;overflow-y:auto;padding:15px}.group-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.group-item-label{align-items:center;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;flex-direction:row;font-size:.95em;gap:10px;justify-content:flex-start;min-height:24px;padding:10px 12px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.group-item-label:hover{background-color:var(--hover-bg);border-color:var(--text-secondary)}.group-item-label.selected{background-color:#007bff26;border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary);color:var(--accent-primary);font-weight:600}.group-item-label input[type=checkbox]{accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0;height:18px;margin:0;padding:0;width:18px}.group-item-label span{line-height:1.2;margin-top:1px}.no-groups-text{color:var(--text-secondary);font-size:.9em;font-style:italic;padding:20px;text-align:center}.user-management-modal{display:flex;flex-direction:column;max-height:85vh;max-width:900px;width:95%}.user-list-container{background-color:var(--bg-panel);border:1px solid var(--border-strong);border-radius:4px;flex:1 1;margin-top:15px;overflow-y:auto}.user-table{border-collapse:collapse;font-size:.95em;width:100%}.user-table td,.user-table th{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:12px 15px;text-align:left;vertical-align:middle}.user-table th{background-color:var(--bg-app);font-size:.85em;font-weight:600;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:1}.user-table td:last-child,.user-table th:last-child{text-align:right}.user-table tr:hover{background-color:var(--hover-bg)}.role-select{background-color:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);cursor:pointer;padding:6px}.current-role-badge{background-color:var(--hover-bg);border:1px solid var(--border-color);border-radius:12px;color:var(--text-secondary);font-size:.85em;font-weight:600;padding:4px 8px}.action-btn{background:none;border:1px solid #0000;border-radius:4px;cursor:pointer;font-size:.9em;font-weight:600;margin-left:8px;padding:6px 12px;transition:all .2s}.btn-groups{border:1px solid var(--border-strong);color:var(--text-primary)}.btn-groups:hover{background-color:var(--hover-bg);border-color:var(--accent-primary)}.btn-block{border:1px solid #dc3545;color:#dc3545}.btn-block:hover,.btn-scrub{background-color:#dc3545;color:#fff}.btn-scrub:hover{background-color:#bd2130}.btn-approve{background-color:var(--accent-success);color:#fff}.btn-approve:hover{background-color:#218838}.group-selection-panel{background-color:var(--bg-app);border:1px solid var(--border-strong);border-radius:6px;color:var(--text-primary);margin-top:20px;padding:20px}.group-checkbox-container{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.group-option-label{align-items:center;background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:all .2s;-webkit-user-select:none;user-select:none}.group-option-label:hover{background-color:var(--hover-bg);border-color:var(--accent-primary)}.group-option-label input[type=checkbox]{accent-color:var(--accent-primary);cursor:pointer;height:16px;width:16px}.event-selector-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1999}.event-selector-modal{background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 5px 15px #0000004d;color:var(--text-primary);max-width:500px;padding:30px;text-align:center;width:90%}.event-selector-modal h2{color:var(--text-primary);margin-top:0}.event-list{display:flex;flex-direction:column;gap:10px;margin-top:20px;max-height:300px;overflow-y:auto}.event-select-btn{background-color:var(--accent-primary);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:600;padding:15px;transition:background-color .2s}.event-select-btn:hover{background-color:var(--accent-primary-hover)}.account-dropdown{align-items:center;display:flex;margin-left:15px;position:relative}.account-avatar-btn{align-items:center;background-color:var(--bg-panel);border:2px solid var(--border-color);border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;height:40px;justify-content:center;overflow:hidden;padding:0;transition:all .2s ease;width:40px}.account-avatar-btn:focus,.account-avatar-btn:hover{border-color:var(--accent-primary);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb),.2)}.account-avatar-btn img{height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;background-color:var(--accent-primary);color:#fff;display:flex;font-size:1.2em;font-weight:700;height:100%;justify-content:center;text-transform:uppercase;width:100%}.account-dropdown-content{animation:fadeIn .2s ease-out;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 24px #00000026;display:block;min-width:220px;overflow:hidden;position:absolute;right:0;top:50px;z-index:1002}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.account-dropdown-info{background-color:var(--bg-app);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;line-height:1.4;padding:15px}.account-dropdown-info strong{color:var(--text-primary);font-size:1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-dropdown-info span{color:var(--text-secondary);font-size:.85em}.account-dropdown-item{background:none;border:none;color:var(--text-primary);cursor:pointer;display:block;font-size:.95em;padding:12px 15px;text-align:left;text-decoration:none;transition:background-color .2s;width:100%}.account-dropdown-item:hover{background-color:var(--hover-bg)}.account-dropdown-item.logout{border-top:1px solid var(--border-color);color:#d9534f}.account-dropdown-item.logout:hover{background-color:#d9534f1a}header{background-color:var(--bg-header);box-shadow:0 1px 3px var(--shadow);color:var(--text-header);gap:20px;height:60px;padding:0 20px;position:relative;z-index:3100}.header-branding,header{align-items:center;display:flex}.header-branding{gap:12px;height:100%}.header-wgs-icon{height:48px;opacity:.9;width:auto}.header-divider{background-color:#fff3;height:24px;margin:0 5px;width:1px}[data-theme=light] .header-divider{background-color:#ffffff4d}.header-org-logo{height:50px;max-width:200px;object-fit:contain;width:auto}.header-text-group{align-items:baseline;display:flex;gap:6px;white-space:nowrap}.header-app-name{color:var(--text-header);font-size:1.1em;font-weight:500;opacity:.8}.header-text-divider{opacity:.5}.header-org-name{color:var(--text-header);font-size:1.2em;font-weight:800}.header-spacer{flex-grow:1}.header-controls-right{align-items:center;display:flex;gap:12px}.dropdown{position:relative}.dropdown-btn{align-items:center;background-color:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:var(--text-header);cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:6px;height:36px;padding:8px 16px;transition:all .2s}.dropdown-btn.open,.dropdown-btn:hover{background-color:#fff3;border-color:#fff6}.event-dropdown-container{margin-left:5px;position:relative}.header-event-switcher{align-items:center;background-color:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:var(--text-header);cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:6px;height:36px;padding:4px 10px;transition:all .2s}.header-event-switcher.active,.header-event-switcher:hover{background-color:#fff3;border-color:#fff6}.broadcast-layout-btn{align-items:center;background-color:var(--accent-primary);border:1px solid #fff3;border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;display:flex;font-size:.9em;font-weight:700;gap:8px;height:36px;padding:6px 16px;transition:all .2s}.broadcast-layout-btn:hover{background-color:var(--accent-primary-hover);box-shadow:0 4px 8px #0000004d;transform:translateY(-1px)}.broadcast-layout-btn:active{transform:translateY(0)}.unsaved-dot{background:#ffc107;border-radius:50%;box-shadow:0 0 4px #ffc107;display:inline-block;height:8px;width:8px}.dropdown-content{animation:slideDown .15s ease-out;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 8px 24px #00000040;display:none;min-width:800px;overflow:hidden;position:absolute;right:0;top:45px;z-index:1002}.dropdown-content.show{display:block}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.menu-grid{grid-gap:1px;background-color:var(--bg-app);display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.menu-column{background-color:var(--bg-panel);display:flex;flex-direction:column;gap:8px;padding:15px}.dropdown-section-title{border-bottom:2px solid var(--border-color);color:var(--text-secondary);font-size:.75em;font-weight:800;letter-spacing:1px;margin-bottom:8px;padding:0 0 8px 4px;text-transform:uppercase}.menu-item-btn{align-items:center;background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;gap:12px;height:auto;padding:10px 12px;position:relative;text-align:left;transition:all .2s ease;width:100%}.menu-item-btn:hover{background-color:var(--hover-bg);border-color:var(--border-strong);box-shadow:0 2px 5px #0000001a;transform:translateY(-1px)}.menu-item-btn:disabled{background-color:var(--bg-app);border-style:dashed;cursor:not-allowed;opacity:.6}.tool-icon-box{align-items:center;border-radius:8px;box-shadow:0 2px 4px #00000026;color:#fff;display:flex;flex-shrink:0;font-size:1.3em;height:36px;justify-content:center;width:36px}.cat-core{background:linear-gradient(135deg,#007bff,#0056b3)}.cat-data{background:linear-gradient(135deg,#fd7e14,#d35400)}.cat-feeds{background:linear-gradient(135deg,#6f42c1,#5a32a3)}.cat-utils{background:linear-gradient(135deg,#6c757d,#495057)}.tool-label{color:var(--text-primary);flex-grow:1;font-size:.95em;font-weight:600}.tool-toggle-status{background-color:var(--border-strong);border-radius:20px;flex-shrink:0;height:20px;position:relative;transition:background-color .3s;width:36px}.tool-toggle-status:after{background-color:#fff;border-radius:50%;box-shadow:0 1px 2px #0003;content:"";height:16px;left:2px;position:absolute;top:2px;transition:transform .3s,background-color .3s;width:16px}.menu-item-btn.active{background-color:rgba(var(--accent-primary-rgb),.05);border-color:var(--accent-primary)}.menu-item-btn.active .tool-toggle-status{background-color:var(--accent-success)}.menu-item-btn.active .tool-toggle-status:after{transform:translateX(16px)}.menu-item-btn.special .tool-toggle-status{display:none}.menu-item-btn.special:after{color:var(--text-secondary);content:"↗";font-size:1.2em;font-weight:700}.menu-footer{background-color:var(--bg-app);border-top:1px solid var(--border-color);display:flex}.footer-action{background:none;border:none;color:var(--text-primary);cursor:pointer;flex:1 1;font-size:.9em;font-weight:600;padding:12px;transition:background-color .2s}.footer-action:hover{background-color:#0000000d}.footer-action.danger{border-left:1px solid var(--border-color);color:#dc3545}.footer-action.danger:hover{background-color:#dc35451a}.request-badge{animation:pulse 2s infinite;background-color:#dc3545;border:1px solid #dc3545;padding:0 12px}@keyframes pulse{0%{box-shadow:0 0 0 0 #dc3545b3}70%{box-shadow:0 0 0 6px #dc354500}to{box-shadow:0 0 0 0 #dc354500}}.event-dropdown-menu{animation:slideDown .15s ease-out;background-color:var(--bg-panel);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 8px 16px #0003;display:none;left:0;min-width:220px;overflow:hidden;position:absolute;top:45px;z-index:1005}.event-dropdown-menu.show{display:flex;flex-direction:column}.event-menu-header{background-color:var(--bg-app);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8em;font-weight:700;padding:8px 12px;text-transform:uppercase}.event-menu-list{display:flex;flex-direction:column;max-height:300px;overflow-y:auto}.event-menu-item{background:none;border:none;border-bottom:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;font-size:.95em;padding:10px 15px;text-align:left;transition:background-color .1s}.event-menu-item:hover{background-color:var(--hover-bg)}.event-menu-item:last-child{border-bottom:none}.event-menu-empty{color:var(--text-secondary);font-size:.9em;font-style:italic;padding:15px;text-align:center}.event-menu-divider{background-color:var(--border-color);height:1px}.event-menu-create-btn{align-items:center;background-color:var(--bg-panel);border:none;color:var(--accent-success);cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:8px;padding:12px 15px;text-align:left;transition:background-color .2s;width:100%}.event-menu-create-btn:hover{background-color:#28a7451a}.unsaved-icon{animation:pulseIcon 2s infinite;color:#ff9800;font-size:1.2em;text-shadow:0 0 5px #00000080}@keyframes pulseIcon{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.dashboard-container{background-color:var(--bg-app);color:var(--text-primary);display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100vw}.dashboard-content-wrapper{display:flex;flex:1 1;flex-direction:column;overflow:hidden;position:relative}.pending-layout-banner{align-items:center;background-color:#3f51b5;border-bottom:1px solid #fff;box-shadow:0 2px 5px #0003;color:#fff;display:flex;justify-content:space-between;padding:10px 20px;z-index:2000}.btn-load-layout{fontWeight:bold;background-color:#fff;border:none;border-radius:4px;color:#3f51b5;cursor:pointer;font-weight:700;padding:6px 16px;transition:background-color .2s}.btn-load-layout:hover{background-color:#f0f0f0}.btn-keep-layout{background-color:initial;border:1px solid #fff;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:6px 16px}.btn-keep-layout:hover{background-color:#ffffff1a}.create-account-container{align-items:center;background-color:var(--bg-app);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;justify-content:center;min-height:100vh}.create-account-form{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px var(--shadow);color:var(--text-primary);max-width:500px;padding:40px;width:100%}.create-account-form h2{color:var(--text-primary);margin-bottom:10px;margin-top:0;text-align:center}.create-account-form p{color:var(--text-secondary);margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);display:block;font-weight:600;margin-bottom:8px}.form-group input{background-color:var(--input-bg);box-sizing:border-box;color:var(--text-primary);padding:12px;width:100%}.form-group input,.slug-preview{border:1px solid var(--border-strong);border-radius:4px}.slug-preview{align-items:center;background-color:var(--hover-bg);display:flex}.slug-preview span{color:var(--text-secondary);padding:12px}.slug-preview input{background:none;border:none;flex-grow:1;padding-left:0}.payment-info-box{background-color:var(--bg-app);border:1px solid var(--border-color);border-radius:4px;padding:15px}.payment-info-box p{color:var(--text-primary);margin-top:0;text-align:left}.card-element{background:var(--input-bg);border:1px solid var(--border-strong);border-radius:4px;padding:12px}.form-error{background:#f2dede;border:1px solid #ebcccc;border-radius:4px;color:#d9534f;margin-bottom:15px;padding:10px;text-align:center}.create-account-form button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:600;padding:15px;width:100%}.create-account-form button:disabled{background-color:#6c757d;cursor:not-allowed}.legal-container{background-color:var(--bg-app);color:var(--text-primary);font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;margin:0 auto;max-width:800px;padding:40px 20px}.legal-container h1{border-bottom:2px solid var(--border-color);font-size:2.5em;margin-bottom:10px;padding-bottom:20px}.legal-container h2{color:var(--accent-primary);font-size:1.5em;margin-top:40px}.legal-container h3{font-size:1.1em;font-weight:700;margin-top:20px}.legal-container p,.legal-container ul{color:var(--text-primary);margin-bottom:15px}.legal-container ul{padding-left:20px}.legal-container li{margin-bottom:8px}.legal-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.9em;margin-top:50px;padding-top:20px}.back-link{color:var(--accent-primary);display:inline-block;font-weight:700;margin-bottom:20px;text-decoration:none}.back-link:hover{text-decoration:underline}
/*# sourceMappingURL=main.bd5964f1.css.map*/