@charset "UTF-8";body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--landing-bg: hsl(210, 20%, 98%);--landing-foreground: hsl(215, 25%, 15%);--landing-card: hsl(0, 0%, 100%);--landing-primary: hsl(213, 50%, 25%);--landing-primary-hover: hsl(213, 50%, 20%);--landing-secondary: hsl(210, 15%, 95%);--landing-muted: hsl(215, 15%, 45%);--landing-accent: hsl(195, 85%, 45%);--landing-border: hsl(214, 20%, 90%)}.landing-container{min-height:100vh;display:flex;flex-direction:column;background:var(--landing-bg);font-family:Inter,system-ui,-apple-system,sans-serif}.landing-main{flex:1}@keyframes fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{opacity:0;animation:fade-in .5s ease-out forwards}.hero-section{padding:5rem 1rem 4rem;position:relative;overflow:hidden}@media(min-width:768px){.hero-section{padding:8rem 1rem 6rem}}.hero-gradient-blob{position:absolute;top:0;left:50%;transform:translate(-50%);width:800px;height:600px;background:linear-gradient(to bottom,hsla(195,85%,45%,.05),transparent);border-radius:50%;filter:blur(60px);pointer-events:none}.hero-content{max-width:48rem;margin:0 auto;text-align:center;position:relative;z-index:1}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:#11a4d41a;color:var(--landing-accent);padding:.375rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:500;margin-bottom:2rem}.hero-badge-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--landing-accent);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero-title{font-size:2.25rem;font-weight:700;color:var(--landing-foreground);margin-bottom:1.5rem;line-height:1.1}@media(min-width:768px){.hero-title{font-size:3.75rem}}.hero-subtitle{font-size:1.125rem;color:var(--landing-muted);margin-bottom:2.5rem;max-width:42rem;margin-left:auto;margin-right:auto;line-height:1.7}@media(min-width:768px){.hero-subtitle{font-size:1.25rem}}.hero-actions{display:flex;flex-direction:column;gap:.75rem;justify-content:center;align-items:center}@media(min-width:640px){.hero-actions{flex-direction:row}}.landing-btn{font-size:.9375rem;font-weight:500;border-radius:.5rem;text-decoration:none;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;white-space:nowrap;cursor:pointer}.landing-btn-primary{background:var(--landing-primary)!important;color:#fff!important;border:none!important;box-shadow:0 2px 8px #203d6026}.landing-btn-primary:hover{background:var(--landing-primary-hover)!important;color:#fff!important;box-shadow:0 4px 12px #203d6033;transform:translateY(-1px)}.landing-btn-secondary{background:transparent!important;color:var(--landing-foreground)!important;border:1px solid var(--landing-border)!important}.landing-btn-secondary:hover{background:var(--landing-secondary)!important}.button-secondary:hover{background-color:var(--landing-secondary);border-color:var(--landing-border)}.features-section{padding:0 1rem 5rem}@media(min-width:768px){.features-section{padding:0 1rem 8rem}}.features-label{display:block;text-align:center;font-size:.875rem;font-weight:500;color:var(--landing-accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.features-title{text-align:center;font-size:1.5rem;font-weight:600;color:var(--landing-foreground);margin-bottom:3.5rem}@media(min-width:768px){.features-title{font-size:1.875rem}}.features-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;max-width:72rem;margin:0 auto}@media(min-width:768px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.features-grid{grid-template-columns:repeat(3,1fr)}}.feature-card{background:var(--landing-card);border-radius:1rem;padding:1.5rem;border:1px solid hsla(214,20%,90%,.5);transition:all .3s ease;opacity:0;animation:fade-in .5s ease-out forwards}.feature-card:hover{border-color:#11a4d44d;box-shadow:0 10px 25px #11a4d40d}.feature-icon-wrapper{width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;background:var(--landing-secondary);border-radius:.75rem;margin-bottom:1rem;transition:background-color .3s ease}.feature-card:hover .feature-icon-wrapper{background:#11a4d41a}.feature-icon{width:1.25rem;height:1.25rem;color:var(--landing-accent)}.feature-title{font-weight:600;color:var(--landing-foreground);margin-bottom:.5rem;font-size:1rem}.feature-description{font-size:.875rem;color:var(--landing-muted);line-height:1.6;margin:0}.landing-footer{border-top:1px solid hsla(214,20%,90%,.5);padding:2rem 1rem}.footer-content{max-width:72rem;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}@media(min-width:768px){.footer-content{flex-direction:row;justify-content:space-between}}.footer-copyright{font-size:.875rem;color:var(--landing-muted);margin:0}.footer-logo{max-height:1.5rem;width:auto;object-fit:contain;opacity:.6}.navbar{position:fixed;top:0;left:0;right:0;height:64px;background-color:#fff;border-bottom:1px solid #e5e7eb;z-index:1000}.navbar-container{max-width:1800px;margin:0 auto;height:100%;display:flex;align-items:center;padding:0 2rem;gap:2rem}.navbar-brand-group{display:flex;align-items:center;gap:.75rem}.navbar-brand{display:flex;flex-direction:column;text-decoration:none;transition:color .2s}.navbar-brand:hover .navbar-brand-product{color:#3b82f6}.navbar-brand-product{font-size:1.25rem;font-weight:700;color:#111827;line-height:1.2}.navbar-brand-company{font-size:.75rem;font-weight:500;color:#6b7280;line-height:1.2}.navbar-company-logo{max-height:32px;width:auto;object-fit:contain}.navbar-menu{display:flex;gap:1.5rem;flex:1}.navbar-link{color:#6b7280;text-decoration:none;font-weight:500;font-size:.9375rem;padding:.5rem .75rem;border-radius:.375rem;transition:all .2s}.navbar-link:hover{color:#111827;background-color:#f3f4f6}.navbar-link.active{color:#3b82f6;background-color:#eff6ff}.navbar-actions{display:flex;align-items:center;gap:1rem}.navbar-user{padding:.5rem 1rem;background-color:#f3f4f6;border-radius:.5rem;font-size:.875rem;font-weight:500;color:#374151}.navbar-user-link{padding:.5rem 1rem;background-color:#f3f4f6;border-radius:.5rem;font-size:.875rem;font-weight:500;color:#374151;text-decoration:none;transition:all .2s}.navbar-user-link:hover{background-color:#e5e7eb;color:#111827}.navbar-signout{padding:.5rem 1rem;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.navbar-signout:hover{background-color:#fee2e2;color:#991b1b;border-color:#fecaca}.app-layout{min-height:100vh;display:flex;flex-direction:column;background-color:#f9fafb}.app-main{flex:1;padding-top:64px}.project-filters{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;height:fit-content;position:sticky;top:1rem}.create-project-button{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem .75rem;background:#3b82f6;color:#fff;text-decoration:none;border:none;border-radius:.375rem;font-weight:500;font-size:.8125rem;transition:all .15s ease;cursor:pointer}.create-project-button:hover{background:#2563eb}.create-project-button:active{transform:translateY(1px)}.create-project-button svg{flex-shrink:0;width:14px;height:14px}.filters-header{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.75rem;border-bottom:1px solid #f1f5f9}.filters-header h2{font-size:.8125rem;font-weight:600;color:#374151;margin:0;text-transform:uppercase;letter-spacing:.025em}.project-count{font-size:.6875rem;color:#94a3b8;margin:0}.filter-group{display:flex;flex-direction:column;gap:.375rem}.filter-group label{font-size:.75rem;font-weight:500;color:#64748b}.filter-input,.filter-select{width:100%;padding:.5rem .625rem;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.8125rem;color:#1e293b;background:#fafbfc;transition:all .15s ease}.filter-input:focus,.filter-select:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 2px #3b82f61a}.filter-input::placeholder{color:#94a3b8}.date-range{display:flex;flex-direction:column;gap:.375rem}.date-separator{font-size:.6875rem;color:#94a3b8;text-align:center}.reset-button{width:100%;padding:.5rem;background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;border-radius:.375rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.reset-button:hover{background:#f1f5f9;color:#475569;border-color:#cbd5e1}.reset-button:active{transform:translateY(1px)}@media(max-width:1024px){.project-filters{position:static;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem}.filters-header{flex:1;min-width:150px;padding-bottom:0;border-bottom:none}.filter-group{flex:1;min-width:140px}.create-project-button{order:-1}.reset-button{width:auto;padding:.5rem .75rem}}@media(max-width:768px){.project-filters{gap:.5rem;padding:.625rem .75rem}.filters-header h2{font-size:.75rem}.filter-group label{display:none}.filter-input,.filter-select{padding:.4375rem .5rem;font-size:.75rem}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out,-o-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{width:30px;height:30px;margin-left:5px;margin-top:5px;text-align:center;border-radius:15px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.project-map-container{position:relative;width:100%;height:100%;background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;overflow:hidden}.project-map{width:100%;height:100%}.map-legend{position:absolute;bottom:.5rem;right:.5rem;background:#fffffff2;padding:.375rem .5rem;border-radius:.375rem;box-shadow:0 1px 4px #0000001a;z-index:1000;border:1px solid #e2e8f0}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.6875rem;color:#64748b}.legend-marker{width:8px;height:8px;background:#3b82f6;border-radius:50%;border:1.5px solid white;box-shadow:0 0 0 1px #3b82f64d}.marker-selected{animation:marker-pulse 1.5s ease-out}@keyframes marker-pulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.leaflet-container{font-family:inherit}.leaflet-popup-content-wrapper{border-radius:6px;padding:0}.leaflet-popup-content{margin:.75rem 1rem;font-size:.875rem}.leaflet-marker-icon{transition:transform .2s ease}.leaflet-marker-icon:hover{transform:scale(1.1);z-index:1000!important}.marker-cluster{background-color:#3b82f699;border:3px solid rgba(59,130,246,.8)}.marker-cluster div{background-color:#3b82f6cc;color:#fff;font-weight:600}.marker-cluster-small{background-color:#3b82f699}.marker-cluster-small div{background-color:#3b82f6cc}.marker-cluster-medium{background-color:#2563eb99}.marker-cluster-medium div{background-color:#2563ebcc}.marker-cluster-large{background-color:#1d4ed899}.marker-cluster-large div{background-color:#1d4ed8cc}@media(max-width:1024px){.project-map-container{height:220px}.map-legend{bottom:.375rem;right:.375rem;padding:.25rem .375rem}.legend-item{font-size:.625rem}}@media(max-width:768px){.project-map-container{height:180px}}.project-card{display:block;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;overflow:hidden;transition:all .15s ease;text-decoration:none;color:inherit;position:relative;box-shadow:0 1px 3px #00000014}.project-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#c7cbd0}.project-card-actions{position:absolute;top:.5rem;right:.5rem;display:flex;gap:.25rem;opacity:0;transition:opacity .15s ease;z-index:10}.project-card:hover .project-card-actions{opacity:1}.project-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:.375rem;cursor:pointer;transition:all .15s ease;background:#fffffff2;color:#6b7280;box-shadow:0 1px 3px #0000001a}.project-action-btn:hover{background:#fff;box-shadow:0 2px 6px #00000026}.edit-btn:hover{color:#3b82f6}.delete-btn:hover{color:#dc2626}.project-card-image{position:relative;width:100%;height:140px;background-color:#f3f4f6;overflow:hidden}.project-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.project-card:hover .project-card-image img{transform:scale(1.02)}.project-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#9ca3af;background:linear-gradient(135deg,#f5f7fa,#e4e8ec)}.project-placeholder svg{opacity:.5;width:40px;height:40px}.placeholder-text{font-size:12px;color:#6b7280;font-weight:500}.storage-tier-badge{position:absolute;top:8px;right:8px;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;z-index:5}.tier-nearline{background-color:#e3f2fd;color:#1565c0}.tier-coldline{background-color:#fff3e0;color:#e65100}.tier-archive{background-color:#fce4ec;color:#c2185b}.project-card-content{padding:.875rem 1rem}.project-card-title{font-size:.9375rem;font-weight:600;margin:0 0 .375rem;color:#111827;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-description{font-size:.8125rem;color:#64748b;margin:0 0 .75rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-card-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.6875rem;color:#94a3b8;margin-bottom:.625rem}.project-meta-item{display:flex;align-items:center;gap:.25rem}.project-meta-item svg{flex-shrink:0;opacity:.5}.project-status{display:inline-block;padding:.1875rem .5rem;font-size:.6875rem;font-weight:500;border-radius:9999px;text-transform:capitalize}.status-not_started,.status-Not.Started{background-color:#f3f4f6;color:#6b7280}.status-needs_processing,.status-Needs.Processing{background-color:#fef3c7;color:#92400e}.status-processing,.status-Processing{background-color:#dbeafe;color:#1e40af}.status-complete,.status-Complete{background-color:#dcfce7;color:#166534}.status-error,.status-Error{background-color:#fee2e2;color:#991b1b}.project-card--deleting{pointer-events:none;opacity:.7}.project-delete-overlay{position:absolute;inset:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;z-index:20;border-radius:.5rem}.project-delete-overlay span{font-size:.875rem;font-weight:500;color:#6b7280}.delete-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:#dc2626;border-radius:50%;animation:delete-spin .8s linear infinite}@keyframes delete-spin{to{transform:rotate(360deg)}}.project-grid-container{display:flex;flex-direction:column;gap:.75rem;height:100%;overflow:hidden;background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;padding:1rem}.project-grid-header{display:flex;justify-content:space-between;align-items:center;padding:0 .125rem .5rem;flex-shrink:0;border-bottom:1px solid #f1f5f9}.project-grid-header h2{font-size:.8125rem;font-weight:600;color:#374151;margin:0;text-transform:uppercase;letter-spacing:.025em}.view-toggle{display:flex;gap:.125rem;background:#f8fafc;padding:.125rem;border-radius:.375rem;border:1px solid #e2e8f0}.view-btn{padding:.375rem;background:transparent;border:none;border-radius:.25rem;color:#94a3b8;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.view-btn:hover{background:#fff;color:#64748b}.view-btn.active{background:#fff;color:#3b82f6;box-shadow:0 1px 2px #0000000d}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;padding:.25rem;overflow-y:auto;flex:1;min-height:0;align-items:start}.projects-list{display:flex;flex-direction:column;gap:.5rem;padding:.25rem;overflow-y:auto;flex:1;min-height:0}.projects-list .project-wrapper{width:100%}.project-wrapper{cursor:pointer;transition:all .15s ease;border-radius:.5rem}.project-wrapper.selected{outline:2px solid #3b82f6;outline-offset:1px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:#94a3b8}.empty-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.4}.empty-state h3{font-size:.9375rem;font-weight:600;color:#64748b;margin:0 0 .375rem}.empty-state p{font-size:.8125rem;color:#94a3b8;margin:0}.projects-grid::-webkit-scrollbar,.projects-list::-webkit-scrollbar{width:6px}.projects-grid::-webkit-scrollbar-track,.projects-list::-webkit-scrollbar-track{background:transparent}.projects-grid::-webkit-scrollbar-thumb,.projects-list::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.projects-grid::-webkit-scrollbar-thumb:hover,.projects-list::-webkit-scrollbar-thumb:hover{background:#cbd5e1}@media(max-width:1024px){.project-grid-container{padding:.75rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.625rem;max-height:none}.projects-list{max-height:none}}@media(max-width:768px){.project-grid-container{padding:.625rem}.project-grid-header{padding-bottom:.375rem}.project-grid-header h2{font-size:.75rem}.projects-grid{grid-template-columns:1fr;gap:.5rem}.view-toggle{display:none}}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal-card{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease-out}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.5rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.025em}.modal-close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#6b7280;cursor:pointer;transition:all .2s;flex-shrink:0}.modal-close-button:hover{background:#f3f4f6;color:#111827}.modal-close-button svg{flex-shrink:0}.modal-body{padding:2rem;overflow-y:auto;flex:1}@media(max-width:640px){.modal-card{max-width:100%;margin:0;border-radius:0;max-height:100vh}.modal-header{padding:1rem 1.5rem}.modal-body{padding:1.5rem}}.create-project-form{display:flex;flex-direction:column;gap:1.5rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-size:.875rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.25rem}.form-field .required{color:#ef4444;font-weight:700}.form-field input[type=text],.form-field textarea{width:100%;padding:.75rem;border:1.5px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#111827;background:#fff;transition:all .2s;font-family:inherit}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.form-field textarea{resize:vertical;line-height:1.5}.field-hint{font-size:.75rem;color:#6b7280;margin:0}.form-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.875rem;font-weight:500}.form-error svg{flex-shrink:0}.form-actions{display:flex;gap:.75rem;margin-top:.5rem}.btn-cancel,.btn-create{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;box-shadow:0 1px 2px #0000000d}.btn-cancel{background:#fff;color:#374151;border:1.5px solid #d1d5db}.btn-cancel:hover{background:#f9fafb;border-color:#9ca3af}.btn-create{background:#3b82f6;color:#fff}.btn-create:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.btn-create:active{transform:translateY(0)}.btn-create svg{flex-shrink:0}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.loading-message{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 .5rem}.loading-subtitle{font-size:.875rem;color:#6b7280;margin:0}@media(max-width:640px){.form-actions{flex-direction:column}.btn-cancel,.btn-create{width:100%}.loading-state{padding:2rem 1rem}}.edit-project-form{display:flex;flex-direction:column;gap:1.25rem}.edit-project-form .form-field{display:flex;flex-direction:column;gap:.5rem}.edit-project-form .form-field label{font-size:.875rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.25rem}.edit-project-form .form-field .required{color:#ef4444;font-weight:700}.edit-project-form .form-field input[type=text],.edit-project-form .form-field textarea{width:100%;padding:.75rem;border:1.5px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#111827;background:#fff;transition:all .2s;font-family:inherit}.edit-project-form .form-field input:focus,.edit-project-form .form-field textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.edit-project-form .form-field textarea{resize:vertical;line-height:1.5}.edit-project-form .field-hint{font-size:.75rem;color:#6b7280;margin:0}.edit-project-form .checkbox-label-inline{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;font-weight:600;color:#374151}.edit-project-form .checkbox-label-inline input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6}.edit-project-form .auto-archive-hint{margin-top:.375rem;margin-left:26px;line-height:1.4}.edit-project-form .form-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.875rem;font-weight:500}.edit-project-form .form-error svg{flex-shrink:0}.edit-project-form .form-actions{display:flex;gap:.75rem;margin-top:.5rem}.edit-project-form .btn-cancel,.edit-project-form .btn-save{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;box-shadow:0 1px 2px #0000000d}.edit-project-form .btn-cancel{background:#fff;color:#374151;border:1.5px solid #d1d5db}.edit-project-form .btn-cancel:hover{background:#f9fafb;border-color:#9ca3af}.edit-project-form .btn-save{background:#3b82f6;color:#fff}.edit-project-form .btn-save:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.edit-project-form .btn-save:active{transform:translateY(0)}.edit-project-form .btn-save svg{flex-shrink:0}.edit-project-form .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 2rem;text-align:center}.edit-project-form .loading-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:edit-spin 1s linear infinite;margin-bottom:1rem}@keyframes edit-spin{to{transform:rotate(360deg)}}.edit-project-form .loading-message{font-size:.875rem;font-weight:500;color:#374151;margin:0}@media(max-width:640px){.edit-project-form .form-actions{flex-direction:column}.edit-project-form .btn-cancel,.edit-project-form .btn-save{width:100%}.edit-project-form .loading-state{padding:2rem 1rem}}.toast-container{position:fixed;top:5rem;right:1.5rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;min-width:300px;max-width:500px;padding:1rem 1.25rem;background:#fff;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;pointer-events:auto;animation:slideIn .3s ease-out;border-left:4px solid}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-success{border-left-color:#10b981}.toast-success .toast-icon{color:#10b981}.toast-error{border-left-color:#ef4444}.toast-error .toast-icon{color:#ef4444}.toast-info{border-left-color:#3b82f6}.toast-info .toast-icon{color:#3b82f6}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.toast-message{flex:1;font-size:.875rem;font-weight:500;color:#111827;margin:0;line-height:1.5}.toast-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .2s}.toast-close:hover{background:#f3f4f6;color:#6b7280}.toast-close svg{flex-shrink:0}@media(max-width:640px){.toast-container{right:1rem;left:1rem;top:4rem}.toast{min-width:auto;max-width:100%}}.dashboard-container{padding:1rem 1.25rem;max-width:1600px;margin:0 auto;min-height:100vh;background:#f8fafc}.dashboard-layout{display:grid;grid-template-columns:240px 1fr;grid-template-rows:280px 1fr;gap:1rem;height:calc(100vh - 2rem);min-height:700px}.dashboard-layout>*:nth-child(1){grid-column:1;grid-row:1 / 3}.dashboard-layout>*:nth-child(2){grid-column:2;grid-row:1}.dashboard-layout>*:nth-child(3){grid-column:2;grid-row:2;overflow:hidden}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:.75rem;background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;margin:2rem auto;max-width:400px}.dashboard-loading p{color:#6b7280;font-size:.8125rem;margin:0}.dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:.75rem;text-align:center;background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;margin:2rem auto;max-width:400px;padding:2rem}.error-icon{font-size:2rem}.dashboard-error h2{color:#dc2626;font-size:1rem;font-weight:600;margin:0}.dashboard-error p{color:#6b7280;font-size:.8125rem;margin:0}@media(max-width:1280px){.dashboard-layout{grid-template-columns:220px 1fr}}@media(max-width:1024px){.dashboard-container{padding:1rem;background:#f8fafc}.dashboard-layout{grid-template-columns:1fr;grid-template-rows:auto 220px 1fr;height:auto;gap:.75rem}.dashboard-layout>*:nth-child(1){grid-column:1;grid-row:1}.dashboard-layout>*:nth-child(2){grid-column:1;grid-row:2}.dashboard-layout>*:nth-child(3){grid-column:1;grid-row:3}}@media(max-width:768px){.dashboard-container{padding:.75rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:.75rem}.button-primary{width:100%;justify-content:center}.dashboard-layout{gap:.75rem;grid-template-rows:auto 180px 1fr}}.project-sidebar{width:260px;background:#fff;border-right:1px solid #e5e7eb;height:calc(100vh - 64px);overflow-y:auto;position:sticky;top:64px;flex-shrink:0;box-shadow:1px 0 3px #0000000d}.sidebar-nav{padding:1.5rem}.menu-section{margin-bottom:2rem}.menu-section:last-child{margin-bottom:0}.menu-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem .5rem}.menu-label-with-badge{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.menu-label-with-badge .menu-label{margin:0 0 0 .5rem}.badge{background:#f3f4f6;color:#6b7280;font-size:.75rem;font-weight:500;padding:.125rem .5rem;border-radius:9999px;margin-right:.5rem}.menu-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem}.menu-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:6px;color:#374151;text-decoration:none;font-size:.875rem;font-weight:500;transition:all .2s;cursor:pointer}.menu-item:hover{background:#f3f4f6;color:#111827}.menu-item.active{background:#eff6ff;color:#3b82f6}.menu-item svg{flex-shrink:0;stroke:currentColor}.menu-item span{flex:1}.menu-item-disabled{opacity:.5;cursor:not-allowed}.menu-item-disabled:hover{background:transparent;color:#374151}.empty-state{display:flex;align-items:center;gap:.5rem;padding:.75rem;color:#9ca3af;font-size:.75rem}.empty-state svg{flex-shrink:0;stroke:currentColor}.active-context-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.active-context-selector{position:relative}.context-button{display:flex;align-items:center;gap:.625rem;width:100%;padding:.75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#111827;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;text-align:left}.context-button:hover{background:#f3f4f6;border-color:#d1d5db}.context-button svg{flex-shrink:0;stroke:currentColor}.context-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-button .chevron{transition:transform .2s}.context-button .chevron.open{transform:rotate(180deg)}.context-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;z-index:50;padding:.375rem;max-height:300px;overflow-y:auto}.context-option{display:flex;align-items:center;gap:.625rem;width:100%;padding:.625rem .75rem;background:transparent;border:none;border-radius:6px;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s;text-align:left}.context-option:hover{background:#f3f4f6;color:#111827}.context-option.active{background:#eff6ff;color:#3b82f6}.context-option svg{flex-shrink:0;stroke:currentColor}.context-option span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.option-badge{background:#f3f4f6;color:#6b7280;font-size:.75rem;font-weight:500;padding:.125rem .5rem;border-radius:9999px;flex-shrink:0}.context-option.active .option-badge{background:#dbeafe;color:#1e40af}.context-divider{height:1px;background:#e5e7eb;margin:.375rem 0}.subproject-item{background:transparent;border:none;width:100%;text-align:left}.subproject-item .item-badge{background:#f3f4f6;color:#6b7280;font-size:.7rem;font-weight:500;padding:.125rem .375rem;border-radius:9999px;margin-left:auto;flex-shrink:0}.subproject-item.active .item-badge{background:#dbeafe;color:#1e40af}.project-sidebar::-webkit-scrollbar{width:6px}.project-sidebar::-webkit-scrollbar-track{background:#f9fafb}.project-sidebar::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.project-sidebar::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media(max-width:1024px){.project-sidebar{width:200px}}@media(max-width:768px){.project-sidebar{position:fixed;left:-250px;transition:left .3s;z-index:1000;box-shadow:2px 0 8px #0000001a}.project-sidebar.open{left:0}}:root{--liveai-bg: #f8fafc;--liveai-card: #ffffff;--liveai-primary: #3b82f6;--liveai-primary-dark: #2563eb;--liveai-success: #22c55e;--liveai-info: #0ea5e9;--liveai-text: #374151;--liveai-text-secondary: #6b7280;--liveai-border: #e5e7eb;--liveai-border-light: #f3f4f6}.live-ai-tab{display:flex;flex-direction:column;gap:1.5rem}.live-ai-info{display:flex;gap:1rem;padding:1rem 1.25rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px}.live-ai-info-icon{flex-shrink:0;color:var(--liveai-info);margin-top:.125rem}.live-ai-info-content{flex:1}.live-ai-info-content strong{display:block;font-size:.9375rem;font-weight:600;color:#1e40af;margin-bottom:.25rem}.live-ai-info-content p{font-size:.875rem;color:#3b82f6;margin:0 0 .5rem;line-height:1.5}.live-ai-preview-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;color:#854d0e;background:#fef3c7;border-radius:4px}.live-ai-section{background:var(--liveai-card);border-radius:10px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #00000014;border:1px solid var(--liveai-border-light)}.live-ai-section h3{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .25rem}.live-ai-section-description{font-size:.8125rem;color:var(--liveai-text-secondary);margin:0 0 1rem}.live-ai-toggle-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.live-ai-toggle-info h3{margin-bottom:.125rem}.live-ai-toggle-info p{font-size:.8125rem;color:var(--liveai-text-secondary);margin:0}.live-ai-toggle{position:relative;width:52px;height:28px;background:#d1d5db;border:none;border-radius:14px;cursor:pointer;transition:background-color .2s ease;flex-shrink:0}.live-ai-toggle.is-enabled{background:var(--liveai-success)}.live-ai-toggle-slider{position:absolute;top:2px;left:2px;width:24px;height:24px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;transition:transform .2s ease}.live-ai-toggle.is-enabled .live-ai-toggle-slider{transform:translate(24px)}.live-ai-model-list{display:flex;flex-direction:column;gap:.5rem}.live-ai-model-option{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:#f9fafb;border:1px solid var(--liveai-border);border-radius:8px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.live-ai-model-option:hover{background:#f3f4f6}.live-ai-model-option.is-selected{background:#eff6ff;border-color:#bfdbfe}.live-ai-model-option input[type=radio]{width:18px;height:18px;accent-color:var(--liveai-primary);margin-top:2px;cursor:pointer}.live-ai-model-info{display:flex;flex-direction:column;gap:.125rem}.live-ai-model-name{font-size:.875rem;font-weight:500;color:var(--liveai-text)}.live-ai-model-description{font-size:.75rem;color:var(--liveai-text-secondary)}.live-ai-slider-row{display:flex;align-items:center;gap:1rem}.live-ai-slider{flex:1;height:6px;appearance:none;background:#e5e7eb;border-radius:3px;outline:none}.live-ai-slider::-webkit-slider-thumb{appearance:none;width:20px;height:20px;background:var(--liveai-primary);border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #3b82f64d;transition:transform .15s ease}.live-ai-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.live-ai-slider::-moz-range-thumb{width:20px;height:20px;background:var(--liveai-primary);border:none;border-radius:50%;cursor:pointer}.live-ai-slider-value{min-width:48px;text-align:right;font-size:.9375rem;font-weight:600;color:var(--liveai-primary)}.live-ai-slider-labels{display:flex;justify-content:space-between;margin-top:.5rem}.live-ai-slider-labels span{font-size:.6875rem;color:var(--liveai-text-secondary)}.live-ai-class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.live-ai-class-option{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f9fafb;border:1px solid var(--liveai-border);border-radius:6px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.live-ai-class-option:hover{background:#f3f4f6}.live-ai-class-option.is-selected{background:#dcfce7;border-color:#86efac}.live-ai-class-option input[type=checkbox]{width:16px;height:16px;accent-color:var(--liveai-success);cursor:pointer}.live-ai-class-name{font-size:.8125rem;color:var(--liveai-text);text-transform:capitalize}.live-ai-notification-list{display:flex;flex-direction:column;gap:.5rem}.live-ai-notification-option{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:#f9fafb;border-radius:8px;cursor:pointer;transition:background-color .15s ease}.live-ai-notification-option:hover{background:#f3f4f6}.live-ai-notification-option input[type=checkbox]{width:18px;height:18px;accent-color:var(--liveai-primary);margin-top:2px;cursor:pointer}.live-ai-notification-info{display:flex;flex-direction:column;gap:.125rem}.live-ai-notification-name{font-size:.875rem;font-weight:500;color:var(--liveai-text)}.live-ai-notification-description{font-size:.75rem;color:var(--liveai-text-secondary)}.live-ai-actions{display:flex;justify-content:flex-start;padding-top:.5rem}.live-ai-save-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;color:#fff;background:var(--liveai-primary);border:none;border-radius:8px;cursor:pointer;transition:background-color .15s ease,transform .15s ease}.live-ai-save-btn:hover{background:var(--liveai-primary-dark);transform:translateY(-1px)}.live-ai-toast{position:fixed;bottom:2rem;right:2rem;display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background:#111827;color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;animation:toastSlideIn .3s ease;z-index:1000}.live-ai-toast svg{color:var(--liveai-success)}.live-ai-toast span{font-size:.875rem;font-weight:500}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.live-ai-tab{gap:1rem}.live-ai-section{padding:1rem}.live-ai-info{flex-direction:column;gap:.75rem}.live-ai-toggle-row{flex-direction:column;align-items:flex-start}.live-ai-class-grid{grid-template-columns:repeat(2,1fr)}.live-ai-slider-labels{display:none}.live-ai-toast{left:1rem;right:1rem;bottom:1rem}}.project-detail-container{display:flex;min-height:calc(100vh - 64px);background:#f9fafb}.project-main-content{flex:1;padding:2.5rem 3rem;max-width:1600px;margin:0 auto;width:100%}.project-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.header-left h1{font-size:1.875rem;font-weight:700;color:#111827;margin:0 0 .375rem;letter-spacing:-.025em}.header-subtitle{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;margin:0}.header-subtitle svg{flex-shrink:0;width:14px;height:14px}.header-subtitle .separator{margin:0 .25rem;color:#d1d5db}.btn-new-subproject{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.btn-new-subproject:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.btn-new-subproject:active{transform:translateY(0)}.btn-new-subproject svg{flex-shrink:0}.tabs-nav{display:flex;gap:.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding:0 .25rem}.tabs-nav .tab{display:flex;align-items:center;gap:.625rem;padding:.875rem 1.5rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#6b7280;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:-1px;border-radius:8px 8px 0 0;position:relative}.tabs-nav .tab:hover{color:#374151;background:#f9fafb}.tabs-nav .tab.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#fff}.tabs-nav .tab svg{flex-shrink:0;width:18px;height:18px}.tab-content{min-height:400px}.tab-pane{display:flex;flex-direction:column;gap:1.5rem;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.75rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.stat-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px);border-color:#d1d5db}.stat-left{flex:1}.stat-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .625rem}.stat-value{font-size:2.25rem;font-weight:700;color:#111827;margin:0;line-height:1}.stat-unit{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;margin:.5rem 0 0}.stat-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:.9}.stat-icon-info{color:#3b82f6}.stat-icon-success{color:#10b981}.stat-icon-danger{color:#ef4444}.stat-icon-warning{color:#f59e0b}.archival-status-card{background:#fff8e1;border:1px solid #ffecb3;border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.archival-status-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.tier-badge{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tier-badge.tier-nearline{background-color:#e3f2fd;color:#1565c0}.tier-badge.tier-coldline{background-color:#fff3e0;color:#e65100}.tier-badge.tier-archive{background-color:#fce4ec;color:#c2185b}.archival-label{font-size:.875rem;font-weight:600;color:#5d4037}.archival-info{color:#5d4037;font-size:.875rem;margin:0 0 1rem;line-height:1.5}.restore-btn{background:#2196f3;color:#fff;border:none;padding:.625rem 1.25rem;border-radius:6px;cursor:pointer;font-weight:600;font-size:.875rem;transition:all .2s}.restore-btn:hover{background:#1976d2;transform:translateY(-1px);box-shadow:0 2px 8px #2196f34d}.restore-btn:disabled{background:#bdbdbd;cursor:not-allowed;transform:none;box-shadow:none}.archival-status-card.archival-standard{background:#f0f9ff;border-color:#bae6fd}.archival-standard .archival-label{color:#0369a1}.tier-badge.tier-standard{background-color:#ecfdf5;color:#047857}.archival-details{display:flex;gap:2rem;margin-bottom:1rem;padding:.75rem 0}.archival-stat{display:flex;flex-direction:column;gap:.25rem}.archival-stat-value{font-size:1.5rem;font-weight:700;color:#1f2937;line-height:1}.archival-standard .archival-stat-value{color:#0369a1}.archival-stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.archival-info-muted{color:#64748b;margin-bottom:0}.content-card{background:#fff;border-radius:12px;padding:2rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;transition:box-shadow .2s}.content-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.content-card h2{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 1.25rem;letter-spacing:-.025em}.content-card h3{font-size:1rem;font-weight:700;color:#111827;margin:0 0 1rem;letter-spacing:-.025em}.content-card hr{border:none;border-top:1px solid #e5e7eb;margin:1.75rem 0}.card-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.card-header-with-action h2{margin:0}.project-description-text{font-size:1rem;color:#374151;line-height:1.6;margin:0 0 1.5rem}.project-tags{display:flex;flex-wrap:wrap;gap:.75rem}.tag{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;transition:all .2s}.tag svg{flex-shrink:0;width:16px;height:16px}.tag-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.tag-success:hover{background:#a7f3d0}.tag-info{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}.tag-info:hover{background:#bfdbfe}.tag-light{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.tag-light:hover{background:#e5e7eb}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:#9ca3af}.empty-state svg{color:#d1d5db;margin-bottom:1rem}.empty-state p{margin:0;font-size:.875rem}.empty-state-large{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.empty-state-large svg{color:#d1d5db;margin-bottom:1.5rem}.empty-state-large h3{font-size:1.25rem;font-weight:600;color:#6b7280;margin:0 0 .5rem}.empty-state-large p{font-size:.875rem;color:#9ca3af;margin:0 0 1.5rem}.settings-layout{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.settings-main,.settings-sidebar{display:flex;flex-direction:column}.project-settings-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:#374151}.form-group input[type=text],.form-group textarea{width:100%;padding:.75rem;border:1.5px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#111827;background:#fff;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.form-group textarea{resize:vertical;min-height:120px;line-height:1.5}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;padding:.75rem;border-radius:6px;transition:background .2s}.checkbox-label:hover{background:#f9fafb}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;margin-top:2px;flex-shrink:0}.checkbox-label span{flex:1}.checkbox-label strong{font-size:.875rem;color:#111827;display:block;margin-bottom:.25rem}.help-text{font-size:.75rem;color:#6b7280;margin:0}.form-actions{display:flex;gap:1rem;padding-top:.5rem}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;box-shadow:0 1px 2px #0000000d}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary svg{flex-shrink:0}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-primary-large{display:inline-flex;align-items:center;gap:.625rem;padding:.875rem 2rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.btn-primary-large:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.btn-primary-large:active{transform:translateY(0)}.btn-primary-large svg{flex-shrink:0}.btn-text{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:transparent;color:#3b82f6;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-text:hover{background:#eff6ff;color:#2563eb}.btn-text svg{flex-shrink:0}.info-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 0;border-bottom:1px solid #f3f4f6}.info-item:last-child{border-bottom:none}.info-item strong{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.info-item span{font-size:.875rem;color:#111827}.info-item code{font-family:Courier New,monospace;font-size:.75rem;color:#111827;background:#f3f4f6;padding:.25rem .5rem;border-radius:4px;word-break:break-all}.danger-zone-title{color:#dc2626;font-size:.875rem;font-weight:700;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.025em}.btn-danger-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1.5rem;background:#fff;color:#dc2626;border:1.5px solid #dc2626;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.btn-danger-outline:hover{background:#dc2626;color:#fff;box-shadow:0 4px 6px -1px #dc26264d,0 2px 4px -1px #dc262633;transform:translateY(-1px)}.btn-danger-outline:active{transform:translateY(0)}.btn-danger-outline svg{flex-shrink:0}.project-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.project-detail-loading p{color:#6b7280;font-size:.875rem}.project-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;text-align:center;padding:2rem}.error-icon{font-size:3rem}.project-detail-error h2{color:#dc2626;font-size:1.5rem;font-weight:600;margin:0}.project-detail-error p{color:#6b7280;font-size:.875rem;margin:0}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}.settings-layout{grid-template-columns:1fr}.settings-sidebar{order:-1}}@media(max-width:768px){.project-main-content{padding:1rem}.project-header-bar{flex-direction:column;gap:1rem}.header-left h1{font-size:1.5rem}.btn-new-subproject{width:100%;justify-content:center}.tabs-nav{overflow-x:auto;-webkit-overflow-scrolling:touch}.tabs-nav .tab{white-space:nowrap}.stats-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.subprojects-preview-list{display:flex;flex-direction:column;gap:.5rem}.subproject-preview-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:8px;transition:background .2s}.subproject-preview-item:hover{background:#f3f4f6}.subproject-preview-item svg{color:#6b7280;flex-shrink:0}.subproject-name{flex:1;font-size:.875rem;font-weight:500;color:#111827}.subproject-files{font-size:.75rem;color:#6b7280;background:#e5e7eb;padding:.25rem .5rem;border-radius:9999px}.subprojects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.subproject-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s;box-shadow:0 1px 2px #0000000d}.subproject-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.subproject-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.subproject-card-header svg{color:#3b82f6;flex-shrink:0}.subproject-card-header h3{font-size:1rem;font-weight:600;color:#111827;margin:0}.subproject-description{font-size:.875rem;color:#6b7280;margin:0 0 1rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.subproject-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid #f3f4f6}.subproject-file-count{font-size:.75rem;font-weight:500;color:#3b82f6;background:#eff6ff;padding:.25rem .625rem;border-radius:9999px}.subproject-date{font-size:.75rem;color:#9ca3af}.subproject-card-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:160px;border:2px dashed #e5e7eb;background:#fafafa;cursor:pointer}.subproject-card-add:hover{border-color:#3b82f6;background:#eff6ff}.subproject-card-add svg{color:#9ca3af;transition:color .2s}.subproject-card-add:hover svg{color:#3b82f6}.subproject-card-add span{font-size:.875rem;font-weight:500;color:#6b7280;transition:color .2s}.subproject-card-add:hover span{color:#3b82f6}.project-detail-error .error-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#fef2f2;color:#dc2626;border-radius:50%;font-size:2rem;font-weight:700}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.modal-body{padding:1.5rem;overflow-y:auto}.modal-body .form-group{margin-bottom:1.25rem}.modal-body .form-group:last-child{margin-bottom:0}.form-error{background:#fef2f2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:1rem;border:1px solid #fecaca}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;background:#f9fafb;border-top:1px solid #e5e7eb}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-primary:disabled:hover{background:#3b82f6;box-shadow:0 1px 2px #0000000d}@media(max-width:480px){.modal-content{max-height:100vh;border-radius:12px 12px 0 0;margin-top:auto}.modal-footer{flex-direction:column}.modal-footer .btn-primary,.modal-footer .btn-secondary{width:100%;justify-content:center}}:root{--photogrammetry-bg: #f8fafc;--photogrammetry-card: #ffffff;--photogrammetry-primary: #3b82f6;--photogrammetry-primary-dark: #2563eb;--photogrammetry-success: #22c55e;--photogrammetry-info: #0ea5e9;--photogrammetry-text: #374151;--photogrammetry-text-secondary: #6b7280;--photogrammetry-border: #e5e7eb;--photogrammetry-border-light: #f3f4f6}.photogrammetry-page-container{display:flex;min-height:calc(100vh - 64px);background-color:var(--photogrammetry-bg)}.photogrammetry-main-content{flex:1;padding:1.5rem 2rem;max-width:900px}.photogrammetry-loading{display:flex;align-items:center;justify-content:center;min-height:300px;font-size:.875rem;color:var(--photogrammetry-text-secondary)}.photogrammetry-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.photogrammetry-header-left{flex:1}.photogrammetry-header h1{font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 .25rem}.photogrammetry-subtitle{font-size:.875rem;color:var(--photogrammetry-text-secondary);margin:0}.btn-back{padding:.5rem 1rem;background:transparent;border:1px solid #d1d5db;color:var(--photogrammetry-text-secondary);border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;flex-shrink:0}.btn-back:hover{background:var(--photogrammetry-border-light);border-color:#9ca3af;color:var(--photogrammetry-text)}.photogrammetry-info{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:1.5rem}.photogrammetry-info .info-icon{flex-shrink:0;color:var(--photogrammetry-info);margin-top:.125rem}.photogrammetry-info p{margin:0;font-size:.875rem;color:#1e40af;line-height:1.5}.photogrammetry-card{background:var(--photogrammetry-card);border-radius:10px;padding:1.25rem 1.5rem;margin-bottom:1rem;box-shadow:0 1px 3px #00000014;border:1px solid var(--photogrammetry-border-light)}.photogrammetry-card-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 1rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.stat-item{text-align:center}.stat-label{display:block;font-size:.75rem;font-weight:500;color:var(--photogrammetry-text-secondary);text-transform:uppercase;letter-spacing:.025em;margin-bottom:.25rem}.stat-value{display:block;font-size:1.5rem;font-weight:600;color:#111827}.vm-selector{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.vm-selector-field{display:flex;flex-direction:column}.vm-selector-label,.preset-selector-label{font-size:.8125rem;font-weight:500;color:var(--photogrammetry-text);margin-bottom:.5rem}.vm-selector-control,.preset-selector-control{position:relative}.vm-selector-select,.preset-selector-select{width:100%;padding:.625rem 2.5rem .625rem .875rem;font-size:.875rem;color:var(--photogrammetry-text);background-color:#fff;border:1px solid var(--photogrammetry-border);border-radius:6px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;transition:border-color .15s ease,box-shadow .15s ease}.vm-selector-select:hover,.preset-selector-select:hover{border-color:#9ca3af}.vm-selector-select:focus,.preset-selector-select:focus{outline:none;border-color:var(--photogrammetry-primary);box-shadow:0 0 0 3px #3b82f61a}.vm-selector-select:disabled,.preset-selector-select:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.7}.vm-selector-cost{text-align:center;padding:.5rem;background-color:#f0fdf4;border-radius:6px}.vm-selector-cost-value{font-size:1.5rem;font-weight:600;color:var(--photogrammetry-success);margin:.25rem 0}.vm-selector-cost-note{font-size:.75rem;color:var(--photogrammetry-text-secondary)}.preset-selector{display:flex;flex-direction:column}.preset-selector-help{font-size:.8125rem;color:var(--photogrammetry-text-secondary);margin:.5rem 0 0}.advanced-options-hint{font-size:.875rem;color:var(--photogrammetry-text-secondary);margin:0;font-style:italic}.advanced-options-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;transition:background-color .15s ease}.advanced-options-header:hover{background-color:var(--photogrammetry-border-light);margin:0 -.5rem;padding:.75rem .5rem}.advanced-options-header-left{display:flex;align-items:center;gap:.5rem}.advanced-options-icon{color:var(--photogrammetry-text-secondary)}.advanced-options-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.advanced-options-chevron{color:var(--photogrammetry-text-secondary);transition:transform .2s ease}.advanced-options-chevron.is-rotated{transform:rotate(180deg)}.advanced-options-content{padding-top:.75rem;border-top:1px solid var(--photogrammetry-border-light);margin-top:.5rem}.advanced-options-section{background-color:#fafbfc;border:1px solid var(--photogrammetry-border-light);border-radius:6px;margin-bottom:.75rem;overflow:hidden}.advanced-options-section:last-child{margin-bottom:0}.advanced-options-section-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;cursor:pointer;background-color:#fff;transition:background-color .15s ease}.advanced-options-section-header:hover{background-color:var(--photogrammetry-border-light)}.advanced-options-section-header.is-expanded{border-bottom:1px solid var(--photogrammetry-border-light)}.advanced-options-section-title{font-size:.875rem;font-weight:500;color:var(--photogrammetry-text)}.advanced-options-section-content{padding:1rem;display:grid;gap:.75rem}.advanced-options-field{display:flex;flex-direction:column;gap:.375rem}.advanced-options-field-label{font-size:.8125rem;font-weight:500;color:var(--photogrammetry-text-secondary)}.advanced-options-select,.advanced-options-input{width:100%;padding:.5rem .75rem;font-size:.875rem;color:var(--photogrammetry-text);background-color:#fff;border:1px solid var(--photogrammetry-border);border-radius:4px;transition:border-color .15s ease}.advanced-options-select:focus,.advanced-options-input:focus{outline:none;border-color:var(--photogrammetry-primary)}.advanced-options-select:disabled,.advanced-options-input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.7}.advanced-options-checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--photogrammetry-text);cursor:pointer}.advanced-options-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--photogrammetry-primary);cursor:pointer}.advanced-options-checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.photogrammetry-actions{display:flex;justify-content:center;padding:1.5rem 0}.btn-primary{padding:.75rem 2rem;font-size:1rem;font-weight:500;color:#fff;background-color:var(--photogrammetry-primary);border:none;border-radius:8px;cursor:pointer;transition:background-color .15s ease,transform .15s ease,box-shadow .15s ease}.btn-primary:hover:not(:disabled){background-color:var(--photogrammetry-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn-primary.is-processing{background-color:var(--photogrammetry-text-secondary)}.processing-status{margin-top:1.5rem}.processing-status-banner{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:1rem}.processing-status-banner-icon{flex-shrink:0;color:var(--photogrammetry-primary)}.processing-status-spinner{animation:spin 1s linear infinite}.processing-status-banner-content{flex:1}.processing-status-banner-title{font-size:1.125rem;font-weight:600;color:#1e40af;margin:0 0 .25rem}.processing-status-banner-step{font-size:.875rem;color:#3b82f6;margin:0}.processing-status-progress{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.processing-status-progress-bar{flex:1;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.processing-status-progress-fill{height:100%;background:linear-gradient(90deg,var(--photogrammetry-primary) 0%,var(--photogrammetry-success) 100%);transition:width .3s ease;border-radius:4px}.processing-status-progress-text{font-size:.875rem;font-weight:600;color:var(--photogrammetry-text);min-width:3rem;text-align:right}.processing-status-details{background:var(--photogrammetry-card);border-radius:8px;padding:1.25rem;border:1px solid var(--photogrammetry-border-light);margin-bottom:1rem}.processing-status-details-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 1rem}.processing-status-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.processing-status-detail{text-align:center}.processing-status-detail-label{display:block;font-size:.75rem;font-weight:500;color:var(--photogrammetry-text-secondary);text-transform:uppercase;letter-spacing:.025em;margin-bottom:.25rem}.processing-status-detail-value{display:block;font-size:.875rem;font-weight:500;color:var(--photogrammetry-text);word-break:break-all}.processing-status-logs{background:var(--photogrammetry-card);border-radius:8px;padding:1.25rem;border:1px solid var(--photogrammetry-border-light)}.processing-status-logs-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 .75rem}.processing-status-logs-container{background-color:#1f2937;color:#f3f4f6;padding:1rem;border-radius:6px;max-height:300px;overflow-y:auto;font-family:Courier New,Consolas,monospace;font-size:.8125rem;line-height:1.5}.processing-status-log-entry{padding:.25rem 0;border-bottom:1px solid #374151}.processing-status-log-entry:last-child{border-bottom:none}@media(max-width:768px){.photogrammetry-container{padding:1rem}.photogrammetry-header{flex-direction:column;gap:.75rem}.btn-back{align-self:flex-start}.stats-grid{grid-template-columns:repeat(2,1fr)}.vm-selector{grid-template-columns:1fr}.processing-status-details-grid{grid-template-columns:1fr;gap:.75rem}.processing-status-detail{text-align:left;display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--photogrammetry-border-light)}.processing-status-detail:last-child{border-bottom:none}.processing-status-detail-label,.processing-status-detail-value{margin-bottom:0}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr 1fr;gap:.75rem}.stat-value{font-size:1.25rem}}.duplicate-modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.duplicate-modal{background:#fff;border-radius:.75rem;max-width:700px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease-out;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.duplicate-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background:#fefce8;flex-shrink:0}.header-title{display:flex;align-items:center;gap:.75rem}.header-title h2{font-size:1.25rem;font-weight:600;color:#374151;margin:0}.warning-icon{width:24px;height:24px;color:#d97706;flex-shrink:0}.duplicate-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.duplicate-summary{margin:0 0 1.25rem;font-size:.9375rem;color:#4b5563;line-height:1.5}.duplicate-summary strong{color:#374151}.bulk-actions{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f8fafc;border-radius:.5rem;margin-bottom:1rem;flex-wrap:wrap}.bulk-label{font-size:.8125rem;font-weight:500;color:#6b7280;margin-right:.25rem}.bulk-btn{padding:.5rem .875rem;font-size:.8125rem;font-weight:500;border:1px solid #d1d5db;border-radius:.375rem;background:#fff;color:#374151;cursor:pointer;transition:all .15s ease}.bulk-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.bulk-btn:disabled{opacity:.5;cursor:not-allowed}.duplicate-file-list{display:flex;flex-direction:column;gap:.75rem}.duplicate-file-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;background:#fafafa;border:1px solid #e5e7eb;border-radius:.5rem;transition:background-color .15s ease}.duplicate-file-row:hover{background:#f3f4f6}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.375rem}.file-name-row{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.file-name{font-weight:500;color:#1f2937;font-size:.9375rem;word-break:break-word}.file-size{font-size:.8125rem;color:#6b7280;white-space:nowrap}.file-details{display:flex;flex-direction:column;gap:.25rem}.content-indicator{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500}.content-indicator svg{width:14px;height:14px;flex-shrink:0}.content-indicator.identical{color:#059669}.content-indicator.different{color:#d97706}.existing-info{font-size:.75rem;color:#6b7280;margin-left:1.375rem}.rename-preview{font-size:.8125rem;color:#3b82f6;margin-top:.25rem;padding:.375rem .625rem;background:#eff6ff;border-radius:.25rem;display:inline-block}.rename-preview strong{font-weight:600}.file-action{flex-shrink:0}.action-select{padding:.5rem 2rem .5rem .75rem;font-size:.875rem;font-weight:500;border:1px solid #d1d5db;border-radius:.375rem;background:#fff;color:#374151;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;min-width:120px;transition:all .15s ease}.action-select:hover:not(:disabled){border-color:#9ca3af}.action-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.action-select:disabled{opacity:.5;cursor:not-allowed}.duplicate-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.btn-cancel{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;border:1px solid #d1d5db;border-radius:.5rem;background:#fff;color:#374151;cursor:pointer;transition:all .15s ease}.btn-cancel:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-continue{padding:.625rem 1.5rem;font-size:.875rem;font-weight:500;border:none;border-radius:.5rem;background:#3b82f6;color:#fff;cursor:pointer;transition:all .15s ease}.btn-continue:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f64d}.btn-continue:disabled{background:#93c5fd;cursor:not-allowed;transform:none;box-shadow:none}@media(max-width:768px){.duplicate-modal-backdrop{padding:0;align-items:flex-end}.duplicate-modal{max-width:100%;max-height:90vh;border-radius:1rem 1rem 0 0;animation:slideUpMobile .3s ease-out}@keyframes slideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.duplicate-modal-header{padding:1rem}.header-title h2{font-size:1.125rem}.duplicate-modal-body{padding:1rem}.bulk-actions{padding:.625rem .75rem;gap:.5rem}.bulk-btn{padding:.5rem .75rem;font-size:.75rem}.duplicate-file-row{flex-direction:column;gap:.75rem;padding:.875rem}.file-action{width:100%}.action-select{width:100%;min-width:auto;padding:.625rem 2rem .625rem .75rem}.duplicate-modal-footer{padding:1rem;flex-direction:column-reverse;gap:.5rem}.btn-cancel,.btn-continue{width:100%;justify-content:center;min-height:44px}}@media(max-width:480px){.duplicate-modal-header{padding:.75rem 1rem}.header-title h2{font-size:1rem}.warning-icon{width:20px;height:20px}.duplicate-modal-body{padding:.75rem}.duplicate-summary{font-size:.875rem}.bulk-actions{flex-wrap:wrap}.bulk-label{width:100%;margin-bottom:.25rem}.bulk-btn{flex:1;text-align:center}.file-name{font-size:.875rem}.content-indicator,.existing-info,.rename-preview{font-size:.75rem}.existing-info{margin-left:0}}.project-selector{position:relative}.selector-label{display:block;font-size:.75rem;font-weight:500;color:#6b7280;margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.025em}.selector-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.625rem .875rem;background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#1f2937;cursor:pointer;transition:all .15s ease;text-align:left}.selector-button:hover:not(.disabled){border-color:#3b82f6;background:#fafbfc}.selector-button:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.selector-button.open{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.selector-button.disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.selector-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loading-text{color:#9ca3af}.selector-chevron{width:18px;height:18px;color:#9ca3af;flex-shrink:0;margin-left:.5rem;transition:transform .2s ease}.selector-chevron.rotated{transform:rotate(180deg)}.selector-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #0000001f;z-index:100;max-height:280px;overflow-y:auto;animation:dropdownFadeIn .15s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-option{width:100%;display:flex;align-items:center;gap:.625rem;padding:.625rem .875rem;background:none;border:none;font-size:.875rem;color:#374151;cursor:pointer;text-align:left;transition:background .1s ease}.dropdown-option:hover{background:#f3f4f6}.dropdown-option.selected{background:#eff6ff;color:#1d4ed8}.dropdown-option:first-child{border-radius:7px 7px 0 0}.dropdown-option:last-child{border-radius:0 0 7px 7px}.dropdown-option.sub-option{padding-left:1.75rem}.option-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.option-icon svg{width:16px;height:16px;color:#6b7280}.dropdown-option.selected .option-icon svg{color:#3b82f6}.option-icon.sub svg{width:14px;height:14px;color:#9ca3af}.dropdown-option.selected .option-icon.sub svg{color:#3b82f6}.option-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.check-icon{width:16px;height:16px;color:#3b82f6;flex-shrink:0}.dropdown-divider{height:1px;background:#e5e7eb;margin:.25rem 0}.selector-help{margin:.375rem 0 0;font-size:.75rem;color:#9ca3af}@media(max-width:640px){.selector-button,.dropdown-option{padding:.75rem 1rem;font-size:1rem}.dropdown-option.sub-option{padding-left:2rem}}.file-count-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f3f4f6;border-radius:6px;font-size:.8125rem;color:#6b7280;border:none;cursor:default}.file-count-badge.loading{min-width:160px}.badge-skeleton{height:16px;width:120px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.file-count-badge.error{background:#fef2f2;color:#b91c1c}.file-count-badge.empty{background:#f9fafb;color:#9ca3af}.file-count-badge.clickable{cursor:pointer;transition:all .15s ease}.file-count-badge.clickable:hover{background:#e5e7eb;color:#374151}.file-count-badge.clickable:active{background:#d1d5db}.badge-icon{width:16px;height:16px;flex-shrink:0;color:#9ca3af}.file-count-badge.clickable:hover .badge-icon{color:#6b7280}.badge-text{line-height:1.3}.badge-text strong{font-weight:600;color:#374151}.badge-text.muted{color:inherit}.file-count-badge.clickable:hover .badge-text strong{color:#1f2937}.badge-arrow{width:14px;height:14px;flex-shrink:0;color:#d1d5db;margin-left:.25rem;transition:transform .15s ease,color .15s ease}.file-count-badge.clickable:hover .badge-arrow{color:#9ca3af;transform:translate(2px)}@media(max-width:640px){.file-count-badge{font-size:.875rem;padding:.625rem .875rem;width:100%;justify-content:center}.badge-icon{width:18px;height:18px}}.fullscreen-icon{background-image:url("data:image/svg+xml,%3csvg%20viewBox='0%200%2026%2052'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M20.6%2036.7H16a.9.9%200%200%201-.8-.8v-4.5c0-.2.2-.4.4-.4h1.4c.3%200%20.5.2.5.4v3h3c.2%200%20.4.2.4.5v1.4c0%20.2-.2.4-.4.4zm-9.9-.8v-4.5c0-.2-.2-.4-.4-.4H8.9c-.3%200-.5.2-.5.4v3h-3c-.2%200-.4.2-.4.5v1.4c0%20.2.2.4.4.4H10c.4%200%20.8-.4.8-.8zm0%2010.7V42c0-.4-.4-.8-.8-.8H5.4c-.2%200-.4.2-.4.4v1.4c0%20.3.2.5.4.5h3v3c0%20.2.2.4.5.4h1.4c.2%200%20.4-.2.4-.4zm6.9%200v-3h3c.2%200%20.4-.2.4-.5v-1.4c0-.2-.2-.4-.4-.4H16c-.4%200-.8.4-.8.8v4.5c0%20.2.2.4.4.4h1.4c.3%200%20.5-.2.5-.4zM5%2010.3V5.9c0-.5.4-.9.9-.9h4.4c.2%200%20.4.2.4.4V7c0%20.2-.2.4-.4.4h-3v3c0%20.2-.2.4-.4.4H5.4a.4.4%200%200%201-.4-.4zm10.3-4.9V7c0%20.2.2.4.4.4h3v3c0%20.2.2.4.4.4h1.5c.2%200%20.4-.2.4-.4V5.9c0-.5-.4-.9-.9-.9h-4.4c-.2%200-.4.2-.4.4zm5.3%209.9H19c-.2%200-.4.2-.4.4v3h-3c-.2%200-.4.2-.4.4v1.5c0%20.2.2.4.4.4h4.4c.5%200%20.9-.4.9-.9v-4.4c0-.2-.2-.4-.4-.4zm-9.9%205.3V19c0-.2-.2-.4-.4-.4h-3v-3c0-.2-.2-.4-.4-.4H5.4c-.2%200-.4.2-.4.4v4.4c0%20.5.4.9.9.9h4.4c.2%200%20.4-.2.4-.4z'%20fill='currentColor'/%3e%3c/svg%3e");background-size:26px 52px}.fullscreen-icon.leaflet-fullscreen-on{background-position:0 -26px}.leaflet-touch .fullscreen-icon{background-position:2px 2px}.leaflet-touch .fullscreen-icon.leaflet-fullscreen-on{background-position:2px -24px}.leaflet-container:-webkit-full-screen{width:100%!important;height:100%!important;z-index:99999}.leaflet-container:fullscreen{width:100%!important;height:100%!important;z-index:99999}.leaflet-pseudo-fullscreen{position:fixed!important;width:100%!important;height:100%!important;top:0!important;left:0!important;z-index:99999}.upload-map-wrapper{flex:1;min-height:400px;width:100%;position:relative;border-radius:.5rem;display:flex;flex-direction:column}.map-legend{background:#fff;padding:.625rem 1rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:1.25rem;flex-shrink:0;z-index:900;position:relative}.legend-title{font-weight:600;color:#374151;font-size:.8125rem}.legend-dot{width:10px;height:10px;border-radius:50%;border:2px solid white;box-shadow:0 1px 2px #00000026}.legend-dot.pending{background:#f59e0b}.legend-dot.uploading{background:#3b82f6;animation:legend-pulse 1.5s ease-in-out infinite}.legend-dot.uploaded{background:#22c55e}@keyframes legend-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.map-help-text{background:#374151e6;color:#fff;padding:.375rem .75rem;font-size:.75rem;text-align:center;flex-shrink:0}.upload-map-wrapper .leaflet-container{flex:1;min-height:0;position:relative;z-index:1}.upload-map-wrapper .leaflet-control-container{position:absolute;z-index:800}.upload-map-wrapper .leaflet-control-attribution{z-index:700}.upload-map-disabled{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8fafc,#e5e7eb);color:#6b7280;padding:2rem;text-align:center}.upload-map-disabled p{font-size:1rem;font-weight:500;margin:.375rem 0;color:#374151}.upload-map-disabled .hint{font-size:.8125rem;color:#6b7280;margin-top:.375rem}.marker-popup{min-width:280px;max-width:320px;padding:.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.marker-thumbnail{width:100%;height:auto;max-height:200px;object-fit:cover;border-radius:.375rem;margin-bottom:.75rem;box-shadow:0 2px 4px #0000001a}.marker-filename{margin:.5rem 0;font-size:.95rem;font-weight:500;word-break:break-word;color:#374151}.marker-delete-btn{width:100%;padding:.75rem;min-height:44px;background:#dc2626;color:#fff;border:none;border-radius:.375rem;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:.375rem}.marker-delete-btn:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 2px 6px #dc26264d}.marker-delete-btn:active{transform:translateY(0)}.marker-status{margin:.5rem 0 0;padding:.375rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;text-align:center}.marker-status.uploading{background:#eff6ff;color:#3b82f6}.marker-status.uploaded{background:#f0fdf4;color:#22c55e}.custom-marker-icon{background:transparent!important;border:none!important}.marker-icon.marker-pulse{animation:marker-pulse-anim 1.5s ease-in-out infinite}@keyframes marker-pulse-anim{0%,to{transform:scale(1);box-shadow:0 2px 4px #0003}50%{transform:scale(1.15);box-shadow:0 4px 12px #3b82f666}}.leaflet-control-fullscreen{background-color:#fff;border-radius:.25rem}.leaflet-popup-content-wrapper{border-radius:.5rem;box-shadow:0 4px 12px #00000026}.leaflet-popup-content{margin:.75rem;min-width:260px}@media(max-width:768px){.map-legend{padding:.5rem .75rem;gap:.75rem}.legend-title{font-size:.75rem}.legend-items{gap:.625rem}.legend-item{font-size:.6875rem}.legend-dot{width:8px;height:8px}}.uppy-Root{box-sizing:border-box;color:#333;font-family:-apple-system,system-ui,BlinkMacSystemFont,Segoe UI,Segoe UI Symbol,Segoe UI Emoji,Apple Color Emoji,Roboto,Helvetica,Arial,sans-serif;line-height:1;position:relative;text-align:left;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.uppy-Root[dir=rtl],[dir=rtl] .uppy-Root{text-align:right}.uppy-Root *,.uppy-Root :after,.uppy-Root :before{box-sizing:inherit}.uppy-Root [hidden]{display:none}.uppy-u-reset{all:initial;appearance:none;box-sizing:border-box;font-family:-apple-system,system-ui,BlinkMacSystemFont,Segoe UI,Segoe UI Symbol,Segoe UI Emoji,Apple Color Emoji,Roboto,Helvetica,Arial,sans-serif;line-height:1}[dir=rtl] .uppy-u-reset{text-align:right}.uppy-c-textInput{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;line-height:1.5;padding:6px 8px}.uppy-size--md .uppy-c-textInput{padding:8px 10px}.uppy-c-textInput:focus{border-color:#1269cf99;box-shadow:0 0 0 3px #1269cf26;outline:none}[data-uppy-theme=dark] .uppy-c-textInput{background-color:#333;border-color:#333;color:#eaeaea}[data-uppy-theme=dark] .uppy-c-textInput:focus{border-color:#525252;box-shadow:none}.uppy-c-icon{display:inline-block;max-height:100%;max-width:100%;overflow:hidden;fill:currentColor}.uppy-c-btn{align-items:center;color:inherit;display:inline-flex;font-family:inherit;font-size:inherit;font-weight:500;justify-content:center;line-height:1;transition-duration:.3s;transition-property:background-color,color;-webkit-user-select:none;user-select:none;white-space:nowrap}.uppy-c-btn,[dir=rtl] .uppy-c-btn{text-align:center}.uppy-c-btn:not(:disabled):not(.disabled){cursor:pointer}.uppy-c-btn::-moz-focus-inner{border:0}.uppy-c-btn-primary{background-color:#1269cf;border-radius:4px;color:#fff;font-size:14px;padding:10px 18px}.uppy-c-btn-primary:not(:disabled):hover{background-color:#0e51a0}.uppy-c-btn-primary:focus{box-shadow:0 0 0 3px #1269cf66;outline:none}.uppy-size--md .uppy-c-btn-primary{padding:13px 22px}[data-uppy-theme=dark] .uppy-c-btn-primary{color:#eaeaea}[data-uppy-theme=dark] .uppy-c-btn-primary:focus{outline:none}[data-uppy-theme=dark] .uppy-c-btn-primary::-moz-focus-inner{border:0}[data-uppy-theme=dark] .uppy-c-btn-primary:focus{box-shadow:0 0 0 2px #aae1ffd9}.uppy-c-btn-primary.uppy-c-btn--disabled{background-color:#8eb2db}.uppy-c-btn-link{background-color:initial;border-radius:4px;color:#525252;font-size:14px;line-height:1;padding:10px 15px}.uppy-c-btn-link:hover{color:#333}.uppy-c-btn-link:focus{box-shadow:0 0 0 3px #1269cf40;outline:none}.uppy-size--md .uppy-c-btn-link{padding:13px 18px}[data-uppy-theme=dark] .uppy-c-btn-link{color:#eaeaea}[data-uppy-theme=dark] .uppy-c-btn-link:focus{outline:none}[data-uppy-theme=dark] .uppy-c-btn-link::-moz-focus-inner{border:0}[data-uppy-theme=dark] .uppy-c-btn-link:focus{box-shadow:0 0 0 2px #aae1ffd9}[data-uppy-theme=dark] .uppy-c-btn-link:hover{color:#939393}.uppy-ProviderBrowser-viewType--grid ul.uppy-ProviderBrowser-list,.uppy-ProviderBrowser-viewType--unsplash ul.uppy-ProviderBrowser-list{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;padding:6px}.uppy-ProviderBrowser-viewType--grid ul.uppy-ProviderBrowser-list:after,.uppy-ProviderBrowser-viewType--unsplash ul.uppy-ProviderBrowser-list:after{content:"";flex:auto}.uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem,.uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem{margin:0;position:relative;width:50%}.uppy-size--md .uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem,.uppy-size--md .uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem{width:33.3333%}.uppy-size--lg .uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem,.uppy-size--lg .uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem{width:25%}.uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem:before,.uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem:before{content:"";display:block;padding-top:100%}.uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem--selected img,.uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem--selected svg,.uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem--selected img,.uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem--selected svg{opacity:.85}.uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem--disabled,.uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem--disabled{opacity:.5}.uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem--noPreview .uppy-ProviderBrowserItem-inner,.uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem--noPreview .uppy-ProviderBrowserItem-inner{background-color:#93939333}[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem--noPreview .uppy-ProviderBrowserItem-inner,[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem--noPreview .uppy-ProviderBrowserItem-inner{background-color:#eaeaea33}.uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem--noPreview svg,.uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem--noPreview svg{height:30%;width:30%;fill:#000000b3}[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--grid li.uppy-ProviderBrowserItem--noPreview svg,[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--unsplash li.uppy-ProviderBrowserItem--noPreview svg{fill:#fffc}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-inner,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-inner{border-radius:4px;height:calc(100% - 14px);inset:7px;overflow:hidden;position:absolute;text-align:center;width:calc(100% - 14px)}@media(hover:none){.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-inner .uppy-ProviderBrowserItem-author,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-inner .uppy-ProviderBrowserItem-author{display:block}}[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-inner,[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-inner{box-shadow:0 0 0 3px #aae1ffb3}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-inner img,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-inner img{border-radius:4px;height:100%;object-fit:cover;width:100%}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-author,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-author{background:#0000004d;bottom:0;color:#fff;display:none;font-size:12px;font-weight:500;left:0;margin:0;padding:5px;position:absolute;text-decoration:none;width:100%}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-author:hover,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-author:hover{background:#0006;text-decoration:underline}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-checkbox,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-checkbox{background-color:#1269cf;border-radius:50%;height:26px;opacity:0;position:absolute;right:16px;top:16px;width:26px;z-index:1002}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-checkbox:after,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-checkbox:after{height:7px;inset-inline-start:7px;top:8px;width:12px}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem--is-checked .uppy-ProviderBrowserItem-checkbox,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem--is-checked .uppy-ProviderBrowserItem-checkbox{opacity:1}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-checkbox--grid:focus+label .uppy-ProviderBrowserItem-author,.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-checkbox--grid:hover+label .uppy-ProviderBrowserItem-author,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-checkbox--grid:focus+label .uppy-ProviderBrowserItem-author,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-checkbox--grid:hover+label .uppy-ProviderBrowserItem-author{display:block}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-checkbox--grid:focus+label,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-checkbox--grid:focus+label{box-shadow:0 0 0 3px #1269cf80}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-checkbox--grid:focus+label:focus,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-checkbox--grid:focus+label:focus{outline:none}.uppy-ProviderBrowser-viewType--grid .uppy-ProviderBrowserItem-checkbox--grid:focus+label::-moz-focus-inner,.uppy-ProviderBrowser-viewType--unsplash .uppy-ProviderBrowserItem-checkbox--grid:focus+label::-moz-focus-inner{border:0}.uppy-ProviderBrowser-viewType--list{background-color:#fff}[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--list{background-color:#1f1f1f}.uppy-ProviderBrowser-viewType--list li.uppy-ProviderBrowserItem{align-items:center;display:flex;margin:0;padding:7px 15px}[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--list li.uppy-ProviderBrowserItem{color:#eaeaea}.uppy-ProviderBrowser-viewType--list li.uppy-ProviderBrowserItem--disabled{opacity:.6}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-checkbox{background-color:#fff;border:1px solid #cfcfcf;border-radius:3px;height:17px;margin-inline-end:15px;width:17px}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-checkbox:focus{border:1px solid #1269cf;box-shadow:0 0 0 3px #1269cf40;outline:none}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-checkbox:after{height:5px;inset-inline-start:3px;opacity:0;top:4px;width:9px}[data-uppy-theme=dark] .uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-checkbox:focus{border-color:#02baf2b3;box-shadow:0 0 0 3px #02baf233}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem--is-checked .uppy-ProviderBrowserItem-checkbox,.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem--is-partial .uppy-ProviderBrowserItem-checkbox{background-color:#1269cf;border-color:#1269cf}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem--is-checked .uppy-ProviderBrowserItem-checkbox:after,.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem--is-partial .uppy-ProviderBrowserItem-checkbox:after{opacity:1}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-inner{align-items:center;color:inherit;display:flex;font-family:-apple-system,system-ui,BlinkMacSystemFont,Segoe UI,Segoe UI Symbol,Segoe UI Emoji,Apple Color Emoji,Roboto,Helvetica,Arial,sans-serif;overflow:hidden;padding:2px;text-overflow:ellipsis;white-space:nowrap}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-inner:focus{outline:none;text-decoration:underline}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-inner img,.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-inner svg{margin-inline-end:8px}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-inner span{line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem--disabled .uppy-ProviderBrowserItem-inner{cursor:default}.uppy-ProviderBrowser-viewType--list .uppy-ProviderBrowserItem-iconWrap{margin-inline-end:7px;width:20px}.uppy-ProviderBrowserItem-checkbox{cursor:pointer;flex-shrink:0;position:relative}.uppy-ProviderBrowserItem-checkbox:disabled,.uppy-ProviderBrowserItem-checkbox:disabled:after{cursor:default}[data-uppy-theme=dark] .uppy-ProviderBrowserItem-checkbox{background-color:#1f1f1f;border-color:#939393}[data-uppy-theme=dark] .uppy-ProviderBrowserItem--is-checked .uppy-ProviderBrowserItem-checkbox{background-color:#333}.uppy-ProviderBrowserItem--is-checked .uppy-ProviderBrowserItem-checkbox:after{border-bottom:2px solid #eaeaea;border-left:2px solid #eaeaea;content:"";cursor:pointer;position:absolute;transform:rotate(-45deg)}.uppy-ProviderBrowserItem--is-partial .uppy-ProviderBrowserItem-checkbox:after{background-color:#eaeaea!important;content:""!important;height:2px!important;left:20%!important;position:absolute!important;right:20%!important;top:50%!important;transform:translateY(-50%)!important}.uppy-SearchProvider{align-items:center;display:flex;flex:1;flex-direction:column;height:100%;justify-content:center;width:100%}[data-uppy-theme=dark] .uppy-SearchProvider{background-color:#1f1f1f}.uppy-SearchProvider-input{margin-bottom:15px;max-width:650px;width:90%}.uppy-size--md .uppy-SearchProvider-input{margin-bottom:20px}.uppy-SearchProvider-input::-webkit-search-cancel-button{display:none}.uppy-SearchProvider-searchButton{padding:13px 25px}.uppy-size--md .uppy-SearchProvider-searchButton{padding:13px 30px}.uppy-DashboardContent-panelBody{align-items:center;display:flex;flex:1;justify-content:center}[data-uppy-theme=dark] .uppy-DashboardContent-panelBody{background-color:#1f1f1f}.uppy-Provider-auth,.uppy-Provider-empty,.uppy-Provider-error,.uppy-Provider-loading{align-items:center;color:#939393;display:flex;flex:1;flex-flow:column wrap;justify-content:center}.uppy-Provider-empty{color:#939393}.uppy-Provider-authIcon svg{height:75px;width:100px}.uppy-Provider-authTitle{color:#757575;font-size:17px;font-weight:400;line-height:1.4;margin-bottom:30px;max-width:500px;padding:0 15px;text-align:center}.uppy-size--md .uppy-Provider-authTitle{font-size:20px}[data-uppy-theme=dark] .uppy-Provider-authTitle{color:#cfcfcf}.uppy-Provider-btn-google{align-items:center;background:#4285f4;display:flex;padding:8px 12px!important}.uppy-Provider-btn-google:hover{background-color:#1266f1}.uppy-Provider-btn-google:focus{box-shadow:0 0 0 3px #4285f466;outline:none}.uppy-Provider-btn-google svg{margin-right:8px}.uppy-Provider-breadcrumbs{color:#525252;flex:1;font-size:12px;margin-bottom:10px;text-align:start}.uppy-size--md .uppy-Provider-breadcrumbs{margin-bottom:0}[data-uppy-theme=dark] .uppy-Provider-breadcrumbs{color:#eaeaea}.uppy-Provider-breadcrumbsIcon{color:#525252;display:inline-block;line-height:1;margin-inline-end:4px;vertical-align:middle}.uppy-Provider-breadcrumbsIcon svg{height:13px;width:13px;fill:#525252}.uppy-Provider-breadcrumbs button{border-radius:3px;display:inline-block;line-height:inherit;padding:4px}.uppy-Provider-breadcrumbs button:focus{outline:none}.uppy-Provider-breadcrumbs button::-moz-focus-inner{border:0}.uppy-Provider-breadcrumbs button:hover{color:#0e51a0}.uppy-Provider-breadcrumbs button:focus{background-color:#dfe6f1}[data-uppy-theme=dark] .uppy-Provider-breadcrumbs button:focus{background-color:#333}.uppy-Provider-breadcrumbs button:not(:last-of-type){text-decoration:underline}.uppy-Provider-breadcrumbs button:last-of-type{color:#333;cursor:normal;font-weight:500;pointer-events:none}.uppy-Provider-breadcrumbs button:hover{cursor:pointer}[data-uppy-theme=dark] .uppy-Provider-breadcrumbs button{color:#eaeaea}.uppy-ProviderBrowser{display:flex;flex:1;flex-direction:column;font-size:14px;font-weight:400;height:100%}.uppy-ProviderBrowser-user{color:#333;font-weight:500;margin:0 8px 0 0}[data-uppy-theme=dark] .uppy-ProviderBrowser-user{color:#eaeaea}.uppy-ProviderBrowser-user:after{color:#939393;content:"·";font-weight:400;inset-inline-start:4px;position:relative}.uppy-ProviderBrowser-header{border-bottom:1px solid #eaeaea;position:relative;z-index:1001}[data-uppy-theme=dark] .uppy-ProviderBrowser-header{border-bottom:1px solid #333}.uppy-ProviderBrowser-headerBar{background-color:#fafafa;color:#757575;font-size:12px;line-height:1.4;padding:7px 15px;z-index:1001}.uppy-size--md .uppy-ProviderBrowser-headerBar{align-items:center;display:flex}[data-uppy-theme=dark] .uppy-ProviderBrowser-headerBar{background-color:#1f1f1f}.uppy-ProviderBrowser-headerBar--simple{display:block;justify-content:center;text-align:center}.uppy-ProviderBrowser-headerBar--simple .uppy-Provider-breadcrumbsWrap{display:inline-block;flex:none;vertical-align:middle}.uppy-ProviderBrowser-searchFilter{align-items:center;display:flex;height:30px;margin-bottom:15px;margin-top:15px;padding-left:8px;padding-right:8px;position:relative;width:100%}.uppy-ProviderBrowser-searchFilterInput{background-color:#eaeaea;border:0;border-radius:4px;color:#333;font-family:-apple-system,system-ui,BlinkMacSystemFont,Segoe UI,Segoe UI Symbol,Segoe UI Emoji,Apple Color Emoji,Roboto,Helvetica,Arial,sans-serif;font-size:13px;height:30px;line-height:1.4;outline:0;padding-inline-end:30px;padding-inline-start:30px;width:100%;z-index:1001}.uppy-ProviderBrowser-searchFilterInput::-webkit-search-cancel-button{display:none}[data-uppy-theme=dark] .uppy-ProviderBrowser-searchFilterInput{background-color:#1f1f1f;color:#eaeaea}.uppy-ProviderBrowser-searchFilterInput:focus{background-color:#cfcfcf;border:0}[data-uppy-theme=dark] .uppy-ProviderBrowser-searchFilterInput:focus{background-color:#333}.uppy-ProviderBrowser-searchFilterIcon{color:#757575;height:12px;inset-inline-start:16px;position:absolute;width:12px;z-index:1002}.uppy-ProviderBrowser-searchFilterInput::placeholder{color:#939393;opacity:1}.uppy-ProviderBrowser-searchFilterReset{border-radius:3px;color:#939393;cursor:pointer;height:22px;inset-inline-end:16px;padding:6px;position:absolute;width:22px;z-index:1002}.uppy-ProviderBrowser-searchFilterReset:focus{outline:none}.uppy-ProviderBrowser-searchFilterReset::-moz-focus-inner{border:0}.uppy-ProviderBrowser-searchFilterReset:focus{box-shadow:0 0 0 3px #1269cf80}.uppy-ProviderBrowser-searchFilterReset:hover{color:#757575}.uppy-ProviderBrowser-searchFilterReset svg{vertical-align:text-top}.uppy-ProviderBrowser-userLogout{border-radius:3px;color:#1269cf;cursor:pointer;line-height:inherit;padding:4px}.uppy-ProviderBrowser-userLogout:focus{outline:none}.uppy-ProviderBrowser-userLogout::-moz-focus-inner{border:0}.uppy-ProviderBrowser-userLogout:hover{color:#0e51a0}.uppy-ProviderBrowser-userLogout:focus{background-color:#dfe6f1}[data-uppy-theme=dark] .uppy-ProviderBrowser-userLogout:focus{background-color:#333}.uppy-ProviderBrowser-userLogout:hover{text-decoration:underline}[data-uppy-theme=dark] .uppy-ProviderBrowser-userLogout{color:#eaeaea}.uppy-ProviderBrowser-body{flex:1;position:relative}.uppy-ProviderBrowser-list{background-color:#fff;border-spacing:0;display:block;flex:1;height:100%;inset:0;list-style:none;margin:0;overflow-x:hidden;overflow-y:auto;padding:0;position:absolute;width:100%;-webkit-overflow-scrolling:touch}[data-uppy-theme=dark] .uppy-ProviderBrowser-list{background-color:#1f1f1f}.uppy-ProviderBrowser-list:focus{outline:none}.uppy-ProviderBrowserItem-inner{cursor:pointer;font-size:13px;font-weight:500}.uppy-ProviderBrowser-footer{align-items:center;background-color:#fff;border-top:1px solid #eaeaea;display:flex;justify-content:space-between;padding:15px}.uppy-ProviderBrowser-footer button{margin-inline-end:8px}[data-uppy-theme=dark] .uppy-ProviderBrowser-footer{background-color:#1f1f1f;border-top:1px solid #333}.uppy-ProviderBrowser-footer-buttons{flex-shrink:0}.uppy-ProviderBrowser-footer-error{color:#e32437;line-height:18px}@media(max-width:426px){.uppy-ProviderBrowser-footer{align-items:stretch;flex-direction:column-reverse}.uppy-ProviderBrowser-footer-error{padding-bottom:10px}}.picker-dialog-bg{z-index:20000!important}.picker-dialog{z-index:20001!important}.uppy-Dashboard-Item-previewInnerWrap{align-items:center;border-radius:3px;box-shadow:0 0 2px #0006;display:flex;flex-direction:column;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.uppy-size--md .uppy-Dashboard-Item-previewInnerWrap{box-shadow:0 1px 2px #00000026}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-previewInnerWrap{box-shadow:none}.uppy-Dashboard-Item-previewInnerWrap:after{background-color:#000000a6;content:"";display:none;inset:0;position:absolute;z-index:1001}.uppy-Dashboard-Item-previewLink{inset:0;position:absolute;z-index:1002}.uppy-Dashboard-Item-previewLink:focus{box-shadow:inset 0 0 0 3px #579df0}[data-uppy-theme=dark] .uppy-Dashboard-Item-previewLink:focus{box-shadow:inset 0 0 0 3px #016c8d}.uppy-Dashboard-Item-preview img.uppy-Dashboard-Item-previewImg{border-radius:3px;height:100%;object-fit:cover;transform:translateZ(0);width:100%}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-preview img.uppy-Dashboard-Item-previewImg{height:auto;max-height:100%;max-width:100%;object-fit:contain;padding:10px;width:auto}.uppy-Dashboard-Item-progress{color:#fff;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);transition:all .35 ease;width:120px;z-index:1002}.uppy-Dashboard-Item-progressIndicator{color:#fff;display:inline-block;height:38px;opacity:.9;width:38px}.uppy-size--md .uppy-Dashboard-Item-progressIndicator{height:55px;width:55px}button.uppy-Dashboard-Item-progressIndicator{cursor:pointer}button.uppy-Dashboard-Item-progressIndicator:focus{outline:none}button.uppy-Dashboard-Item-progressIndicator::-moz-focus-inner{border:0}button.uppy-Dashboard-Item-progressIndicator:focus .uppy-Dashboard-Item-progressIcon--bg,button.uppy-Dashboard-Item-progressIndicator:focus .uppy-Dashboard-Item-progressIcon--retry{fill:#579df0}.uppy-Dashboard-Item-progressIcon--circle{height:100%;width:100%}.uppy-Dashboard-Item-progressIcon--bg{stroke:#fff6}.uppy-Dashboard-Item-progressIcon--progress{transition:stroke-dashoffset .5s ease-out;stroke:#fff}.uppy-Dashboard-Item-progressIcon--play{transition:all .2s;fill:#fff;stroke:#fff}.uppy-Dashboard-Item-progressIcon--cancel{transition:all .2s;fill:#fff}.uppy-Dashboard-Item-progressIcon--pause{transition:all .2s;fill:#fff;stroke:#fff}.uppy-Dashboard-Item-progressIcon--check{transition:all .2s;fill:#fff}.uppy-Dashboard-Item-progressIcon--retry{fill:#fff}.uppy-Dashboard-Item.is-complete .uppy-Dashboard-Item-progress{inset-inline-end:-8px;inset-inline-start:auto;top:-9px;transform:none;width:auto}.uppy-Dashboard-Item.is-error .uppy-Dashboard-Item-progressIndicator{height:18px;width:18px}.uppy-size--md .uppy-Dashboard-Item.is-error .uppy-Dashboard-Item-progressIndicator{height:28px;width:28px}.uppy-Dashboard-Item.is-complete .uppy-Dashboard-Item-progressIndicator{height:18px;opacity:1;width:18px}.uppy-size--md .uppy-Dashboard-Item.is-complete .uppy-Dashboard-Item-progressIndicator{height:22px;width:22px}.uppy-Dashboard-Item.is-processing .uppy-Dashboard-Item-progress{opacity:0}.uppy-Dashboard-Item-fileInfo{padding-inline-end:5px}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-fileInfo{padding-inline-end:10px}.uppy-size--md.uppy-Dashboard--singleFile .uppy-Dashboard-Item-fileInfo{padding-inline-end:15px}.uppy-Dashboard-Item-name{font-size:12px;font-weight:500;line-height:1.3;margin-bottom:5px;word-wrap:anywhere;word-break:break-all}[data-uppy-theme=dark] .uppy-Dashboard-Item-name{color:#eaeaea}.uppy-size--md.uppy-Dashboard--singleFile .uppy-Dashboard-Item-name{font-size:14px;line-height:1.4}.uppy-Dashboard-Item-fileName{align-items:baseline;display:flex}.uppy-Dashboard-Item-fileName button{margin-left:5px}.uppy-Dashboard-Item-author{color:#757575;display:inline-block;font-size:11px;font-weight:400;line-height:1;margin-bottom:5px;vertical-align:bottom}.uppy-Dashboard-Item-author a{color:#757575}.uppy-Dashboard-Item-status{color:#757575;font-size:11px;font-weight:400;line-height:1}[data-uppy-theme=dark] .uppy-Dashboard-Item-status{color:#bbb}.uppy-Dashboard-Item-statusSize{display:inline-block;margin-bottom:5px;text-transform:uppercase;vertical-align:bottom}.uppy-Dashboard-Item-reSelect{color:#1269cf;font-family:inherit;font-size:inherit;font-weight:600}.uppy-Dashboard-Item-errorMessage{background-color:#fdeff1;color:#a51523;font-size:11px;font-weight:500;line-height:1.3;padding:5px 6px}.uppy-Dashboard-Item-errorMessageBtn{color:#a51523;cursor:pointer;font-size:11px;font-weight:500;text-decoration:underline}.uppy-Dashboard-Item-preview .uppy-Dashboard-Item-errorMessage{display:none}.uppy-size--md .uppy-Dashboard-Item-preview .uppy-Dashboard-Item-errorMessage{border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-top:1px solid #f7c2c8;bottom:0;display:block;left:0;line-height:1.4;padding:6px 8px;position:absolute;right:0}.uppy-Dashboard-Item-fileInfo .uppy-Dashboard-Item-errorMessage{border:1px solid #f7c2c8;border-radius:3px;display:inline-block;position:static}.uppy-size--md .uppy-Dashboard-Item-fileInfo .uppy-Dashboard-Item-errorMessage{display:none}.uppy-Dashboard-Item-action{color:#939393;cursor:pointer}.uppy-Dashboard-Item-action:focus{outline:none}.uppy-Dashboard-Item-action::-moz-focus-inner{border:0}.uppy-Dashboard-Item-action:focus{box-shadow:0 0 0 3px #1269cf80}.uppy-Dashboard-Item-action:hover{color:#1f1f1f;opacity:1}[data-uppy-theme=dark] .uppy-Dashboard-Item-action{color:#cfcfcf}[data-uppy-theme=dark] .uppy-Dashboard-Item-action:focus{outline:none}[data-uppy-theme=dark] .uppy-Dashboard-Item-action::-moz-focus-inner{border:0}[data-uppy-theme=dark] .uppy-Dashboard-Item-action:focus{box-shadow:0 0 0 2px #aae1ffd9}[data-uppy-theme=dark] .uppy-Dashboard-Item-action:hover{color:#eaeaea}.uppy-Dashboard-Item-action--remove{color:#1f1f1f;opacity:.95}.uppy-Dashboard-Item-action--remove:hover{color:#000;opacity:1}.uppy-size--md .uppy-Dashboard-Item-action--remove{height:18px;inset-inline-end:-8px;padding:0;position:absolute;top:-8px;width:18px;z-index:1002}.uppy-size--md .uppy-Dashboard-Item-action--remove:focus{border-radius:50%}.uppy-Dashboard--singleFile.uppy-size--height-md .uppy-Dashboard-Item-action--remove{inset-inline-end:8px;position:absolute;top:8px}[data-uppy-theme=dark] .uppy-Dashboard-Item-action--remove{color:#525252}[data-uppy-theme=dark] .uppy-Dashboard-Item-action--remove:hover{color:#333}.uppy-Dashboard:not(.uppy-size--md):not(.uppy-Dashboard--singleFile.uppy-size--height-md) .uppy-Dashboard-Item-actionWrapper{align-items:center;display:flex}.uppy-Dashboard:not(.uppy-size--md):not(.uppy-Dashboard--singleFile.uppy-size--height-md) .uppy-Dashboard-Item-action{height:22px;margin-left:3px;padding:3px;width:22px}.uppy-Dashboard:not(.uppy-size--md):not(.uppy-Dashboard--singleFile.uppy-size--height-md) .uppy-Dashboard-Item-action:focus{border-radius:3px}.uppy-size--md .uppy-Dashboard-Item-action--copyLink,.uppy-size--md .uppy-Dashboard-Item-action--edit{height:16px;padding:0;width:16px}.uppy-size--md .uppy-Dashboard-Item-action--copyLink:focus,.uppy-size--md .uppy-Dashboard-Item-action--edit:focus{border-radius:3px}.uppy-Dashboard-Item{align-items:center;border-bottom:1px solid #eaeaea;display:flex;padding:10px}.uppy-Dashboard:not(.uppy-Dashboard--singleFile) .uppy-Dashboard-Item{padding-inline-end:0}[data-uppy-theme=dark] .uppy-Dashboard-Item{border-bottom:1px solid #333}.uppy-size--md .uppy-Dashboard-Item{border-bottom:0;display:block;float:inline-start;height:215px;margin:5px 15px;padding:0;position:relative;width:calc(33.333% - 30px)}.uppy-size--lg .uppy-Dashboard-Item{height:190px;margin:5px 15px;padding:0;width:calc(25% - 30px)}.uppy-size--xl .uppy-Dashboard-Item{height:210px;padding:0;width:calc(20% - 30px)}.uppy-Dashboard--singleFile .uppy-Dashboard-Item{border-bottom:0;display:flex;flex-direction:column;height:100%;max-width:400px;padding:15px;position:relative;width:100%}.uppy-Dashboard-Item.is-ghost .uppy-Dashboard-Item-previewInnerWrap{opacity:.2}.uppy-Dashboard-Item.is-ghost .uppy-Dashboard-Item-name{opacity:.7}.uppy-Dashboard-Item.is-ghost .uppy-Dashboard-Item-preview:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='35' height='39' viewBox='0 0 35 39'%3E%3Cpath fill='%2523000' d='M1.708 38.66c1.709 0 3.417-3.417 6.834-3.417s5.125 3.417 8.61 3.417c3.348 0 5.056-3.417 8.473-3.417 4.305 0 5.125 3.417 6.833 3.417.889 0 1.709-.889 1.709-1.709v-19.68C34.167-5.757 0-5.757 0 17.271v19.68c0 .82.888 1.709 1.708 1.709m8.542-17.084a3.383 3.383 0 0 1-3.417-3.416 3.383 3.383 0 0 1 3.417-3.417 3.383 3.383 0 0 1 3.417 3.417 3.383 3.383 0 0 1-3.417 3.416m13.667 0A3.383 3.383 0 0 1 20.5 18.16a3.383 3.383 0 0 1 3.417-3.417 3.383 3.383 0 0 1 3.416 3.417 3.383 3.383 0 0 1-3.416 3.416'/%3E%3C/svg%3E");background-position:50% 10px;background-repeat:no-repeat;background-size:25px;content:"";inset:0;opacity:.5;position:absolute;z-index:1005}.uppy-size--md .uppy-Dashboard-Item.is-ghost .uppy-Dashboard-Item-preview:before{background-position:50% 50%;background-size:40px}.uppy-Dashboard--singleFile .uppy-Dashboard-Item.is-ghost .uppy-Dashboard-Item-preview:before{background-position:50% 50%;background-size:30%}.uppy-Dashboard-Item-preview{flex-grow:0;flex-shrink:0;height:50px;position:relative;width:50px}.uppy-size--md .uppy-Dashboard-Item-preview{height:140px;width:100%}.uppy-size--lg .uppy-Dashboard-Item-preview{height:120px}.uppy-size--xl .uppy-Dashboard-Item-preview{height:140px}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-preview{flex-grow:1;max-height:75%;width:100%}.uppy-Dashboard--singleFile.uppy-size--md .uppy-Dashboard-Item-preview{max-height:100%}.uppy-Dashboard-Item-fileInfoAndButtons{align-items:center;display:flex;flex-grow:1;justify-content:space-between;padding-inline-end:8px;padding-inline-start:12px}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-fileInfoAndButtons,.uppy-size--md .uppy-Dashboard-Item-fileInfoAndButtons{align-items:flex-start;padding:9px 0 0}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-fileInfoAndButtons{flex-grow:0;width:100%}.uppy-Dashboard-Item-fileInfo{flex-grow:1;flex-shrink:1}.uppy-Dashboard-Item-actionWrapper{flex-grow:0;flex-shrink:0}.uppy-Dashboard-Item.is-error .uppy-Dashboard-Item-previewInnerWrap:after,.uppy-Dashboard-Item.is-inprogress .uppy-Dashboard-Item-previewInnerWrap:after{display:block}.uppy-Dashboard-Item-errorDetails{appearance:none;background-color:#939393;border:none;border-radius:50%;color:#fff;cursor:help;flex-shrink:0;font-size:10px;font-weight:600;height:13px;inset-inline-start:2px;line-height:12px;position:relative;text-align:center;top:0;width:13px}.uppy-Dashboard-Item-errorDetails:after{line-height:1.3;word-wrap:break-word}.uppy-Dashboard-FileCard{background-color:#fff;border-radius:5px;box-shadow:0 0 10px 4px #0000001a;display:flex;flex-direction:column;height:100%;inset:0;position:absolute;width:100%;z-index:1005}.uppy-Dashboard-FileCard .uppy-DashboardContent-bar{border-top-left-radius:5px;border-top-right-radius:5px}.uppy-Dashboard-FileCard .uppy-Dashboard-FileCard-actions{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.uppy-Dashboard-FileCard-inner{display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;height:100%;min-height:0}.uppy-Dashboard-FileCard-preview{align-items:center;border-bottom:1px solid #eaeaea;display:flex;flex-grow:0;flex-shrink:1;height:60%;justify-content:center;min-height:0;position:relative}[data-uppy-theme=dark] .uppy-Dashboard-FileCard-preview{background-color:#333;border-bottom:0}.uppy-Dashboard-FileCard-preview img.uppy-Dashboard-Item-previewImg{border-radius:3px;box-shadow:0 3px 20px #00000026;flex:0 0 auto;max-height:90%;max-width:90%;object-fit:cover}.uppy-Dashboard-FileCard-edit{background-color:#00000080;border-radius:50px;color:#fff;font-size:13px;inset-inline-end:10px;padding:7px 15px;position:absolute;top:10px}.uppy-Dashboard-FileCard-edit:focus{outline:none}.uppy-Dashboard-FileCard-edit::-moz-focus-inner{border:0}.uppy-Dashboard-FileCard-edit:focus{box-shadow:0 0 0 3px #1269cf80}.uppy-Dashboard-FileCard-edit:hover{background-color:#000c}.uppy-Dashboard-FileCard-info{flex-grow:0;flex-shrink:0;height:40%;overflow-y:auto;padding:30px 20px 20px;-webkit-overflow-scrolling:touch}[data-uppy-theme=dark] .uppy-Dashboard-FileCard-info{background-color:#1f1f1f}.uppy-Dashboard-FileCard-fieldset{border:0;font-size:0;margin:auto auto 12px;max-width:640px;padding:0}.uppy-Dashboard-FileCard-label{color:#525252;display:inline-block;font-size:12px;vertical-align:middle;width:22%}.uppy-size--md .uppy-Dashboard-FileCard-label{font-size:14px}[data-uppy-theme=dark] .uppy-Dashboard-FileCard-label{color:#eaeaea}.uppy-Dashboard-FileCard-input{display:inline-block;vertical-align:middle;width:78%}.uppy-Dashboard-FileCard-actions{align-items:center;background-color:#fafafa;border-top:1px solid #eaeaea;display:flex;flex-grow:0;flex-shrink:0;height:55px;padding:0 15px}.uppy-size--md .uppy-Dashboard-FileCard-actions{height:65px}[data-uppy-theme=dark] .uppy-Dashboard-FileCard-actions{background-color:#1f1f1f;border-top:1px solid #333}.uppy-Dashboard-FileCard-actionsBtn{margin-inline-end:10px}.uppy-Informer{bottom:60px;left:0;position:absolute;right:0;text-align:center;z-index:1005}.uppy-Informer span>div{margin-bottom:6px}.uppy-Informer-animated{opacity:0;transform:translateY(350%);transition:all .3s ease-in;z-index:-1000}.uppy-Informer p{background-color:#757575;border-radius:18px;color:#fff;display:inline-block;font-size:12px;font-weight:400;line-height:1.4;margin:0;max-width:90%;padding:6px 15px}.uppy-size--md .uppy-Informer p{font-size:14px;line-height:1.3;max-width:500px;padding:10px 20px}[data-uppy-theme=dark] .uppy-Informer p{background-color:#333}.uppy-Informer p span{background-color:#fff;border-radius:50%;color:#525252;display:inline-block;font-size:10px;height:13px;inset-inline-start:3px;line-height:12px;margin-inline-start:-1px;position:relative;top:-1px;vertical-align:middle;width:13px}.uppy-Informer p span:hover{cursor:help}.uppy-Informer p span:after{line-height:1.3;word-wrap:break-word}.uppy-Root [aria-label][role~=tooltip]{position:relative}.uppy-Root [aria-label][role~=tooltip]:after,.uppy-Root [aria-label][role~=tooltip]:before{-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;opacity:0;pointer-events:none;position:absolute;transform:translateZ(0);transform-origin:top;transition:all var(--microtip-transition-duration,.18s) var(--microtip-transition-easing,ease-in-out) var(--microtip-transition-delay,0s);will-change:transform;z-index:10}.uppy-Root [aria-label][role~=tooltip]:before{background-size:100% auto!important;content:""}.uppy-Root [aria-label][role~=tooltip]:after{background:#111111e6;border-radius:4px;box-sizing:initial;color:#fff;content:attr(aria-label);font-size:var(--microtip-font-size,13px);font-weight:var(--microtip-font-weight,normal);padding:.5em 1em;text-transform:var(--microtip-text-transform,none);white-space:nowrap}.uppy-Root [aria-label][role~=tooltip]:focus:after,.uppy-Root [aria-label][role~=tooltip]:focus:before,.uppy-Root [aria-label][role~=tooltip]:hover:after,.uppy-Root [aria-label][role~=tooltip]:hover:before{opacity:1;pointer-events:auto}.uppy-Root [role~=tooltip][data-microtip-position|=top]:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M2.658 0h32.004c-6 0-11.627 12.002-16.002 12.002S8.594 0 2.658 0'/%3E%3C/svg%3E") no-repeat;bottom:100%;height:6px;left:50%;margin-bottom:5px;transform:translate3d(-50%,0,0);width:18px}.uppy-Root [role~=tooltip][data-microtip-position|=top]:after{bottom:100%;left:50%;margin-bottom:11px;transform:translate3d(-50%,0,0)}.uppy-Root [role~=tooltip][data-microtip-position=top]:hover:after,.uppy-Root [role~=tooltip][data-microtip-position|=top]:hover:before{transform:translate3d(-50%,-5px,0)}.uppy-Root [role~=tooltip][data-microtip-position=top-left]:after{bottom:100%;transform:translate3d(calc(-100% + 16px),0,0)}.uppy-Root [role~=tooltip][data-microtip-position=top-left]:hover:after{transform:translate3d(calc(-100% + 16px),-5px,0)}.uppy-Root [role~=tooltip][data-microtip-position=top-right]:after{bottom:100%;transform:translate3d(-16px,0,0)}.uppy-Root [role~=tooltip][data-microtip-position=top-right]:hover:after{transform:translate3d(-16px,-5px,0)}.uppy-Root [role~=tooltip][data-microtip-position|=bottom]:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M33.342 12H1.338c6 0 11.627-12.002 16.002-12.002S27.406 12 33.342 12'/%3E%3C/svg%3E") no-repeat;bottom:auto;height:6px;left:50%;margin-bottom:0;margin-top:5px;top:100%;transform:translate3d(-50%,-10px,0);width:18px}.uppy-Root [role~=tooltip][data-microtip-position|=bottom]:after{left:50%;margin-top:11px;top:100%;transform:translate3d(-50%,-10px,0)}.uppy-Root [role~=tooltip][data-microtip-position=bottom]:hover:after,.uppy-Root [role~=tooltip][data-microtip-position|=bottom]:hover:before{transform:translate3d(-50%,0,0)}.uppy-Root [role~=tooltip][data-microtip-position=bottom-left]:after{top:100%;transform:translate3d(calc(-100% + 16px),-10px,0)}.uppy-Root [role~=tooltip][data-microtip-position=bottom-left]:hover:after{transform:translate3d(calc(-100% + 16px),0,0)}.uppy-Root [role~=tooltip][data-microtip-position=bottom-right]:after{top:100%;transform:translate3d(-16px,-10px,0)}.uppy-Root [role~=tooltip][data-microtip-position=bottom-right]:hover:after{transform:translate3d(-16px,0,0)}.uppy-Root [role~=tooltip][data-microtip-position=left]:after,.uppy-Root [role~=tooltip][data-microtip-position=left]:before{inset:50% 100% auto auto;transform:translate3d(10px,-50%,0)}.uppy-Root [role~=tooltip][data-microtip-position=left]:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='36'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M0 33.342V1.338c0 6 12.002 11.627 12.002 16.002S0 27.406 0 33.342'/%3E%3C/svg%3E") no-repeat;height:18px;margin-bottom:0;margin-right:5px;width:6px}.uppy-Root [role~=tooltip][data-microtip-position=left]:after{margin-right:11px}.uppy-Root [role~=tooltip][data-microtip-position=left]:hover:after,.uppy-Root [role~=tooltip][data-microtip-position=left]:hover:before{transform:translate3d(0,-50%,0)}.uppy-Root [role~=tooltip][data-microtip-position=right]:after,.uppy-Root [role~=tooltip][data-microtip-position=right]:before{bottom:auto;left:100%;top:50%;transform:translate3d(-10px,-50%,0)}.uppy-Root [role~=tooltip][data-microtip-position=right]:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='36'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M12 2.658v32.004c0-6-12.002-11.627-12.002-16.002S12 8.594 12 2.658'/%3E%3C/svg%3E") no-repeat;height:18px;margin-bottom:0;margin-left:5px;width:6px}.uppy-Root [role~=tooltip][data-microtip-position=right]:after{margin-left:11px}.uppy-Root [role~=tooltip][data-microtip-position=right]:hover:after,.uppy-Root [role~=tooltip][data-microtip-position=right]:hover:before{transform:translate3d(0,-50%,0)}.uppy-Root [role~=tooltip][data-microtip-size=small]:after{white-space:normal;width:80px}.uppy-Root [role~=tooltip][data-microtip-size=medium]:after{white-space:normal;width:150px}.uppy-Root [role~=tooltip][data-microtip-size=large]:after{white-space:normal;width:260px}.uppy-StatusBar{background-color:#fff;color:#fff;display:flex;font-size:12px;font-weight:400;height:46px;line-height:40px;position:relative;transition:height .2s;z-index:1001}[data-uppy-theme=dark] .uppy-StatusBar{background-color:#1f1f1f}.uppy-StatusBar:before{background-color:#eaeaea;content:"";height:2px;inset:0;position:absolute;width:100%}[data-uppy-theme=dark] .uppy-StatusBar:before{background-color:#757575}.uppy-StatusBar[aria-hidden=true]{height:0;overflow-y:hidden}.uppy-StatusBar.is-complete .uppy-StatusBar-progress{background-color:#1bb240}.uppy-StatusBar.is-error .uppy-StatusBar-progress{background-color:#e32437}.uppy-StatusBar.is-complete .uppy-StatusBar-statusIndicator{color:#1bb240}.uppy-StatusBar.is-error .uppy-StatusBar-statusIndicator{color:#e32437}.uppy-StatusBar:not([aria-hidden=true]).is-waiting{background-color:#fff;border-top:1px solid #eaeaea;height:65px}[data-uppy-theme=dark] .uppy-StatusBar:not([aria-hidden=true]).is-waiting{background-color:#1f1f1f;border-top:1px solid #333}.uppy-StatusBar-progress{background-color:#1269cf;height:2px;position:absolute;transition:background-color,width .3s ease-out;z-index:1001}.uppy-StatusBar-progress.is-indeterminate{animation:uppy-StatusBar-ProgressStripes 1s linear infinite;background-image:linear-gradient(45deg,#0000004d 25%,#0000 0 50%,#0000004d 0 75%,#0000 0,#0000);background-size:64px 64px}@keyframes uppy-StatusBar-ProgressStripes{0%{background-position:0 0}to{background-position:64px 0}}.uppy-StatusBar.is-postprocessing .uppy-StatusBar-progress,.uppy-StatusBar.is-preprocessing .uppy-StatusBar-progress{background-color:#f6a623}.uppy-StatusBar.is-waiting .uppy-StatusBar-progress{display:none}.uppy-StatusBar-content{align-items:center;color:#333;display:flex;height:100%;padding-inline-start:10px;position:relative;text-overflow:ellipsis;white-space:nowrap;z-index:1002}.uppy-size--md .uppy-StatusBar-content{padding-inline-start:15px}[data-uppy-theme=dark] .uppy-StatusBar-content{color:#eaeaea}.uppy-StatusBar-status{display:flex;flex-direction:column;font-weight:400;justify-content:center;line-height:1.4;padding-inline-end:.3em}.uppy-StatusBar-statusPrimary{display:flex;font-weight:500;line-height:1}.uppy-StatusBar-statusPrimary button.uppy-StatusBar-details{margin-left:5px}[data-uppy-theme=dark] .uppy-StatusBar-statusPrimary{color:#eaeaea}.uppy-StatusBar-statusSecondary{color:#757575;display:inline-block;font-size:11px;line-height:1.2;margin-top:1px;white-space:nowrap}[data-uppy-theme=dark] .uppy-StatusBar-statusSecondary{color:#bbb}.uppy-StatusBar-statusSecondaryHint{display:inline-block;line-height:1;margin-inline-end:5px;vertical-align:middle}.uppy-size--md .uppy-StatusBar-statusSecondaryHint{margin-inline-end:8px}.uppy-StatusBar-statusIndicator{color:#525252;margin-inline-end:7px;position:relative;top:1px}.uppy-StatusBar-statusIndicator svg{vertical-align:text-bottom}.uppy-StatusBar-actions{align-items:center;bottom:0;display:flex;inset-inline-end:10px;position:absolute;top:0;z-index:1004}.uppy-StatusBar.is-waiting .uppy-StatusBar-actions{background-color:#fafafa;height:100%;padding:0 15px;position:static;width:100%}[data-uppy-theme=dark] .uppy-StatusBar.is-waiting .uppy-StatusBar-actions{background-color:#1f1f1f}.uppy-StatusBar:not([aria-hidden=true]).is-waiting.has-ghosts{flex-direction:column;height:90px}.uppy-size--md .uppy-StatusBar:not([aria-hidden=true]).is-waiting.has-ghosts{flex-direction:row;height:65px}.uppy-StatusBar:not([aria-hidden=true]).is-waiting.has-ghosts .uppy-StatusBar-actions{flex-direction:column;justify-content:center}.uppy-size--md .uppy-StatusBar:not([aria-hidden=true]).is-waiting.has-ghosts .uppy-StatusBar-actions{flex-direction:row;justify-content:normal}.uppy-StatusBar-actionCircleBtn{cursor:pointer;line-height:1;margin:3px;opacity:.9}.uppy-StatusBar-actionCircleBtn:focus{outline:none}.uppy-StatusBar-actionCircleBtn::-moz-focus-inner{border:0}.uppy-StatusBar-actionCircleBtn:focus{box-shadow:0 0 0 3px #1269cf80}[data-uppy-theme=dark] .uppy-StatusBar-actionCircleBtn:focus{outline:none}[data-uppy-theme=dark] .uppy-StatusBar-actionCircleBtn::-moz-focus-inner{border:0}[data-uppy-theme=dark] .uppy-StatusBar-actionCircleBtn:focus{box-shadow:0 0 0 2px #aae1ffd9}.uppy-StatusBar-actionCircleBtn:hover{opacity:1}.uppy-StatusBar-actionCircleBtn:focus{border-radius:50%}.uppy-StatusBar-actionCircleBtn svg{vertical-align:bottom}.uppy-StatusBar-actionBtn{color:#1269cf;display:inline-block;font-size:10px;line-height:inherit;vertical-align:middle}.uppy-size--md .uppy-StatusBar-actionBtn{font-size:11px}.uppy-StatusBar-actionBtn--disabled{opacity:.4}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--disabled{opacity:.7}.uppy-StatusBar-actionBtn--retry{background-color:#ff4b23;border-radius:8px;color:#fff;height:16px;line-height:1;margin-inline-end:6px;padding:1px 6px 3px 18px;position:relative}.uppy-StatusBar-actionBtn--retry:focus{outline:none}.uppy-StatusBar-actionBtn--retry::-moz-focus-inner{border:0}.uppy-StatusBar-actionBtn--retry:focus{box-shadow:0 0 0 3px #1269cf80}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--retry:focus{outline:none}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--retry::-moz-focus-inner{border:0}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--retry:focus{box-shadow:0 0 0 2px #aae1ffd9}.uppy-StatusBar-actionBtn--retry:hover{background-color:#f92d00}.uppy-StatusBar-actionBtn--retry svg{inset-inline-start:6px;position:absolute;top:3px}.uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload{background-color:#1bb240;color:#fff;font-size:14px;line-height:1;padding:15px 10px;width:100%}.uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload:hover{background-color:#189c38}[data-uppy-theme=dark] .uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload{background-color:#1c8b37}[data-uppy-theme=dark] .uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload:hover{background-color:#18762f}.uppy-size--md .uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload{padding:13px 22px;width:auto}.uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload.uppy-StatusBar-actionBtn--disabled:hover{background-color:#1bb240;cursor:not-allowed}[data-uppy-theme=dark] .uppy-StatusBar.is-waiting .uppy-StatusBar-actionBtn--upload.uppy-StatusBar-actionBtn--disabled:hover{background-color:#1c8b37}.uppy-StatusBar:not(.is-waiting) .uppy-StatusBar-actionBtn--upload{background-color:initial;color:#1269cf}.uppy-StatusBar-actionBtn--uploadNewlyAdded{border-radius:3px;padding-inline-end:3px;padding-bottom:1px;padding-inline-start:3px}.uppy-StatusBar-actionBtn--uploadNewlyAdded:focus{outline:none}.uppy-StatusBar-actionBtn--uploadNewlyAdded::-moz-focus-inner{border:0}.uppy-StatusBar-actionBtn--uploadNewlyAdded:focus{box-shadow:0 0 0 3px #1269cf80}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--uploadNewlyAdded:focus{outline:none}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--uploadNewlyAdded::-moz-focus-inner{border:0}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--uploadNewlyAdded:focus{box-shadow:0 0 0 2px #aae1ffd9}.uppy-StatusBar.is-postprocessing .uppy-StatusBar-actionBtn--uploadNewlyAdded,.uppy-StatusBar.is-preprocessing .uppy-StatusBar-actionBtn--uploadNewlyAdded{display:none}.uppy-StatusBar-actionBtn--done{border-radius:3px;line-height:1;padding:7px 8px}.uppy-StatusBar-actionBtn--done:focus{outline:none}.uppy-StatusBar-actionBtn--done::-moz-focus-inner{border:0}.uppy-StatusBar-actionBtn--done:hover{color:#0e51a0}.uppy-StatusBar-actionBtn--done:focus{background-color:#dfe6f1}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--done:focus{background-color:#333}[data-uppy-theme=dark] .uppy-StatusBar-actionBtn--done{color:#02baf2}.uppy-size--md .uppy-StatusBar-actionBtn--done{font-size:14px}.uppy-StatusBar-serviceMsg{color:#000;font-size:11px;line-height:1.1;padding-left:10px}.uppy-size--md .uppy-StatusBar-serviceMsg{font-size:14px;padding-left:15px}[data-uppy-theme=dark] .uppy-StatusBar-serviceMsg{color:#eaeaea}.uppy-StatusBar-serviceMsg-ghostsIcon{left:6px;opacity:.5;position:relative;top:2px;vertical-align:text-bottom;width:10px}.uppy-size--md .uppy-StatusBar-serviceMsg-ghostsIcon{left:10px;top:1px;width:15px}.uppy-StatusBar-details{appearance:none;background-color:#939393;border-radius:50%;color:#fff;cursor:help;display:inline-block;font-size:10px;font-weight:600;height:13px;inset-inline-start:2px;line-height:12px;position:relative;text-align:center;top:0;vertical-align:middle;width:13px}.uppy-StatusBar-details:after{line-height:1.3;word-wrap:break-word}.uppy-StatusBar-spinner{animation-duration:1s;animation-iteration-count:infinite;animation-name:uppy-StatusBar-spinnerAnimation;animation-timing-function:linear;fill:#1269cf;margin-inline-end:10px}.uppy-StatusBar.is-postprocessing .uppy-StatusBar-spinner,.uppy-StatusBar.is-preprocessing .uppy-StatusBar-spinner{fill:#f6a623}@keyframes uppy-StatusBar-spinnerAnimation{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.uppy-transition-slideDownUp-enter{opacity:.01;transform:translate3d(0,-105%,0);transition:transform .25s ease-in-out,opacity .25s ease-in-out}.uppy-transition-slideDownUp-enter.uppy-transition-slideDownUp-enter-active{opacity:1;transform:translateZ(0)}.uppy-transition-slideDownUp-leave{opacity:1;transform:translateZ(0);transition:transform .25s ease-in-out,opacity .25s ease-in-out}.uppy-transition-slideDownUp-leave.uppy-transition-slideDownUp-leave-active{opacity:.01;transform:translate3d(0,-105%,0)}@keyframes uppy-Dashboard-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes uppy-Dashboard-fadeOut{0%{opacity:1}to{opacity:0}}@keyframes uppy-Dashboard-slideDownAndFadeIn{0%{opacity:0;transform:translate3d(-50%,-70%,0)}to{opacity:1;transform:translate3d(-50%,-50%,0)}}@keyframes uppy-Dashboard-slideDownAndFadeIn--small{0%{opacity:0;transform:translate3d(0,-20%,0)}to{opacity:1;transform:translateZ(0)}}@keyframes uppy-Dashboard-slideUpFadeOut{0%{opacity:1;transform:translate3d(-50%,-50%,0)}to{opacity:0;transform:translate3d(-50%,-70%,0)}}@keyframes uppy-Dashboard-slideUpFadeOut--small{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-20%,0)}}.uppy-Dashboard--modal{z-index:1001}.uppy-Dashboard--modal[aria-hidden=true]{display:none}.uppy-Dashboard--modal.uppy-Dashboard--animateOpenClose>.uppy-Dashboard-inner{animation:uppy-Dashboard-slideDownAndFadeIn--small .3s cubic-bezier(0,0,.2,1)}@media only screen and (min-width:820px){.uppy-Dashboard--modal.uppy-Dashboard--animateOpenClose>.uppy-Dashboard-inner{animation:uppy-Dashboard-slideDownAndFadeIn .3s cubic-bezier(0,0,.2,1)}}.uppy-Dashboard--modal.uppy-Dashboard--animateOpenClose>.uppy-Dashboard-overlay{animation:uppy-Dashboard-fadeIn .3s cubic-bezier(0,0,.2,1)}.uppy-Dashboard--modal.uppy-Dashboard--animateOpenClose.uppy-Dashboard--isClosing>.uppy-Dashboard-inner{animation:uppy-Dashboard-slideUpFadeOut--small .3s cubic-bezier(0,0,.2,1)}@media only screen and (min-width:820px){.uppy-Dashboard--modal.uppy-Dashboard--animateOpenClose.uppy-Dashboard--isClosing>.uppy-Dashboard-inner{animation:uppy-Dashboard-slideUpFadeOut .3s cubic-bezier(0,0,.2,1)}}.uppy-Dashboard--modal.uppy-Dashboard--animateOpenClose.uppy-Dashboard--isClosing>.uppy-Dashboard-overlay{animation:uppy-Dashboard-fadeOut .3s cubic-bezier(0,0,.2,1)}.uppy-Dashboard-isFixed{height:100vh;overflow:hidden}.uppy-Dashboard--modal .uppy-Dashboard-overlay{background-color:#00000080;inset:0;position:fixed;z-index:1001}.uppy-Dashboard-inner{background-color:#f4f4f4;border:1px solid #eaeaea;border-radius:5px;max-height:100%;max-width:100%;outline:none;position:relative}.uppy-size--md .uppy-Dashboard-inner{min-height:auto}@media only screen and (min-width:820px){.uppy-Dashboard-inner{height:500px;width:650px}}.uppy-Dashboard--modal .uppy-Dashboard-inner{z-index:1002}[data-uppy-theme=dark] .uppy-Dashboard-inner{background-color:#1f1f1f}.uppy-Dashboard--isDisabled .uppy-Dashboard-inner{cursor:not-allowed}.uppy-Dashboard-innerWrap{border-radius:5px;display:flex;flex-direction:column;height:100%;opacity:0;overflow:hidden;position:relative}.uppy-Dashboard--isInnerWrapVisible .uppy-Dashboard-innerWrap{opacity:1}.uppy-Dashboard--isDisabled .uppy-Dashboard-innerWrap{cursor:not-allowed;filter:grayscale(100%);opacity:.6;-webkit-user-select:none;user-select:none}.uppy-Dashboard--isDisabled .uppy-ProviderIconBg{fill:#9f9f9f}.uppy-Dashboard--isDisabled [aria-disabled],.uppy-Dashboard--isDisabled [disabled]{cursor:not-allowed;pointer-events:none}.uppy-Dashboard--modal .uppy-Dashboard-inner{border:none;inset:35px 15px 15px;position:fixed}@media only screen and (min-width:820px){.uppy-Dashboard--modal .uppy-Dashboard-inner{box-shadow:0 5px 15px 4px #00000026;left:50%;right:auto;top:50%;transform:translate(-50%,-50%)}}.uppy-Dashboard-close{color:#ffffffe6;cursor:pointer;display:block;font-size:27px;inset-inline-end:-2px;position:absolute;top:-33px;z-index:1005}.uppy-Dashboard-close:focus{outline:none}.uppy-Dashboard-close::-moz-focus-inner{border:0}.uppy-Dashboard-close:focus{color:#6eabf2}@media only screen and (min-width:820px){.uppy-Dashboard-close{font-size:35px;inset-inline-end:-35px;top:-10px}}.uppy-Dashboard-serviceMsg{background-color:#fffbf7;border-bottom:1px solid #edd4b9;border-top:1px solid #edd4b9;font-size:12px;font-weight:500;line-height:1.3;padding:12px 0;position:relative;top:-1px;z-index:1004}.uppy-size--md .uppy-Dashboard-serviceMsg{font-size:14px;line-height:1.4}[data-uppy-theme=dark] .uppy-Dashboard-serviceMsg{background-color:#1f1f1f;border-bottom:1px solid #333;border-top:1px solid #333;color:#eaeaea}.uppy-Dashboard-serviceMsg-title{display:block;line-height:1;margin-bottom:4px;padding-left:42px}.uppy-Dashboard-serviceMsg-text{padding:0 15px}.uppy-Dashboard-serviceMsg-actionBtn{color:#1269cf;font-size:inherit;font-weight:inherit;vertical-align:initial}[data-uppy-theme=dark] .uppy-Dashboard-serviceMsg-actionBtn{color:#02baf2e6}.uppy-Dashboard-serviceMsg-icon{left:15px;position:absolute;top:10px}.uppy-Dashboard-AddFiles{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;position:relative;text-align:center}[data-uppy-drag-drop-supported=true] .uppy-Dashboard-AddFiles{border:1px dashed #dfdfdf;border-radius:3px;height:calc(100% - 14px);margin:7px}.uppy-Dashboard-AddFilesPanel .uppy-Dashboard-AddFiles{border:none;height:calc(100% - 54px)}.uppy-Dashboard--modal .uppy-Dashboard-AddFiles{border-color:#cfcfcf}[data-uppy-theme=dark] .uppy-Dashboard-AddFiles{border-color:#757575}.uppy-Dashboard-AddFiles-info{display:none;margin-top:auto;padding-bottom:15px;padding-top:15px}.uppy-size--height-md .uppy-Dashboard-AddFiles-info{display:block}.uppy-size--md .uppy-Dashboard-AddFiles-info{bottom:25px;left:0;padding-bottom:0;padding-top:30px;position:absolute;right:0}[data-uppy-num-acquirers="0"] .uppy-Dashboard-AddFiles-info{margin-top:0}.uppy-Dashboard-browse{color:#1269cf;cursor:pointer}.uppy-Dashboard-browse:focus{outline:none}.uppy-Dashboard-browse::-moz-focus-inner{border:0}.uppy-Dashboard-browse:focus,.uppy-Dashboard-browse:hover{border-bottom:1px solid #1269cf}[data-uppy-theme=dark] .uppy-Dashboard-browse{color:#02baf2e6}[data-uppy-theme=dark] .uppy-Dashboard-browse:focus,[data-uppy-theme=dark] .uppy-Dashboard-browse:hover{border-bottom:1px solid #02baf2}.uppy-Dashboard-browseBtn{display:block;font-size:14px;font-weight:500;margin-bottom:5px;margin-top:8px;width:100%}.uppy-size--md .uppy-Dashboard-browseBtn{font-size:15px;margin:15px auto;padding:13px 44px;width:auto}.uppy-Dashboard-AddFiles-list{display:flex;flex:1;flex-direction:column;margin-top:2px;overflow-y:auto;padding:2px 0;width:100%;-webkit-overflow-scrolling:touch}.uppy-size--md .uppy-Dashboard-AddFiles-list{flex:none;flex-direction:row;flex-wrap:wrap;justify-content:center;margin-top:15px;max-width:600px;overflow-y:visible;padding-top:0}.uppy-DashboardTab{border-bottom:1px solid #eaeaea;text-align:center;width:100%}[data-uppy-theme=dark] .uppy-DashboardTab{border-bottom:1px solid #333}.uppy-size--md .uppy-DashboardTab{border-bottom:none;display:inline-block;margin-bottom:10px;width:auto}.uppy-DashboardTab-btn{align-items:center;-webkit-appearance:none;appearance:none;background-color:initial;color:#525252;cursor:pointer;flex-direction:row;height:100%;justify-content:left;padding:12px 15px;width:100%}.uppy-DashboardTab-btn:focus{outline:none}.uppy-size--md .uppy-DashboardTab-btn{border-radius:5px;flex-direction:column;margin-inline-end:1px;padding:10px 3px;width:86px}[data-uppy-theme=dark] .uppy-DashboardTab-btn{color:#eaeaea}.uppy-DashboardTab-btn::-moz-focus-inner{border:0}.uppy-DashboardTab-btn:hover{background-color:#e9ecef}[data-uppy-theme=dark] .uppy-DashboardTab-btn:hover{background-color:#333}.uppy-DashboardTab-btn:active,.uppy-DashboardTab-btn:focus{background-color:#dfe6f1}[data-uppy-theme=dark] .uppy-DashboardTab-btn:active,[data-uppy-theme=dark] .uppy-DashboardTab-btn:focus{background-color:#525252}.uppy-DashboardTab-btn svg{display:inline-block;max-height:100%;max-width:100%;overflow:hidden;transition:transform .15s ease-in-out;vertical-align:text-top}.uppy-DashboardTab-inner{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 1px 1px #0000001a,0 1px 2px #0000001a,0 2px 3px #00000005;display:flex;height:32px;justify-content:center;margin-inline-end:10px;width:32px}.uppy-size--md .uppy-DashboardTab-inner{margin-inline-end:0}[data-uppy-theme=dark] .uppy-DashboardTab-inner{background-color:#323232;box-shadow:0 1px 1px #0003,0 1px 2px #0003,0 2px 3px #00000014}.uppy-DashboardTab-name{font-size:14px;font-weight:400}.uppy-size--md .uppy-DashboardTab-name{font-size:12px;line-height:15px;margin-bottom:0;margin-top:8px}.uppy-DashboardTab-iconMyDevice{color:#1269cf}[data-uppy-theme=dark] .uppy-DashboardTab-iconMyDevice{color:#02baf2}.uppy-DashboardTab-iconBox{color:#0061d5}[data-uppy-theme=dark] .uppy-DashboardTab-iconBox{color:#eaeaea}.uppy-DashboardTab-iconDropbox{color:#0061fe}[data-uppy-theme=dark] .uppy-DashboardTab-iconDropbox{color:#eaeaea}.uppy-DashboardTab-iconUnsplash{color:#111}[data-uppy-theme=dark] .uppy-DashboardTab-iconUnsplash{color:#eaeaea}.uppy-DashboardTab-iconWebdav{color:#111}[data-uppy-theme=dark] .uppy-DashboardTab-iconWebdav{color:#eaeaea}.uppy-DashboardTab-iconScreenRec{color:#2c3e50}[data-uppy-theme=dark] .uppy-DashboardTab-iconScreenRec{color:#eaeaea}.uppy-DashboardTab-iconAudio{color:#8030a3}[data-uppy-theme=dark] .uppy-DashboardTab-iconAudio{color:#bf6ee3}.uppy-Dashboard-input{height:.1px;opacity:0;overflow:hidden;position:absolute;width:.1px;z-index:-1}.uppy-DashboardContent-bar{align-items:center;background-color:#fafafa;border-bottom:1px solid #eaeaea;display:flex;flex-shrink:0;height:40px;justify-content:space-between;padding:0 10px;position:relative;width:100%;z-index:1004}.uppy-size--md .uppy-DashboardContent-bar{height:50px;padding:0 15px}[data-uppy-theme=dark] .uppy-DashboardContent-bar{background-color:#1f1f1f;border-bottom:1px solid #333}.uppy-DashboardContent-title{font-size:12px;font-weight:500;left:0;line-height:40px;margin:auto;max-width:170px;overflow-x:hidden;position:absolute;right:0;text-align:center;text-overflow:ellipsis;top:0;white-space:nowrap;width:100%}.uppy-size--md .uppy-DashboardContent-title{font-size:14px;line-height:50px;max-width:300px}[data-uppy-theme=dark] .uppy-DashboardContent-title{color:#eaeaea}.uppy-DashboardContent-back,.uppy-DashboardContent-save{-webkit-appearance:none;background:none;border:0;border-radius:3px;color:inherit;color:#1269cf;cursor:pointer;font-family:inherit;font-size:inherit;font-size:12px;font-weight:400;line-height:1;margin:0;margin-inline-start:-6px;padding:7px 6px}.uppy-DashboardContent-back:focus,.uppy-DashboardContent-save:focus{outline:none}.uppy-DashboardContent-back::-moz-focus-inner,.uppy-DashboardContent-save::-moz-focus-inner{border:0}.uppy-DashboardContent-back:hover,.uppy-DashboardContent-save:hover{color:#0e51a0}.uppy-DashboardContent-back:focus,.uppy-DashboardContent-save:focus{background-color:#dfe6f1}[data-uppy-theme=dark] .uppy-DashboardContent-back:focus,[data-uppy-theme=dark] .uppy-DashboardContent-save:focus{background-color:#333}.uppy-size--md .uppy-DashboardContent-back,.uppy-size--md .uppy-DashboardContent-save{font-size:14px}[data-uppy-theme=dark] .uppy-DashboardContent-back,[data-uppy-theme=dark] .uppy-DashboardContent-save{color:#02baf2}.uppy-DashboardContent-addMore{-webkit-appearance:none;background:none;border:0;border-radius:3px;color:inherit;color:#1269cf;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:500;height:29px;line-height:1;margin:0;margin-inline-end:-5px;padding:7px 8px;width:29px}.uppy-DashboardContent-addMore:focus{outline:none}.uppy-DashboardContent-addMore::-moz-focus-inner{border:0}.uppy-DashboardContent-addMore:hover{color:#0e51a0}.uppy-DashboardContent-addMore:focus{background-color:#dfe6f1}[data-uppy-theme=dark] .uppy-DashboardContent-addMore:focus{background-color:#333}.uppy-size--md .uppy-DashboardContent-addMore{font-size:14px;height:auto;margin-inline-end:-8px;width:auto}[data-uppy-theme=dark] .uppy-DashboardContent-addMore{color:#02baf2}.uppy-DashboardContent-addMore svg{margin-inline-end:4px;vertical-align:initial}.uppy-size--md .uppy-DashboardContent-addMore svg{height:11px;width:11px}.uppy-DashboardContent-addMoreCaption{display:none}.uppy-size--md .uppy-DashboardContent-addMoreCaption{display:inline}.uppy-DashboardContent-panel{background-color:#f5f5f5;flex:1}.uppy-Dashboard-AddFilesPanel,.uppy-DashboardContent-panel{border-radius:5px;display:flex;flex-direction:column;inset:0;overflow:hidden;position:absolute;z-index:1005}.uppy-Dashboard-AddFilesPanel{background:#fafafa;background:linear-gradient(0deg,#fafafa 35%,#fafafad9);box-shadow:0 0 10px 5px #00000026}[data-uppy-theme=dark] .uppy-Dashboard-AddFilesPanel{background-color:#333;background-image:linear-gradient(0deg,#1f1f1f 35%,#1f1f1fd9)}.uppy-Dashboard--isAddFilesPanelVisible .uppy-Dashboard-files{filter:blur(2px)}.uppy-Dashboard-progress{bottom:0;height:12%;left:0;position:absolute;width:100%}.uppy-Dashboard-progressBarContainer.is-active{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1004}.uppy-Dashboard-filesContainer{flex:1;margin:0;overflow-y:hidden;position:relative}.uppy-Dashboard-filesContainer:after{clear:both;content:"";display:table}.uppy-Dashboard-files{flex:1;margin:0;overflow-y:auto;padding:0 0 10px;-webkit-overflow-scrolling:touch}.uppy-size--md .uppy-Dashboard-files{padding-top:10px}.uppy-Dashboard--singleFile .uppy-Dashboard-filesInner{align-items:center;display:flex;height:100%;justify-content:center}.uppy-Dashboard-dropFilesHereHint{align-items:center;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath fill='%231269CF' d='M24 1v1C11.85 2 2 11.85 2 24s9.85 22 22 22 22-9.85 22-22S36.15 2 24 2zm0 0V0c13.254 0 24 10.746 24 24S37.254 48 24 48 0 37.254 0 24 10.746 0 24 0zm7.707 19.293a.999.999 0 1 1-1.414 1.414L25 16.414V34a1 1 0 1 1-2 0V16.414l-5.293 5.293a.999.999 0 1 1-1.414-1.414l7-7a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E");background-position:50% 50%;background-repeat:no-repeat;border:1px dashed #1269cf;border-radius:3px;color:#757575;display:flex;font-size:16px;justify-content:center;inset:7px;padding-top:90px;position:absolute;text-align:center;visibility:hidden;z-index:2000}[data-uppy-theme=dark] .uppy-Dashboard-dropFilesHereHint{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath fill='%2302BAF2' d='M24 1v1C11.85 2 2 11.85 2 24s9.85 22 22 22 22-9.85 22-22S36.15 2 24 2zm0 0V0c13.254 0 24 10.746 24 24S37.254 48 24 48 0 37.254 0 24 10.746 0 24 0zm7.707 19.293a.999.999 0 1 1-1.414 1.414L25 16.414V34a1 1 0 1 1-2 0V16.414l-5.293 5.293a.999.999 0 1 1-1.414-1.414l7-7a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E");border-color:#02baf2;color:#bbb}.uppy-Dashboard.uppy-Dashboard--isDraggingOver .uppy-Dashboard-dropFilesHereHint{pointer-events:none;visibility:visible}.uppy-Dashboard.uppy-Dashboard--isDraggingOver .uppy-Dashboard-files,.uppy-Dashboard.uppy-Dashboard--isDraggingOver .uppy-Dashboard-progressindicators,.uppy-Dashboard.uppy-Dashboard--isDraggingOver .uppy-Dashboard-serviceMsg,.uppy-Dashboard.uppy-Dashboard--isDraggingOver .uppy-DashboardContent-bar{opacity:.15}.uppy-Dashboard.uppy-Dashboard--isDraggingOver .uppy-Dashboard-AddFiles{opacity:.03}.uppy-Dashboard-AddFiles-title{color:#000;font-size:17px;font-weight:500;line-height:1.35;margin-bottom:5px;margin-top:15px;padding:0 15px;text-align:inline-start;width:100%}.uppy-size--md .uppy-Dashboard-AddFiles-title{font-size:21px;font-weight:400;margin-top:5px;max-width:480px;padding:0 35px;text-align:center}[data-uppy-num-acquirers="0"] .uppy-Dashboard-AddFiles-title{text-align:center}[data-uppy-theme=dark] .uppy-Dashboard-AddFiles-title{color:#eaeaea}.uppy-Dashboard-AddFiles-title button{font-weight:500}.uppy-size--md .uppy-Dashboard-AddFiles-title button{font-weight:400}.uppy-Dashboard-note{color:#757575;font-size:14px;line-height:1.25;margin:auto;max-width:350px;padding:0 15px;text-align:center}.uppy-size--md .uppy-Dashboard-note{line-height:1.35;max-width:600px}[data-uppy-theme=dark] .uppy-Dashboard-note{color:#cfcfcf}a.uppy-Dashboard-poweredBy{color:#939393;display:inline-block;font-size:11px;margin-top:8px;text-align:center;text-decoration:none}.uppy-Dashboard-poweredByIcon{margin-left:1px;margin-right:1px;opacity:.9;position:relative;top:1px;vertical-align:text-top;fill:none;stroke:#939393}.uppy-Dashboard-Item-previewIcon{height:25px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:25px;z-index:100}.uppy-size--md .uppy-Dashboard-Item-previewIcon{height:38px;width:38px}.uppy-Dashboard-Item-previewIcon svg{height:100%;width:100%}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-previewIcon{height:100%;max-height:60%;max-width:60%;width:100%}.uppy-Dashboard-Item-previewIconWrap{height:76px;max-height:75%;position:relative}.uppy-Dashboard--singleFile .uppy-Dashboard-Item-previewIconWrap{height:100%;width:100%}.uppy-Dashboard-Item-previewIconBg{filter:drop-shadow(rgba(0,0,0,.1) 0 1px 1px);height:100%;width:100%}.uppy-Dashboard-upload{height:50px;position:relative;width:50px}.uppy-size--md .uppy-Dashboard-upload{height:60px;width:60px}.uppy-Dashboard-upload .uppy-c-icon{position:relative;top:1px;width:50%}.uppy-Dashboard-uploadCount{background-color:#1bb240;border-radius:50%;color:#fff;font-size:8px;height:16px;inset-inline-end:-12px;line-height:16px;position:absolute;top:-12px;width:16px}.uppy-size--md .uppy-Dashboard-uploadCount{font-size:9px;height:18px;line-height:18px;width:18px}:root{--upload-bg: #f8fafc;--upload-card: #ffffff;--upload-primary: #3b82f6;--upload-primary-dark: #2563eb;--upload-success: #22c55e;--upload-text: #374151;--upload-text-secondary: #6b7280;--upload-border: #e5e7eb;--upload-border-light: #f3f4f6}.upload-page-container{display:flex;min-height:calc(100vh - 64px);background:var(--upload-bg)}.upload-main-content{flex:1;padding:2rem;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto}.upload-page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:1rem;padding:2rem}.upload-page-loading .loading-spinner{width:32px;height:32px;border:3px solid var(--upload-border);border-top-color:var(--upload-primary);border-radius:50%;animation:spin .8s linear infinite}.upload-page-loading p{color:var(--upload-text-secondary);font-size:.875rem;margin:0}.upload-page-error{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;padding:2rem;gap:.75rem}.upload-page-error .error-icon{width:48px;height:48px;background:#fef2f2;color:#dc2626;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.upload-page-error h2{margin:0;color:#dc2626;font-size:1.125rem;font-weight:600}.upload-page-error p{color:var(--upload-text-secondary);font-size:.875rem;margin:0}.upload-page-error button{margin-top:.75rem;padding:.5rem 1rem;background:var(--upload-primary);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease}.upload-page-error button:hover{background:var(--upload-primary-dark)}.upload-card{width:100%;max-width:640px;background:var(--upload-card);border-radius:12px;box-shadow:0 4px 24px #00000014;overflow:hidden;margin-bottom:1.5rem}.upload-card-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid var(--upload-border)}.header-left h1{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937;line-height:1.3}.header-subtitle{font-size:.8125rem;color:var(--upload-text-secondary);margin-top:.25rem;display:block}.header-right{flex-shrink:0}.advanced-toggle{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--upload-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}.advanced-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--upload-primary);cursor:pointer}.advanced-toggle:hover{color:var(--upload-text)}.upload-selector-section{padding:1rem 2rem;border-bottom:1px solid var(--upload-border-light)}.upload-dropzone-section{padding:2rem}.upload-dropzone-section .uppy-dashboard-wrapper{height:320px;max-height:320px;border-radius:8px}.upload-dropzone-section .uppy-Dashboard{border:2px dashed var(--upload-border)!important;border-radius:8px!important;background:#fafbfc!important;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.upload-dropzone-section .uppy-Dashboard:hover{border-color:var(--upload-primary)!important;background:var(--upload-bg)!important}.upload-dropzone-section .uppy-Dashboard--isDragDropSupported{border-style:dashed!important}.upload-dropzone-section .uppy-Dashboard.uppy-Dashboard--isDraggingOver{border-color:var(--upload-primary)!important;background:#eff6ff!important;box-shadow:0 0 0 4px #3b82f61a!important;animation:dropzonePulse 1.5s ease-in-out infinite}@keyframes dropzonePulse{0%,to{box-shadow:0 0 0 4px #3b82f61a}50%{box-shadow:0 0 0 6px #3b82f626}}.upload-dropzone-section .uppy-Dashboard-AddFiles-title{font-size:1rem!important;font-weight:500!important;color:var(--upload-text)!important}.upload-dropzone-section .uppy-Dashboard-browse{color:var(--upload-primary)!important;transition:color .15s ease}.upload-dropzone-section .uppy-Dashboard-browse:hover{color:var(--upload-primary-dark)!important}.upload-info-section{padding:.75rem 2rem;background:#fafbfc;border-top:1px solid var(--upload-border-light)}.upload-progress-section{padding:1rem 2rem;background:#f0f9ff;border-top:1px solid #bae6fd}.progress-bar{height:6px;background:#e0f2fe;border-radius:3px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--upload-primary) 0%,var(--upload-success) 100%);background-size:200% 100%;animation:progressGradient 2s linear infinite;transition:width .3s ease;border-radius:3px}@keyframes progressGradient{0%{background-position:0% 0%}to{background-position:200% 0%}}.progress-info{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.progress-text{font-size:.75rem;color:#0369a1;font-weight:500}.progress-details{font-size:.75rem;color:#64748b;font-weight:400}.upload-speed{color:var(--upload-success);font-weight:500}.upload-card-footer{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-top:1px solid var(--upload-border);background:#fafbfc}.btn-back{padding:.5rem 1rem;background:transparent;border:1px solid #d1d5db;color:var(--upload-text-secondary);border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-back:hover{background:var(--upload-border-light);border-color:#9ca3af;color:var(--upload-text)}.files-queued{font-size:.8125rem;color:var(--upload-success);font-weight:500}.duplicate-check-status{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:var(--upload-card);border:1px solid var(--upload-border);border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:1050;font-size:.875rem;color:var(--upload-text);font-weight:500}.duplicate-check-status .loading-spinner{width:16px;height:16px;border:2px solid var(--upload-border);border-top-color:var(--upload-primary);border-radius:50%;animation:spin .8s linear infinite}.duplicate-check-status .loading-spinner.small{width:14px;height:14px}@media(max-width:1024px){.upload-main-content{padding:1.5rem}}@media(max-width:768px){.upload-page-container .project-sidebar{display:none}.upload-main-content{padding:1rem}.upload-card{border-radius:8px}.upload-card-header{padding:1rem 1.5rem;flex-direction:column;align-items:flex-start;gap:.75rem}.header-right{align-self:flex-end}.upload-selector-section,.upload-info-section{padding-left:1.5rem;padding-right:1.5rem}.upload-dropzone-section{padding:1.5rem}.upload-dropzone-section .uppy-dashboard-wrapper{height:280px;max-height:280px}.upload-card-footer{padding:1rem 1.5rem;flex-direction:column;gap:.75rem;align-items:stretch}.upload-progress-section{padding:1rem 1.5rem}.btn-back{width:100%;text-align:center}.files-queued{text-align:center}.upload-map-panel{min-height:300px;border-radius:8px}}.upload-main--advanced{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:1.5rem}.upload-main--advanced .upload-card{flex:0 1 auto;width:100%;max-width:560px;margin-bottom:0}.upload-map-panel{flex:0 1 auto;width:100%;max-width:480px;min-height:400px;background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000014;overflow:hidden;animation:slideIn .3s ease-out;display:flex;flex-direction:column}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media(max-width:1200px){.upload-main--advanced{flex-direction:column;align-items:center}.upload-main--advanced .upload-card{max-width:640px}.upload-map-panel{max-width:640px;min-height:350px}}.files-page-container{display:flex;min-height:calc(100vh - 64px);background:#f9fafb}.files-main-content{flex:1;padding:2rem 2.5rem;max-width:1400px;margin:0 auto;width:100%}.files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.files-header .header-left h1{font-size:1.75rem;font-weight:700;color:#111827;margin:0 0 .25rem;letter-spacing:-.025em}.files-header .header-subtitle{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;margin:0}.files-header .separator{color:#d1d5db}.btn-upload{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.btn-upload:hover{background:#2563eb;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-1px)}.btn-upload svg{flex-shrink:0}.files-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1rem 1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 2px #0000000d}.stat-item{display:flex;flex-direction:column;gap:.125rem}.stat-item .stat-value{font-size:1.25rem;font-weight:700;color:#111827}.stat-item .stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.files-filter-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:.75rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.filter-left{display:flex;align-items:center;gap:.75rem}.filter-label{font-size:.875rem;font-weight:500;color:#374151}.filter-select{padding:.5rem 2rem .5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#111827;background:#fff;cursor:pointer;min-width:200px}.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.files-count{font-size:.875rem;color:#6b7280}.files-grid-container{min-height:400px}.files-grid-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.files-grid-loading p{color:#6b7280;font-size:.875rem}.files-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.file-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.file-card:hover{border-color:#3b82f6;box-shadow:0 4px 8px -2px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.file-thumbnail{aspect-ratio:4 / 3;background:#f3f4f6;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.file-thumbnail img{width:100%;height:100%;object-fit:cover}.file-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#9ca3af}.file-info{padding:.875rem}.file-name{font-size:.875rem;font-weight:500;color:#111827;margin:0 0 .375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#6b7280}.meta-separator{color:#d1d5db}.files-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fff;border:2px dashed #e5e7eb;border-radius:12px}.files-empty-state svg{color:#d1d5db;margin-bottom:1rem}.files-empty-state h3{font-size:1.125rem;font-weight:600;color:#6b7280;margin:0 0 .5rem}.files-empty-state p{font-size:.875rem;color:#9ca3af;margin:0 0 1.5rem}.btn-upload-empty{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-upload-empty:hover{background:#2563eb}.files-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.pagination-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.875rem;color:#6b7280}.files-page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.files-page-loading p{color:#6b7280;font-size:.875rem}.files-page-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;text-align:center;padding:2rem}.files-page-error .error-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#fef2f2;color:#dc2626;border-radius:50%;font-size:2rem;font-weight:700}.files-page-error h2{color:#dc2626;font-size:1.5rem;font-weight:600;margin:0}.files-page-error p{color:#6b7280;font-size:.875rem;margin:0}.files-page-error button{padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.files-page-error button:hover{background:#2563eb}.file-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.file-modal{background:#fff;border-radius:12px;max-width:480px;width:100%;position:relative;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#111827}.modal-content{padding:2rem}.modal-content h3{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 1.5rem;padding-right:2rem;word-break:break-word}.modal-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;align-items:center}.detail-label{font-size:.875rem;color:#6b7280}.detail-value{font-size:.875rem;color:#111827;font-weight:500}.btn-view-full{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s}.btn-view-full:hover{background:#2563eb}@media(max-width:1200px){.files-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.files-grid{grid-template-columns:repeat(2,1fr)}.files-stats{flex-wrap:wrap}.stat-item{min-width:calc(50% - .75rem)}}@media(max-width:768px){.files-main-content{padding:1rem}.files-header{flex-direction:column;gap:1rem;align-items:flex-start}.btn-upload{width:100%;justify-content:center}.files-filter-bar{flex-direction:column;gap:.75rem;align-items:stretch}.filter-left{flex-direction:column;align-items:stretch}.filter-select{width:100%}.filter-right{text-align:center}}@media(max-width:480px){.files-grid{grid-template-columns:1fr}.files-pagination{flex-direction:column;gap:.75rem}.pagination-btn{width:100%;justify-content:center}}.selection-controls{display:flex;align-items:center;gap:.75rem}.selection-count{font-size:.875rem;font-weight:500;color:#3b82f6}.btn-clear-selection{padding:.375rem .75rem;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:6px;font-size:.8125rem;cursor:pointer;transition:all .2s}.btn-clear-selection:hover{background:#f3f4f6;color:#374151}.btn-delete-selected{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-delete-selected:hover{background:#b91c1c}.select-all-bar{display:flex;align-items:center;padding:.5rem 0;margin-bottom:.5rem}.select-all-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;cursor:pointer}.select-all-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.file-card{position:relative}.file-card.selected{outline:2px solid #3b82f6;outline-offset:-2px}.file-card.selected .file-checkbox{opacity:1}.file-checkbox{position:absolute;top:.5rem;left:.5rem;z-index:10;opacity:0;transition:opacity .2s}.file-card:hover .file-checkbox{opacity:1}.file-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;background:#fff;border-radius:4px}.file-delete-btn{position:absolute;top:.5rem;right:.5rem;z-index:10;opacity:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#dc2626e6;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.file-card:hover .file-delete-btn{opacity:1}.file-delete-btn:hover{background:#b91c1c}.delete-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.delete-modal{background:#fff;border-radius:12px;max-width:400px;width:100%;padding:2rem;text-align:center;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.delete-modal-icon{width:64px;height:64px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;background:#fef2f2;color:#dc2626;border-radius:50%}.delete-modal h3{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.delete-modal p{font-size:.875rem;color:#6b7280;margin:0 0 .5rem}.delete-warning{color:#dc2626!important;font-weight:500}.delete-modal-actions{display:flex;gap:.75rem;margin-top:1.5rem}.delete-modal-actions .btn-cancel{flex:1;padding:.75rem 1rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.delete-modal-actions .btn-cancel:hover:not(:disabled){background:#f3f4f6}.delete-modal-actions .btn-confirm-delete{flex:1;padding:.75rem 1rem;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.delete-modal-actions .btn-confirm-delete:hover:not(:disabled){background:#b91c1c}.delete-modal-actions button:disabled{opacity:.6;cursor:not-allowed}:root{--maps-bg: #f8fafc;--maps-card: #ffffff;--maps-primary: #3b82f6;--maps-primary-dark: #2563eb;--maps-success: #22c55e;--maps-warning: #f59e0b;--maps-info: #0ea5e9;--maps-text: #374151;--maps-text-secondary: #6b7280;--maps-border: #e5e7eb;--maps-border-light: #f3f4f6}.maps-page-container{display:flex;min-height:calc(100vh - 64px);background-color:var(--maps-bg)}.maps-main-content{flex:1;padding:1.5rem 2rem;max-width:1600px;overflow-x:hidden}.maps-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.maps-header-left{flex:1}.maps-header h1{font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 .25rem}.maps-subtitle{font-size:.875rem;color:var(--maps-text-secondary);margin:0}.maps-btn-back{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--maps-text);background:#fff;border:1px solid var(--maps-border);border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.maps-btn-back:hover{background:#f3f4f6;border-color:#9ca3af}.maps-loading{display:flex;align-items:center;justify-content:center;min-height:300px;font-size:.875rem;color:var(--maps-text-secondary)}.maps-layout{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;min-height:calc(100vh - 200px)}.maps-sidebar{display:flex;flex-direction:column;gap:1rem}.maps-filters{background:var(--maps-card);border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 3px #00000014;border:1px solid var(--maps-border-light)}.maps-filter-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 1rem}.maps-filter-group{margin-bottom:.875rem}.maps-filter-group:last-child{margin-bottom:0}.maps-filter-group label{display:block;font-size:.8125rem;font-weight:500;color:var(--maps-text);margin-bottom:.375rem}.maps-filter-group select{width:100%;padding:.5rem 2rem .5rem .75rem;font-size:.875rem;color:var(--maps-text);background-color:#fff;border:1px solid var(--maps-border);border-radius:6px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;transition:border-color .15s ease}.maps-filter-group select:hover{border-color:#9ca3af}.maps-filter-group select:focus{outline:none;border-color:var(--maps-primary)}.maps-map-area{background:var(--maps-card);border-radius:.75rem;overflow:hidden;box-shadow:0 1px 3px #00000014;border:1px solid var(--maps-border-light);min-height:500px}.layer-list-container{background:var(--maps-card);border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 3px #00000014;border:1px solid var(--maps-border-light);flex:1;overflow-y:auto;max-height:calc(100vh - 380px)}.layer-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.layer-list-title{font-size:.875rem;font-weight:600;color:#111827;margin:0}.layer-list-count{font-size:.75rem;color:var(--maps-text-secondary)}.layer-list{display:flex;flex-direction:column;gap:.5rem}.layer-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:8px;transition:background-color .15s ease}.layer-item:hover{background:#f3f4f6}.layer-item.is-visible{background:#eff6ff;border:1px solid #bfdbfe}.layer-checkbox{width:18px;height:18px;accent-color:var(--maps-primary);cursor:pointer;flex-shrink:0;margin-top:2px}.layer-info{flex:1;min-width:0}.layer-name{font-size:.875rem;font-weight:500;color:var(--maps-text);margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.layer-type{font-size:.6875rem;font-weight:500;text-transform:uppercase;padding:.125rem .5rem;border-radius:4px;background:#e5e7eb;color:var(--maps-text-secondary)}.layer-type.orthophoto{background:#dcfce7;color:#166534}.layer-type.segmentation{background:#dbeafe;color:#1e40af}.layer-type.pointcloud{background:#fef3c7;color:#92400e}.layer-type.dem{background:#f3e8ff;color:#6b21a8}.layer-date,.layer-project{font-size:.75rem;color:var(--maps-text-secondary)}.layer-status{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:500;text-transform:uppercase;padding:.125rem .5rem;border-radius:4px}.layer-status.complete{background:#dcfce7;color:#166534}.layer-status.processing{background:#fef3c7;color:#92400e}.layer-status-spinner{width:10px;height:10px;border:2px solid #92400e;border-top-color:transparent;border-radius:50%;animation:layerSpin 1s linear infinite}@keyframes layerSpin{to{transform:rotate(360deg)}}.layer-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center;color:var(--maps-text-secondary)}.layer-list-empty svg{margin-bottom:.75rem;opacity:.5}.layer-list-empty p{font-size:.875rem;margin:0}.output-map-wrapper{height:100%;min-height:500px;display:flex;flex-direction:column}.output-map-legend{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#f9fafb;border-bottom:1px solid var(--maps-border-light)}.output-map-legend-title{font-size:.875rem;font-weight:500;color:var(--maps-text);margin:0}.output-map-legend-info{font-size:.8125rem;color:var(--maps-text-secondary)}.output-map-container{flex:1;min-height:400px}.output-map-container .leaflet-container{height:100%;width:100%;z-index:1}.output-map-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:400px;text-align:center;color:var(--maps-text-secondary);background:#f9fafb;padding:2rem}.output-map-empty svg{margin-bottom:1rem;opacity:.5}.output-map-empty h3{font-size:1.125rem;font-weight:600;color:var(--maps-text);margin:0 0 .5rem}.output-map-empty p{font-size:.875rem;margin:0;max-width:320px}@media(max-width:1024px){.maps-container{padding:1rem}.maps-layout{grid-template-columns:280px 1fr;gap:1rem}.layer-list-container{max-height:calc(100vh - 350px)}}@media(max-width:768px){.maps-layout{grid-template-columns:1fr}.maps-sidebar{order:2}.maps-main{order:1;min-height:350px}.layer-list-container{max-height:300px}.output-map-wrapper{min-height:350px}}:root{--coastal-bg: #f8fafc;--coastal-card: #ffffff;--coastal-primary: #3b82f6;--coastal-primary-dark: #2563eb;--coastal-success: #22c55e;--coastal-info: #0ea5e9;--coastal-text: #374151;--coastal-text-secondary: #6b7280;--coastal-border: #e5e7eb;--coastal-border-light: #f3f4f6}.coastal-segmentation-page-container{display:flex;min-height:calc(100vh - 64px);background-color:var(--coastal-bg)}.coastal-segmentation-main-content{flex:1;padding:1.5rem 2rem;max-width:1100px}.coastal-segmentation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.coastal-segmentation-header-left{flex:1}.coastal-segmentation-header h1{font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 .25rem}.coastal-segmentation-subtitle{font-size:.875rem;color:var(--coastal-text-secondary);margin:0}.coastal-segmentation-loading{display:flex;align-items:center;justify-content:center;min-height:300px;font-size:.875rem;color:var(--coastal-text-secondary)}.coastal-segmentation-container .btn-back{padding:.5rem 1rem;background:transparent;border:1px solid #d1d5db;color:var(--coastal-text-secondary);border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;flex-shrink:0}.coastal-segmentation-container .btn-back:hover{background:var(--coastal-border-light);border-color:#9ca3af;color:var(--coastal-text)}.coastal-segmentation-info{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:1.5rem}.coastal-segmentation-info .info-icon{flex-shrink:0;color:var(--coastal-info);margin-top:.125rem}.coastal-segmentation-info p{margin:0;font-size:.875rem;color:#1e40af;line-height:1.5}.coastal-segmentation-content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.coastal-segmentation-card{background:var(--coastal-card);border-radius:10px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #00000014;border:1px solid var(--coastal-border-light)}.coastal-segmentation-card-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 1rem}.file-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.file-selector-label{font-size:.8125rem;font-weight:500;color:var(--coastal-text)}.file-selector-count{font-size:.75rem;color:var(--coastal-text-secondary)}.file-selector-search{position:relative;margin-bottom:.75rem}.file-selector-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--coastal-text-secondary)}.file-selector-search-input{width:100%;padding:.5rem .75rem .5rem 2.25rem;font-size:.875rem;color:var(--coastal-text);background-color:#fff;border:1px solid var(--coastal-border);border-radius:6px;transition:border-color .15s ease}.file-selector-search-input:focus{outline:none;border-color:var(--coastal-primary)}.file-selector-search-input:disabled{background-color:#f9fafb;cursor:not-allowed}.file-selector-controls{padding:.5rem 0;border-bottom:1px solid var(--coastal-border-light);margin-bottom:.5rem}.file-selector-checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--coastal-text);cursor:pointer}.file-selector-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--coastal-primary);cursor:pointer}.file-selector-list{max-height:280px;overflow-y:auto}.file-selector-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .5rem;border-radius:4px;cursor:pointer;transition:background-color .15s ease}.file-selector-item:hover:not(.is-disabled){background-color:var(--coastal-border-light)}.file-selector-item.is-selected{background-color:#eff6ff}.file-selector-item.is-disabled{cursor:not-allowed;opacity:.7}.file-selector-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--coastal-primary);cursor:pointer;flex-shrink:0}.file-selector-item.is-disabled input[type=checkbox]{cursor:not-allowed}.file-selector-item-info{flex:1;display:flex;justify-content:space-between;align-items:center;min-width:0}.file-selector-item-name{font-size:.875rem;color:var(--coastal-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-selector-item-size{font-size:.75rem;color:var(--coastal-text-secondary);flex-shrink:0;margin-left:.5rem}.file-selector-empty{padding:2rem 1rem;text-align:center;color:var(--coastal-text-secondary);font-size:.875rem}.segmentation-options{display:flex;flex-direction:column;gap:1rem}.segmentation-options-field{display:flex;flex-direction:column;gap:.375rem}.segmentation-options-label{font-size:.8125rem;font-weight:500;color:var(--coastal-text)}.segmentation-options-select{width:100%;padding:.625rem 2.5rem .625rem .875rem;font-size:.875rem;color:var(--coastal-text);background-color:#fff;border:1px solid var(--coastal-border);border-radius:6px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;transition:border-color .15s ease,box-shadow .15s ease}.segmentation-options-select:hover{border-color:#9ca3af}.segmentation-options-select:focus{outline:none;border-color:var(--coastal-primary);box-shadow:0 0 0 3px #3b82f61a}.segmentation-options-select:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.7}.segmentation-options-help{font-size:.75rem;color:var(--coastal-text-secondary);margin:0}.segmentation-options-checkboxes{display:flex;flex-direction:column;gap:.625rem;margin-top:.25rem}.segmentation-options-checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--coastal-text);cursor:pointer}.segmentation-options-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--coastal-primary);cursor:pointer}.segmentation-options-checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.coastal-segmentation-actions{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0}.coastal-segmentation-container .btn-primary{padding:.75rem 2rem;font-size:1rem;font-weight:500;color:#fff;background-color:var(--coastal-primary);border:none;border-radius:8px;cursor:pointer;transition:background-color .15s ease,transform .15s ease,box-shadow .15s ease}.coastal-segmentation-container .btn-primary:hover:not(:disabled){background-color:var(--coastal-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.coastal-segmentation-container .btn-primary:disabled{opacity:.5;cursor:not-allowed}.coastal-segmentation-container .btn-primary.is-processing{background-color:var(--coastal-text-secondary)}.coastal-segmentation-hint{font-size:.8125rem;color:var(--coastal-text-secondary);margin:0}.coastal-segmentation-status{margin-top:1rem}.coastal-segmentation-status-banner{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:1rem}.coastal-segmentation-status-icon{flex-shrink:0;color:var(--coastal-primary)}.status-spinner{animation:coastalSpin 1s linear infinite}@keyframes coastalSpin{to{transform:rotate(360deg)}}.coastal-segmentation-status-content{flex:1}.coastal-segmentation-status-title{font-size:1.125rem;font-weight:600;color:#1e40af;margin:0 0 .25rem}.coastal-segmentation-status-step{font-size:.875rem;color:#3b82f6;margin:0}.coastal-segmentation-progress{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.coastal-segmentation-progress-bar{flex:1;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.coastal-segmentation-progress-fill{height:100%;background:linear-gradient(90deg,var(--coastal-primary) 0%,var(--coastal-success) 100%);transition:width .3s ease;border-radius:4px}.coastal-segmentation-progress-text{font-size:.875rem;font-weight:600;color:var(--coastal-text);min-width:3rem;text-align:right}.coastal-segmentation-details{background:var(--coastal-card);border-radius:8px;padding:1.25rem;border:1px solid var(--coastal-border-light);margin-bottom:1rem}.coastal-segmentation-details-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 1rem}.coastal-segmentation-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.coastal-segmentation-detail{text-align:center}.coastal-segmentation-detail-label{display:block;font-size:.75rem;font-weight:500;color:var(--coastal-text-secondary);text-transform:uppercase;letter-spacing:.025em;margin-bottom:.25rem}.coastal-segmentation-detail-value{display:block;font-size:.875rem;font-weight:500;color:var(--coastal-text);word-break:break-all}.coastal-segmentation-logs{background:var(--coastal-card);border-radius:8px;padding:1.25rem;border:1px solid var(--coastal-border-light)}.coastal-segmentation-logs-title{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 .75rem}.coastal-segmentation-logs-container{background-color:#1f2937;color:#f3f4f6;padding:1rem;border-radius:6px;max-height:250px;overflow-y:auto;font-family:Courier New,Consolas,monospace;font-size:.8125rem;line-height:1.5}.coastal-segmentation-log-entry{padding:.25rem 0;border-bottom:1px solid #374151}.coastal-segmentation-log-entry:last-child{border-bottom:none}@media(max-width:900px){.coastal-segmentation-content{grid-template-columns:1fr}}@media(max-width:768px){.coastal-segmentation-container{padding:1rem}.coastal-segmentation-header{flex-direction:column;gap:.75rem}.coastal-segmentation-container .btn-back{align-self:flex-start}.coastal-segmentation-details-grid{grid-template-columns:1fr;gap:.75rem}.coastal-segmentation-detail{text-align:left;display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--coastal-border-light)}.coastal-segmentation-detail:last-child{border-bottom:none}.coastal-segmentation-detail-label,.coastal-segmentation-detail-value{margin-bottom:0}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.login-card{background:#fff;border-radius:1rem;padding:3rem;max-width:420px;width:100%;box-shadow:0 20px 60px #0000004d}.login-company-logo{display:block;max-height:48px;width:auto;margin:0 auto 1.5rem;object-fit:contain}.login-card h1{font-size:1.75rem;font-weight:600;margin-bottom:2rem;text-align:center;color:#1f2937}.login-card h1:has(+.login-welcome){margin-bottom:.5rem}.login-welcome{text-align:center;color:#6b7280;font-size:.9375rem;margin-bottom:2rem}.error-message{background-color:#fee2e2;color:#991b1b;padding:.75rem;border-radius:.5rem;margin-bottom:1.5rem;font-size:.875rem;text-align:center}.login-form{margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.875rem}.form-group input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:#f9fafb;cursor:not-allowed}.button-primary{width:100%;padding:.875rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.5rem;font-weight:600;font-size:1rem;cursor:pointer;transition:transform .2s}.button-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.button-primary:disabled{opacity:.6;cursor:not-allowed}.divider{position:relative;text-align:center;margin:1.5rem 0}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:#e5e7eb}.divider span{position:relative;background-color:#fff;padding:0 1rem;color:#9ca3af;font-size:.875rem}.button-google{width:100%;padding:.875rem;background-color:#fff;color:#1f2937;border:1px solid #d1d5db;border-radius:.5rem;font-weight:500;font-size:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.75rem}.button-google:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.button-google:disabled{opacity:.6;cursor:not-allowed}.google-icon{flex-shrink:0}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:#6b7280;font-size:.875rem}.login-footer a{color:#667eea;font-weight:600;text-decoration:none}.login-footer a:hover{text-decoration:underline}.react-photo-album{display:flex}.react-photo-album,.react-photo-album *{box-sizing:border-box}.react-photo-album--track{align-items:flex-start;display:flex}.react-photo-album--photo{padding:calc(var(--react-photo-album--padding)*1px);position:relative}.react-photo-album--image{aspect-ratio:var(--react-photo-album--photo-width)/var(--react-photo-album--photo-height);display:block;height:auto;width:100%}.react-photo-album--button{background:initial;border:initial;cursor:pointer}.react-photo-album--rows{flex-direction:column;row-gap:calc(var(--react-photo-album--spacing)*1px)}.react-photo-album--rows .react-photo-album--track{justify-content:space-between;--react-photo-album--track-gaps:calc(var(--react-photo-album--spacing)*(var(--react-photo-album--track-size) - 1) + var(--react-photo-album--padding)*2*var(--react-photo-album--track-size))}.react-photo-album--rows .react-photo-album--photo{width:calc((100% - var(--react-photo-album--track-gaps)*1px)/(var(--react-photo-album--container-width) - var(--react-photo-album--track-gaps))*var(--react-photo-album--photo-width) + 2px*var(--react-photo-album--padding))}.media-grid-container{width:100%;overflow:hidden}.media-grid-item{position:relative;cursor:pointer;border-radius:.375rem;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}.media-grid-item:hover{transform:scale(1.02);box-shadow:0 4px 16px #0003;z-index:1}.media-grid-item img{display:block;width:100%;height:100%;object-fit:cover;background-color:#f3f4f6}.media-video-overlay{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:linear-gradient(transparent,#000000b3);color:#fff;pointer-events:none}.media-video-overlay .play-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:#ffffffe6;color:#1f2937;font-size:.875rem;padding-left:.125rem}.media-video-overlay .duration{font-size:.75rem;font-weight:500;font-variant-numeric:tabular-nums;background:#00000080;padding:.25rem .5rem;border-radius:.25rem}.media-grid-empty{display:flex;align-items:center;justify-content:center;min-height:200px;text-align:center;color:#9ca3af;font-size:.875rem}.scroll-sentinel{height:1px;width:100%}.media-loading-more{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.5rem;color:#6b7280;font-size:.875rem}.loading-spinner{width:1.25rem;height:1.25rem;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.media-end{text-align:center;padding:1.5rem;color:#9ca3af;font-size:.875rem;border-top:1px solid #e5e7eb;margin-top:1rem}@media(max-width:640px){.media-grid-item:hover{transform:none;box-shadow:none}.media-video-overlay .play-icon{width:1.75rem;height:1.75rem;font-size:.75rem}.media-video-overlay{padding:.375rem .5rem}.media-video-overlay .duration{font-size:.625rem;padding:.125rem .375rem}}.media-map-wrapper{height:100%;width:100%;min-height:500px;position:relative;display:flex;flex-direction:column;border-radius:.75rem;overflow:hidden;background:#f9fafb}.media-map-legend{background:#fff;padding:.625rem 1rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:1rem;flex-shrink:0;z-index:900;position:relative}.media-map-legend .legend-title{font-weight:600;color:#374151;font-size:.875rem}.media-map-legend .legend-info{font-size:.75rem;color:#6b7280}.filter-visible-btn{margin-left:auto;display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:500;color:#3b82f6;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.375rem;cursor:pointer;transition:all .15s ease}.filter-visible-btn:hover{background:#dbeafe;border-color:#93c5fd}.filter-visible-btn:active{transform:translateY(1px)}.media-map-container{flex:1;min-height:0}.cluster-marker-icon{background:transparent!important;border:none!important}.cluster-marker{display:flex;align-items:center;justify-content:center;border-radius:50%;border:3px solid white;box-shadow:0 2px 8px #00000040;cursor:pointer;transition:transform .15s ease}.cluster-marker:hover{transform:scale(1.1)}.cluster-marker span{color:#fff;font-weight:600;font-size:.875rem;text-shadow:0 1px 2px rgba(0,0,0,.2)}.media-marker-icon{background:transparent!important;border:none!important}.media-marker{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:3px solid white;box-shadow:0 2px 6px #0000004d;cursor:pointer;transition:transform .15s ease}.media-marker:hover{transform:scale(1.15)}.media-map-popup{min-width:200px;max-width:280px;padding:.25rem}.popup-thumbnail{width:100%;height:auto;max-height:180px;object-fit:cover;border-radius:.375rem;margin-bottom:.5rem;cursor:pointer;transition:opacity .15s ease}.popup-thumbnail:hover{opacity:.9}.popup-filename{margin:0 0 .5rem;font-size:.8125rem;font-weight:500;color:#374151;word-break:break-word}.popup-view-btn{width:100%;padding:.5rem;font-size:.75rem;font-weight:500;color:#fff;background:#3b82f6;border:none;border-radius:.375rem;cursor:pointer;transition:background .15s ease}.popup-view-btn:hover{background:#2563eb}.media-map-empty-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;text-align:center;background:#fffffff2;padding:2rem;border-radius:.75rem;box-shadow:0 4px 12px #0000001a;z-index:500}.media-map-empty-overlay svg{color:#9ca3af;margin-bottom:1rem}.media-map-empty-overlay p{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#374151}.media-map-empty-overlay span{font-size:.875rem;color:#6b7280}.media-map-wrapper .leaflet-popup-content-wrapper{border-radius:.5rem;box-shadow:0 4px 12px #00000026}.media-map-wrapper .leaflet-popup-content{margin:.75rem;min-width:180px}.media-map-wrapper .leaflet-control-fullscreen{background-color:#fff;border-radius:.25rem}@media(max-width:768px){.media-map-wrapper{min-height:400px}.media-map-legend{padding:.5rem .75rem;gap:.5rem;flex-wrap:wrap}.filter-visible-btn{width:100%;margin-left:0;margin-top:.5rem;justify-content:center}.cluster-marker span{font-size:.75rem}.media-map-popup{min-width:150px}.popup-thumbnail{max-height:140px}}.yarl__fullsize{height:100%;width:100%}.yarl__relative{position:relative}.yarl__portal{inset:0;opacity:0;overflow:hidden;position:fixed;transition:opacity var(--yarl__fade_animation_duration,.25s) var(--yarl__fade_animation_timing_function,ease);z-index:var(--yarl__portal_zindex,9999)}.yarl__portal_open{opacity:1}.yarl__container{background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));inset:0;outline:none;overflow:hidden;overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain);position:absolute;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;-moz-user-select:none;user-select:none}.yarl__carousel{align-content:center;align-items:stretch;display:flex;flex:0 0 auto;height:100%;justify-content:center;opacity:var(--yarl__pull_opacity,1);transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px, 0)*1px + var(--yarl__carousel_spacing_percent, 0)*1%))}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_spacing_percent, 0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_spacing_percent, 0)*1%)}.yarl__flex_center{align-content:center;align-items:center;display:flex;justify-content:center}.yarl__slide{flex:1;overflow:hidden;padding:calc(var(--yarl__carousel_padding_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_padding_percent, 0)*1%);position:relative}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{max-height:100%;max-width:100%;-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.yarl__slide_image_cover{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.yarl__slide_image_loading{opacity:0}@media screen and (min-width:800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-backface-visibility:hidden;-webkit-transform:translateZ(0);-webkit-transform-style:preserve-3d}}.yarl__slide_placeholder{left:50%;line-height:0;position:absolute;top:50%;transform:translate(-50%) translateY(-50%)}.yarl__slide_loading{animation:yarl__delayed_fadein 1s linear;color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,hsla(0,0%,100%,.8)))}.yarl__slide_loading line{animation:yarl__stroke_opacity 1s linear infinite}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{color:var(--yarl__slide_icon_error_color,red);height:var(--yarl__slide_icon_error_size,48px);width:var(--yarl__slide_icon_error_size,48px)}@media(prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{display:flex;justify-content:flex-end;inset:0 0 auto auto;padding:var(--yarl__toolbar_padding,8px);position:absolute}[dir=rtl] .yarl__toolbar{inset:0 auto auto 0}.yarl__icon{height:var(--yarl__icon_size,32px);width:var(--yarl__icon_size,32px)}.yarl__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);color:var(--yarl__color_button,hsla(0,0%,100%,.8));cursor:pointer;filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px rgba(0,0,0,.8)));line-height:0;margin:var(--yarl__button_margin,0);outline:none;padding:var(--yarl__button_padding,8px);-webkit-tap-highlight-color:transparent}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,hsla(0,0%,100%,.8))}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media(hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,hsla(0,0%,100%,.4));cursor:default}.yarl__navigation_next,.yarl__navigation_prev{padding:var(--yarl__navigation_button_padding,24px 16px);position:absolute;top:50%;transform:translateY(-50%)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%) rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%) rotate(180deg)}.yarl__no_scroll{height:100%;overflow:hidden;overscroll-behavior:none}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}.yarl__thumbnails{display:flex;height:100%}.yarl__thumbnails_bottom,.yarl__thumbnails_end .yarl__thumbnails_track,.yarl__thumbnails_start .yarl__thumbnails_track,.yarl__thumbnails_top{flex-direction:column}.yarl__thumbnails_wrapper{flex:1;position:relative}.yarl__thumbnails_container{background-color:var(--yarl__thumbnails_container_background_color,var(--yarl__color_backdrop,#000));flex:0 0 auto;overflow:hidden;padding:var(--yarl__thumbnails_container_padding,16px);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.yarl__thumbnails_vignette{pointer-events:none;position:absolute;--yarl__thumbnails_vignette_size:12%}@media(min-width:1200px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:8%}}@media(min-width:2000px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:5%}}.yarl__thumbnails_bottom .yarl__thumbnails_vignette,.yarl__thumbnails_top .yarl__thumbnails_vignette{background:linear-gradient(to right,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size, 12%)),var(--yarl__color_backdrop,#000) 100%);height:100%;left:0;right:0}.yarl__thumbnails_end .yarl__thumbnails_vignette,.yarl__thumbnails_start .yarl__thumbnails_vignette{background:linear-gradient(to bottom,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size, 12%)),var(--yarl__color_backdrop,#000) 100%);bottom:0;top:0;width:100%}.yarl__thumbnails_track{gap:var(--yarl__thumbnails_thumbnail_gap,16px);outline:none}.yarl__thumbnails_thumbnail{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--yarl__thumbnails_thumbnail_background,#000);border-color:var(--yarl__thumbnails_thumbnail_border_color,var(--yarl__color_button,hsla(0,0%,100%,.8)));border-radius:var(--yarl__thumbnails_thumbnail_border_radius,4px);border-style:var(--yarl__thumbnails_thumbnail_border_style,solid);border-width:var(--yarl__thumbnails_thumbnail_border,1px);cursor:pointer;flex:0 0 auto;-webkit-tap-highlight-color:transparent;box-sizing:content-box;height:var(--yarl__thumbnails_thumbnail_height,80px);outline:none;overflow:hidden;padding:var(--yarl__thumbnails_thumbnail_padding,4px);position:relative;width:var(--yarl__thumbnails_thumbnail_width,120px)}.yarl__thumbnails_thumbnail_active{border-color:var(--yarl__thumbnails_thumbnail_active_border_color,var(--yarl__color_button_active,#fff))}.yarl__thumbnails_thumbnail_fadein{animation:yarl__thumbnails_thumbnail_fadein var(--yarl__thumbnails_thumbnail_fadein_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadein_delay,0s) forwards;opacity:0}.yarl__thumbnails_thumbnail_fadeout{animation:yarl__thumbnails_thumbnail_fadeout var(--yarl__thumbnails_thumbnail_fadeout_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadeout_delay,0s) forwards;cursor:unset}.yarl__thumbnails_thumbnail_placeholder{cursor:unset;visibility:hidden}.yarl__thumbnails_thumbnail:focus{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,hsla(0,0%,100%,.8)) 0 0 0 4px)}.yarl__thumbnails_thumbnail:focus:not(:focus-visible){box-shadow:unset}.yarl__thumbnails_thumbnail:focus-visible{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,hsla(0,0%,100%,.8)) 0 0 0 4px)}.yarl__thumbnails_thumbnail_icon{color:var(--yarl__thumbnails_thumbnail_icon_color,var(--yarl__color_button,hsla(0,0%,100%,.8)));filter:var(--yarl__thumbnails_thumbnail_icon_filter,drop-shadow(2px 2px 2px rgba(0,0,0,.8)));height:var(--yarl__thumbnails_thumbnail_icon_size,32px);left:50%;position:absolute;top:50%;transform:translate(-50%) translateY(-50%);width:var(--yarl__thumbnails_thumbnail_icon_size,32px)}@keyframes yarl__thumbnails_thumbnail_fadein{0%{opacity:0}to{opacity:1}}@keyframes yarl__thumbnails_thumbnail_fadeout{0%{opacity:1}to{opacity:0}}.filter-section{border-bottom:1px solid #e5e7eb}.filter-section:last-child{border-bottom:none}.filter-section-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.75rem 0;background:none;border:none;cursor:pointer;font-size:.875rem;font-weight:500;color:#374151;text-align:left;transition:color .2s}.filter-section-header:hover{color:#111827}.filter-section-title{flex:1}.filter-section-right{display:flex;align-items:center;gap:.5rem}.filter-section-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .375rem;font-size:.75rem;font-weight:500;color:#fff;background-color:#3b82f6;border-radius:9999px}.filter-section-chevron{display:flex;align-items:center;color:#9ca3af;transition:transform .2s ease}.filter-section.is-expanded .filter-section-chevron{transform:rotate(180deg)}.filter-section-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease}.filter-section.is-expanded .filter-section-content{grid-template-rows:1fr}.filter-section-inner{overflow:hidden;padding:0}.filter-section.is-expanded .filter-section-inner{padding-bottom:.75rem}.filter-section .filter-input-group{margin-bottom:.75rem}.filter-section .filter-input-group:last-child{margin-bottom:0}.filter-section .filter-input-group label{display:block;font-size:.75rem;font-weight:500;color:#6b7280;margin-bottom:.25rem}.filter-section .filter-input-group input,.filter-section .filter-input-group select{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;background-color:#fff}.filter-section .filter-input-group input:focus,.filter-section .filter-input-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.filter-date-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.filter-presets{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.5rem}.filter-preset-btn{padding:.25rem .5rem;font-size:.75rem;color:#6b7280;background-color:#f3f4f6;border:none;border-radius:.25rem;cursor:pointer;transition:background-color .2s,color .2s}.filter-preset-btn:hover{background-color:#e5e7eb;color:#374151}.filter-preset-btn.is-active{background-color:#3b82f6;color:#fff}.filter-bbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.filter-bbox-grid .filter-input-group{margin-bottom:0}.filter-sidebar{display:flex;flex-direction:column;height:100%}.filter-sidebar-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid #e5e7eb;margin-bottom:.5rem}.filter-sidebar-header h2{font-size:1rem;font-weight:600;color:#111827;margin:0}.filter-sidebar-count{font-size:.75rem;color:#6b7280;background-color:#f3f4f6;padding:.25rem .5rem;border-radius:9999px}.filter-sidebar-sections{flex:1;overflow-y:auto}.filter-hint{font-size:.75rem;color:#9ca3af;margin:0 0 .5rem}.filter-hint-future{margin-top:.5rem;font-style:italic}.filter-help{font-size:.75rem;color:#9ca3af;margin:.25rem 0 0}.filter-sidebar-actions{display:flex;flex-direction:column;gap:.5rem;padding-top:1rem;border-top:1px solid #e5e7eb;margin-top:1rem}.filter-apply-btn{width:100%;padding:.625rem 1rem;font-size:.875rem;font-weight:500;color:#fff;background-color:#3b82f6;border:none;border-radius:.375rem;cursor:pointer;transition:background-color .2s}.filter-apply-btn:hover{background-color:#2563eb}.filter-apply-btn:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d}.filter-reset-btn{width:100%;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#6b7280;background-color:transparent;border:none;cursor:pointer;transition:color .2s}.filter-reset-btn:hover{color:#374151}.filter-sidebar-toggle{display:none;position:fixed;bottom:1rem;right:1rem;z-index:100;padding:.75rem 1rem;font-size:.875rem;font-weight:500;color:#fff;background-color:#3b82f6;border:none;border-radius:9999px;box-shadow:0 4px 6px #0000001a;cursor:pointer}.filter-sidebar-toggle:hover{background-color:#2563eb}@media(max-width:1024px){.filter-sidebar{position:fixed;top:0;left:0;width:100%;max-width:320px;height:100vh;background:#fff;z-index:1000;padding:1.5rem;box-shadow:2px 0 8px #0000001a;transform:translate(-100%);transition:transform .3s ease}.filter-sidebar.is-open{transform:translate(0)}.filter-sidebar-toggle{display:flex;align-items:center;gap:.5rem}}.view-toggle{display:flex;gap:0;background:#f3f4f6;border-radius:.5rem;padding:.25rem}.view-toggle-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:.375rem;cursor:pointer;transition:all .15s ease}.view-toggle-btn:hover:not(.active){color:#374151;background:#ffffff80}.view-toggle-btn.active{color:#374151;background:#fff;box-shadow:0 1px 3px #0000001a}.view-toggle-btn svg{flex-shrink:0}@media(max-width:480px){.view-toggle-btn span{display:none}.view-toggle-btn{padding:.5rem .75rem}}.media-container{padding:1.5rem;max-width:1800px;margin:0 auto}.media-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem}.media-header-right{display:flex;align-items:center;gap:.75rem}.media-header-left{display:flex;align-items:baseline;gap:1rem}.media-header h1{font-size:1.5rem;font-weight:600;color:#111827;margin:0}.media-count{color:#6b7280;font-size:.875rem;margin:0}.media-filter-toggle{display:none;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#374151;background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;cursor:pointer;transition:background-color .2s,border-color .2s;position:relative}.media-filter-toggle:hover{background-color:#f9fafb;border-color:#9ca3af}.media-filter-badge{position:absolute;top:-4px;right:-4px;width:10px;height:10px;background-color:#3b82f6;border-radius:50%;border:2px solid white}.media-layout{display:grid;grid-template-columns:280px 1fr;gap:1.5rem}.media-sidebar{background:#fff;border-radius:.75rem;padding:1.25rem;height:fit-content;max-height:calc(100vh - 150px);overflow-y:auto;box-shadow:0 1px 3px #0000001a;position:sticky;top:1rem}.media-sidebar-overlay{display:none}.media-main{min-height:400px}.media-main-map{height:calc(100vh - 200px);min-height:500px}.media-loading{text-align:center;padding:3rem;color:#6b7280}.media-error{text-align:center;padding:3rem;background-color:#fef2f2;border-radius:.5rem;color:#991b1b}.media-error p{margin:0 0 1rem}.media-retry-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#991b1b;background-color:#fff;border:1px solid #fecaca;border-radius:.375rem;cursor:pointer;transition:background-color .2s}.media-retry-btn:hover{background-color:#fef2f2}.media-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#9ca3af;background-color:#f9fafb;border-radius:.75rem;border:2px dashed #e5e7eb}.media-empty svg{margin-bottom:1rem;opacity:.5}.media-empty p{font-size:1rem;margin:0 0 1rem}.media-clear-filters-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#3b82f6;background-color:#fff;border:1px solid #3b82f6;border-radius:.375rem;cursor:pointer;transition:background-color .2s}.media-clear-filters-btn:hover{background-color:#eff6ff}@media(max-width:1024px){.media-container{padding:1rem}.media-filter-toggle{display:flex}.media-layout{grid-template-columns:1fr}.media-sidebar{position:fixed;top:0;left:0;width:100%;max-width:320px;height:100vh;max-height:100vh;z-index:1000;border-radius:0;padding:1.5rem;box-shadow:2px 0 8px #0000001a;transform:translate(-100%);transition:transform .3s ease}.media-sidebar.is-open{transform:translate(0)}.media-sidebar-overlay{display:block;position:fixed;inset:0;background-color:#0000004d;z-index:999}}@media(max-width:640px){.media-header{flex-wrap:wrap}.media-header-left{flex-direction:column;align-items:flex-start;gap:.25rem}.media-header-right{width:100%;justify-content:space-between;order:3;margin-top:.5rem}.media-header h1{font-size:1.25rem}.media-main-map{height:calc(100vh - 250px);min-height:350px}}.api-token-card{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.875rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem}.api-token-info{flex:1;min-width:0}.api-token-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.api-token-name{font-weight:600;color:#1e293b;font-size:.875rem}.api-token-prefix{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.75rem;color:#6b7280;background:#e5e7eb;padding:.125rem .375rem;border-radius:.25rem}.api-token-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.api-token-meta-item{display:flex;gap:.25rem;font-size:.75rem}.api-token-label{color:#6b7280}.api-token-value{color:#374151}.api-token-scopes{display:flex;flex-wrap:wrap;gap:.25rem}.api-token-scope{font-size:.6875rem;color:#1e40af;background:#dbeafe;padding:.125rem .375rem;border-radius:.25rem}.api-token-actions{flex-shrink:0}.api-token-revoke-btn{padding:.375rem .625rem;background:#fff;color:#dc2626;border:1px solid #fca5a5;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.api-token-revoke-btn:hover{background:#fef2f2;border-color:#f87171}.api-token-revoke-btn:disabled{opacity:.6;cursor:not-allowed}.api-token-confirm{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.api-token-confirm-text{font-size:.75rem;color:#dc2626;font-weight:500}.api-token-confirm-buttons{display:flex;gap:.375rem}.api-token-confirm-yes{padding:.375rem .625rem;background:#dc2626;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:background .15s ease}.api-token-confirm-yes:hover{background:#b91c1c}.api-token-confirm-yes:disabled{opacity:.6;cursor:not-allowed}.api-token-confirm-no{padding:.375rem .625rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.api-token-confirm-no:hover{background:#f3f4f6}.api-token-confirm-no:disabled{opacity:.6;cursor:not-allowed}@media(max-width:480px){.api-token-card{flex-direction:column;gap:.75rem}.api-token-actions,.api-token-revoke-btn{width:100%}.api-token-confirm{align-items:stretch}.api-token-confirm-text{text-align:center}.api-token-confirm-buttons{justify-content:center}}.create-token-modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.create-token-modal{background:#fff;border-radius:.5rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.create-token-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.create-token-modal-header h2{font-size:1rem;font-weight:600;color:#1e293b;margin:0}.create-token-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;border-radius:.25rem;color:#6b7280;cursor:pointer;transition:all .15s ease}.create-token-modal-close:hover{background:#f3f4f6;color:#374151}.create-token-modal-body{padding:1.25rem}.create-token-modal-description{color:#6b7280;font-size:.8125rem;line-height:1.5;margin:0 0 1.25rem}.create-token-form-group{display:flex;flex-direction:column;gap:.375rem}.create-token-form-group label{font-size:.8125rem;font-weight:500;color:#374151}.create-token-form-group input{padding:.625rem .75rem;font-size:.875rem;border:1px solid #d1d5db;border-radius:.375rem;transition:border-color .15s ease,box-shadow .15s ease}.create-token-form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.create-token-form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.create-token-help{color:#6b7280;font-size:.75rem;margin:0}.create-token-error{color:#dc2626;font-size:.75rem;margin:0}.create-token-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background:#f9fafb}.create-token-cancel-btn{padding:.5rem 1rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.create-token-cancel-btn:hover{background:#f3f4f6}.create-token-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.create-token-submit-btn{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.create-token-submit-btn:hover:not(:disabled){background:#2563eb}.create-token-submit-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:480px){.create-token-modal-backdrop{padding:.5rem}.create-token-modal-footer{flex-direction:column-reverse}.create-token-cancel-btn,.create-token-submit-btn{width:100%;justify-content:center}}.profile-container{padding:1.5rem;max-width:800px;margin:0 auto;min-height:100vh;background:#f8fafc}.profile-content{display:flex;flex-direction:column;gap:1.5rem}.profile-header{text-align:center;margin-bottom:.5rem}.profile-header h1{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0}.profile-card{background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;overflow:hidden}.profile-card-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;background:#f9fafb;border-bottom:1px solid #e5e7eb}.profile-card-header h2{font-size:.9375rem;font-weight:600;color:#374151;margin:0}.profile-card-header-left{display:flex;align-items:center;gap:.5rem}.profile-card-icon{color:#6b7280}.profile-card-content{padding:1rem}.profile-details{display:flex;flex-direction:column;gap:.625rem;margin:0}.profile-detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:.375rem 0;border-bottom:1px solid #f3f4f6}.profile-detail-row:last-child{border-bottom:none}.profile-detail-row dt{font-weight:500;color:#6b7280;font-size:.8125rem}.profile-detail-row dd{color:#1e293b;font-size:.8125rem;text-align:right;margin:0}.profile-detail-cost dd{font-size:.75rem;color:#6b7280}.profile-create-token-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.profile-create-token-btn:hover{background:#2563eb}.profile-tokens-description{color:#6b7280;font-size:.8125rem;margin:0 0 1rem;line-height:1.5}.profile-token-created{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.5rem;padding:1rem;margin-bottom:1rem}.profile-token-created-header{display:flex;align-items:center;gap:.5rem;color:#065f46;margin-bottom:.5rem}.profile-token-created-header svg{color:#10b981}.profile-token-warning{color:#065f46;font-size:.8125rem;margin:0 0 .75rem}.profile-token-value{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;padding:.625rem;margin-bottom:.75rem}.profile-token-value code{flex:1;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.875rem;color:#1e293b;word-break:break-all}.profile-copy-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .625rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:.25rem;color:#374151;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.profile-copy-btn:hover{background:#e5e7eb}.profile-dismiss-btn{display:inline-block;padding:.5rem 1rem;background:#10b981;color:#fff;border:none;border-radius:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.profile-dismiss-btn:hover{background:#059669}.profile-tokens-list{display:flex;flex-direction:column;gap:.75rem}.profile-tokens-loading{display:flex;align-items:center;gap:.5rem;padding:1rem;color:#6b7280;font-size:.8125rem}.profile-tokens-loading .loading-spinner.small{width:16px;height:16px;border-width:2px}.profile-tokens-error{background:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;padding:.875rem;color:#991b1b;font-size:.8125rem}.profile-tokens-error .retry-button.small{margin-top:.5rem;padding:.375rem .75rem;font-size:.75rem}.profile-tokens-empty{background:#f9fafb;border:1px dashed #d1d5db;border-radius:.375rem;padding:1.5rem;text-align:center;color:#6b7280;font-size:.8125rem}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:.75rem;background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;margin:2rem auto;max-width:400px}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.profile-loading p{color:#6b7280;font-size:.8125rem;margin:0}.profile-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:.75rem;text-align:center;background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;margin:2rem auto;max-width:400px;padding:2rem}.error-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#fef2f2;color:#dc2626;border-radius:50%;font-size:1.5rem;font-weight:600}.profile-error h2{color:#dc2626;font-size:1rem;font-weight:600;margin:0}.profile-error p{color:#6b7280;font-size:.8125rem;margin:0}.retry-button{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-weight:500;font-size:.8125rem;cursor:pointer;transition:all .15s ease}.retry-button:hover{background:#2563eb}@media(max-width:640px){.profile-container{padding:1rem}.profile-card-header{flex-direction:column;align-items:flex-start;gap:.75rem}.profile-create-token-btn{width:100%;justify-content:center}.profile-detail-row{flex-direction:column;align-items:flex-start;gap:.25rem}.profile-detail-row dd{text-align:left}.profile-token-value{flex-direction:column;align-items:stretch}.profile-copy-btn{justify-content:center}}.drone-map-wrapper{height:100%;width:100%;min-height:400px;position:relative;display:flex;flex-direction:column;background:#f9fafb}.drone-map-legend{background:#fff;padding:.625rem 1rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-shrink:0;z-index:900;position:relative}.drone-map-legend .legend-title{font-weight:600;color:#374151;font-size:.875rem}.legend-items{display:flex;gap:1rem}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#6b7280}.legend-dot{width:10px;height:10px;border-radius:50%;border:2px solid white;box-shadow:0 1px 2px #0003}.legend-dot.active{background-color:#059669}.legend-dot.idle{background-color:#6b7280}.drone-map-container{flex:1;min-height:0}.drone-marker-icon{background:transparent!important;border:none!important}.drone-marker{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;box-shadow:0 2px 8px #00000040;cursor:pointer;transition:transform .15s ease,border-color .15s ease}.drone-marker:hover{transform:scale(1.2)!important}.drone-marker.selected{z-index:1000!important}.drone-popup{min-width:180px;padding:.25rem}.popup-drone-name{margin:0 0 .5rem;font-size:.9375rem;font-weight:600;color:#111827}.popup-status{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:500;padding:.25rem .5rem;border-radius:9999px;width:fit-content;margin-bottom:.75rem}.popup-status.active{background-color:#d1fae5;color:#059669}.popup-status.idle{background-color:#f3f4f6;color:#6b7280}.popup-status .status-dot{width:6px;height:6px;border-radius:50%}.popup-status.active .status-dot{background-color:#059669}.popup-status.idle .status-dot{background-color:#9ca3af}.popup-details{display:flex;flex-direction:column;gap:.5rem}.popup-detail{display:flex;justify-content:space-between;align-items:center}.popup-detail .detail-label{font-size:.75rem;color:#6b7280}.popup-detail .detail-value{font-size:.8125rem;font-weight:600;color:#111827}.popup-detail .detail-value.low-battery{color:#dc2626}.drone-map-wrapper .leaflet-popup-content-wrapper{border-radius:.5rem;box-shadow:0 4px 12px #00000026}.drone-map-wrapper .leaflet-popup-content{margin:.75rem;min-width:160px}@media(max-width:768px){.drone-map-wrapper{min-height:350px}.drone-map-legend{padding:.5rem .75rem;gap:.5rem;flex-wrap:wrap}.legend-items{gap:.75rem}.drone-popup{min-width:150px}}.video-feed-wrapper{height:100%;display:flex;flex-direction:column;background:#fff}.video-feed-legend{background:#fff;padding:.625rem 1rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-shrink:0}.video-feed-legend .legend-title{font-weight:600;color:#374151;font-size:.875rem}.video-feed-legend .legend-info{font-size:.75rem;color:#6b7280}.video-feed-grid{flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;padding:.75rem;overflow-y:auto;min-height:0}.video-feed-card{display:flex;flex-direction:column;background:#1f2937;border-radius:.5rem;overflow:hidden;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease;border:2px solid transparent}.video-feed-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.video-feed-card.selected{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.video-feed-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#111827}.video-feed-header .drone-name{font-size:.8125rem;font-weight:600;color:#fff}.video-feed-header .status-badge{display:flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:500;padding:.125rem .5rem;border-radius:9999px}.status-badge.active{background:#10b98133;color:#34d399}.status-badge.idle{background:#9ca3af33;color:#9ca3af}.status-badge .status-dot{width:6px;height:6px;border-radius:50%}.status-badge.active .status-dot{background-color:#10b981;animation:pulse-dot 2s ease-in-out infinite}.status-badge.idle .status-dot{background-color:#6b7280}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.video-feed-content{flex:1;display:flex;align-items:center;justify-content:center;min-height:120px}.video-placeholder{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem}.placeholder-icon{color:#4b5563;margin-bottom:.5rem}.placeholder-icon.idle{color:#6b7280}.placeholder-text{margin:0;font-size:.8125rem;font-weight:500;color:#9ca3af}.placeholder-subtext{font-size:.6875rem;color:#6b7280;margin-top:.25rem}.video-feed-footer{padding:.5rem .75rem;background:#111827;border-top:1px solid #374151}.feed-stats{display:flex;gap:.75rem}.feed-stats .stat{display:flex;align-items:center;gap:.25rem;font-size:.6875rem;color:#9ca3af}.feed-stats .stat svg{color:#6b7280}@media(max-width:1400px){.video-feed-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.video-feed-grid{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(150px,1fr))}}@media(max-width:768px){.video-feed-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto;padding:.5rem;gap:.5rem}.video-feed-card{min-height:150px}.video-feed-content{min-height:80px}.placeholder-icon{width:36px;height:36px}.placeholder-text{font-size:.75rem}}.live-dashboard{height:calc(100vh - 64px);display:flex;flex-direction:column;background-color:#f3f4f6;overflow:hidden}.live-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.live-header-left h1{font-size:1.5rem;font-weight:600;color:#111827;margin:0}.live-subtitle{margin:.25rem 0 0;font-size:.875rem;color:#6b7280}.live-subtitle .active-count{font-weight:600;color:#059669}.live-subtitle .separator{margin:0 .5rem;color:#d1d5db}.live-subtitle .total-count{color:#9ca3af}.live-header-right{display:flex;align-items:center;gap:1rem}.live-indicator{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:#059669}.live-indicator .pulse{width:8px;height:8px;background-color:#10b981;border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.live-content{flex:1;display:flex;gap:1px;background-color:#e5e7eb;overflow:hidden;min-height:0}.live-map-section{flex:0 0 60%;background:#fff;display:flex;flex-direction:column;overflow:hidden}.live-feeds-section{flex:0 0 40%;background:#fff;display:flex;flex-direction:column;overflow:hidden}@media(max-width:1200px){.live-content{flex-direction:column}.live-map-section,.live-feeds-section{flex:0 0 50%}}@media(max-width:768px){.live-dashboard{height:auto;min-height:calc(100vh - 64px);overflow:auto}.live-header{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.live-header-right{width:100%;justify-content:flex-start}.live-content{flex-direction:column;flex:none;gap:0}.live-map-section{flex:none;height:400px}.live-feeds-section{flex:none;min-height:400px}}:root{--primary-blue: #3273dc;--dark-bg: #1a1a2e;--light-bg: #f5f5f5;--card-bg: white;--text-primary: #333;--text-secondary: #666;--border-color: #e1e1e1}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary)}.app{min-height:100vh;background:var(--light-bg)}.loading,.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.spinner{width:50px;height:50px;border:4px solid var(--border-color);border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{color:#e74c3c}.error .help{color:var(--text-secondary);font-size:.9rem}.hero{background:linear-gradient(135deg,var(--primary-blue) 0%,#5a67d8 100%);color:#fff;padding:6rem 2rem;text-align:center}.hero-content{max-width:800px;margin:0 auto}.hero h1{font-size:3.5rem;font-weight:700;margin-bottom:1rem}.hero h2{font-size:1.5rem;font-weight:400;margin-bottom:1.5rem;opacity:.95}.hero p{font-size:1.1rem;margin-bottom:2rem;opacity:.9;line-height:1.6}.hero-actions{display:flex;gap:1rem;justify-content:center}.btn{padding:.875rem 2rem;font-size:1rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease}.btn-primary{background:#fff;color:var(--primary-blue)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-secondary{background:transparent;color:#fff;border:2px solid white}.btn-secondary:hover{background:#ffffff1a}.features{padding:4rem 2rem;max-width:1200px;margin:0 auto}.section-title{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:var(--text-primary)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.feature-card{background:var(--card-bg);padding:2rem;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:transform .3s ease,box-shadow .3s ease;text-align:center}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.25rem;margin-bottom:.75rem;color:var(--text-primary)}.feature-card p{color:var(--text-secondary);line-height:1.6}.stats{background:#fff;padding:3rem 2rem;display:flex;justify-content:center;gap:4rem;flex-wrap:wrap}.stat{text-align:center}.stat-value{font-size:2.5rem;font-weight:700;color:var(--primary-blue);margin-bottom:.5rem}.stat-label{font-size:1rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.button-primary{padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;text-decoration:none;border:none;border-radius:.5rem;font-weight:500;font-size:1rem;cursor:pointer;transition:background-color .2s}.button-primary:hover:not(:disabled){background-color:#2563eb}.button-primary:disabled{opacity:.5;cursor:not-allowed}.button-secondary{padding:.75rem 1.5rem;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:.5rem;font-weight:500;font-size:1rem;cursor:pointer;transition:all .2s}.button-secondary:hover{background-color:#f9fafb}.footer{background:var(--dark-bg);color:#fff;padding:2rem;text-align:center}.footer p{margin-bottom:.5rem}.footer .api-info{opacity:.7;font-size:.9rem}.footer a{color:var(--primary-blue);text-decoration:none}.footer a:hover{text-decoration:underline}@media(max-width:768px){.hero h1{font-size:2.5rem}.hero h2{font-size:1.25rem}.hero-actions{flex-direction:column}.features-grid{grid-template-columns:1fr}.stats{gap:2rem}}
