@charset "UTF-8";@font-face{font-family:Pixel Operator;src:url(/assets/PixelOperatorMono-Bold-Bfijsedc.ttf) format("truetype");font-display:swap}.collapsible-wrapper{width:100%;max-width:960px;margin:0 auto;font-family:Pixel Operator}.collapsible-header{cursor:pointer;background:#8b5e3c;color:#fff;padding:1rem;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-family:"Press Start 2P",monospace;border:3px solid #38210f;border-radius:.5rem;transition:background-color .2s ease}.collapsible-header:hover{background-color:#38210f}.collapsible-header .label{flex-grow:1;text-align:center}.about-maker{text-align:center}.about-maker h1{font-size:2.25rem;font-family:"Press Start 2P",monospace;color:#38210f;padding-bottom:1.5rem}@media only screen and (max-width: 767px){.about-maker h1{font-size:1.75rem}}.about-maker h2{font-size:1.125rem;color:#38210f;padding-bottom:1.5rem;font-family:"Press Start 2P",monospace}.about-maker .about-me{font-size:1.5rem;font-family:Pixel Operator;font-weight:600;line-height:1.2;margin-bottom:1rem}.support-wrapper{margin-top:3rem}.support-wrapper .support{margin-top:3rem;max-width:700px;margin:0 auto}.support-wrapper .support h2{font-size:1.125rem;font-family:"Press Start 2P",monospace;color:#38210f;margin-bottom:1rem}.support-wrapper .support .support-grid{display:flex;flex-direction:column;flex-wrap:wrap;justify-content:center;align-content:center;gap:1rem}@media only screen and (max-width: 767px){.support-wrapper .support .support-grid{flex-direction:column}}.support-wrapper .support .support-grid .support-button{display:flex;align-items:center;gap:.5rem;text-decoration:none;font-weight:700;padding:.625rem 1rem;background-color:#fef68a;border:2px solid #8b5e3c;color:#38210f;border-radius:.1875rem;transition:background-color .2s ease,transform .1s ease}@media only screen and (max-width: 767px){.support-wrapper .support .support-grid .support-button{justify-content:center}}.support-wrapper .support .support-grid .support-button:hover{background-color:#c1e1c1;transform:translateY(-2px)}.support-wrapper .support .support-grid .support-button svg{stroke:#38210f}.support-wrapper .support .support-grid .support-button span{text-align:center;font-family:"Press Start 2P",monospace;width:100%}.support-wrapper .support .support-grid .upi-support{position:relative}.support-wrapper .support .support-grid .upi-icon{width:3.125rem;height:1.5rem}.support-wrapper .support .support-grid .paypal-icon{width:1.25rem;height:1.25rem}.support-wrapper .copy-popup{position:absolute;bottom:1rem;right:1rem;padding:.5rem .75rem;background:#222;color:#fff;font-family:"Press Start 2P",monospace;font-size:.875rem;border-radius:.1875rem;opacity:.95;pointer-events:none;box-shadow:0 .125rem .5rem #00000026;animation:fadeOut 1.2s forwards}@keyframes fadeOut{0%{opacity:0;transform:translateY(.625rem)}10%{opacity:1;transform:translateY(0)}90%{opacity:1}to{opacity:0;transform:translateY(-.375rem)}}.support-wrapper .scanner-link{cursor:pointer;font-family:"Press Start 2P",monospace;font-size:.875rem;font-weight:700;text-align:center}.qr-section{text-align:center;margin:2.5rem 0}.qr-section p{font-size:1.125rem;color:#000;margin-bottom:1.25rem}.qr-section .qr-image{width:11.25rem;height:auto;border:.125rem solid #38210f;border-radius:.5rem;box-shadow:0 .25rem .625rem #0000001a}@media only screen and (max-width: 767px){.qr-section .qr-image{width:8.75rem}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000bf;z-index:9999;display:flex;justify-content:center;align-items:center}.qr-modal{position:relative;background:#fff;padding:1.5rem;border-radius:1rem;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.qr-modal .qr-image{max-width:100%;max-height:80vh;border-radius:.5rem}.qr-modal .close-btn{position:absolute;top:.5rem;right:.5rem;background:none;border:none;padding:.25rem;cursor:pointer}.nav-tabs{position:absolute;top:0;left:0;display:flex;gap:8px;padding:8px 12px;background-color:transparent;z-index:100}.tab{background-color:#000;color:#fff;font-family:"Press Start 2P",monospace;font-size:12px;padding:6px 10px;border-radius:6px 6px 0 0;box-shadow:2px 2px 4px #00000080;text-decoration:none;transition:background .2s}.tab:hover{background-color:#333}.alert-modal{background:#f9e7c1;font-family:"Press Start 2P",monospace}.alert-modal .alert-title{font-size:1.125rem;margin-bottom:1rem}.alert-modal .alert-message{font-size:.875rem;color:#333;margin-bottom:1.5rem}.alert-modal .modal-actions{display:flex;justify-content:space-between;gap:1rem}.alert-modal .modal-actions .btn{min-width:6.25rem}#app{width:100svw;height:100svh;background-color:#f9e7c1;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center}.btn{font-family:"Press Start 2P",monospace;border:2px solid #38210f;box-shadow:2px 2px #38210f;padding:.5rem 1rem;background:#fff;cursor:pointer;transition:all .1s ease;border-radius:4px}.btn:hover{transform:translateY(1px);box-shadow:1px 1px #38210f}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#38210f;border-radius:3px}::-webkit-scrollbar-track{background:transparent}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:9999;display:flex;align-items:center;justify-content:center;font-family:"Press Start 2P",monospace;overflow:hidden}.modal-box{background:#f9e7c1;border:4px double #8b5e3c;padding:2rem;border-radius:1rem;box-shadow:0 0 12px #00000080;width:90%;max-width:720px;max-height:80%;overflow:auto;font-size:.875rem;color:#38210f}@media only screen and (max-width: 767px){.modal-box{margin:0 2rem;padding:1.5rem 2rem}}.auth-box{width:100%;height:100svh;display:flex;flex-direction:column;justify-content:space-between;align-items:center;align-self:stretch;padding:0}.auth-box input{width:100%;height:2.5rem;margin:.75rem 0;padding:0 .75rem;box-sizing:border-box;font-size:.875rem;font-family:"Press Start 2P",monospace;color:#38210f;background:#fbfbfb;border:2px solid #a57048;border-radius:.1875rem}@media only screen and (max-width: 767px){.auth-box input{font-size:.75rem}}.auth-box .auth-form{width:100%}.auth-box .auth-form h1{font-size:2rem;font-weight:700;text-align:center;color:#38210f;margin-bottom:1rem}@media only screen and (max-width: 767px){.auth-box .auth-form h1{margin:2.375rem 0}}.auth-box .auth-form .input-wrapper{position:relative;width:100%;margin-bottom:.75rem}.auth-box .auth-form .input-wrapper .toggle-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);cursor:pointer;color:#555}.auth-box .auth-form .input-wrapper .toggle-icon svg{width:1.5rem;height:1.5rem}.auth-box .auth-form .error{color:#e74c3c;font-size:.75rem;margin-top:.75rem}.auth-box .auth-form .btn-group{width:100%;display:flex;gap:.625rem;margin-bottom:1rem}.auth-box .auth-form .btn-group .login-btn{width:100%;background-color:#8b5e3c;color:#fff;padding:.625rem 1rem;font-size:.875rem;border-radius:.5rem}.auth-box .auth-form .btn-group .login-btn:hover{background-color:#38210f}.auth-box .auth-form .btn-group .register-btn{width:100%;background-color:#ffe177;color:#38210f;padding:.625rem 1rem;font-size:.875rem;border-radius:.5rem}.auth-box .auth-form .btn-group .register-btn:hover{background-color:#fef68a}.auth-box .auth-form .switch-link{text-align:center;padding-bottom:.75rem;cursor:pointer}.auth-box .oauth-buttons{width:100%}.auth-box .oauth-buttons button{width:100%;margin:.75rem 0;padding:.625rem;font-weight:700;font-family:"Press Start 2P",monospace;font-size:.875rem;border-radius:.1875rem;border:none;cursor:pointer}.auth-box .oauth-buttons .google{background:#4285f4;color:#fff}.auth-box .oauth-buttons .github{background:#333;color:#fff}.divider{margin:1rem 0;font-size:.75rem;color:#999}.canvas{width:100%;height:100%;min-width:100svw;min-height:100svh;position:relative;overflow:hidden;background-color:#fbfbfb;cursor:grab}.canvas:active{cursor:grabbing}.canvas .zoom-wrapper{position:absolute;top:0;left:0}.canvas .auto-pan-indicator{position:fixed;width:1.25rem;height:1.25rem;background-color:#555;border:2px solid #ffffff;border-radius:50%;pointer-events:none;z-index:99;transform:translate(-50%,-50%)}body.auto-panning .canvas{cursor:crosshair!important}.canvas-map-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background-color:#000000b3;font-family:"Press Start 2P",monospace;display:flex;align-items:center;justify-content:center;overflow:hidden}.canvas-map-overlay .canvas-map{max-width:90vw;max-height:90vh;background-color:#f9e7c1;padding:2rem;border:3px solid #8b5e3c;border-radius:1rem;box-shadow:0 0 12px #00000080;overflow:auto}.canvas-map-overlay .canvas-map .canvas-map-canvas{position:relative}.canvas-map-overlay .canvas-map .canvas-map-canvas .canvas-map-connections{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.canvas-map-overlay .canvas-map .canvas-map-canvas .canvas-map-connections line{stroke:#a57048;stroke-width:2px;opacity:.75}.canvas-map-overlay .canvas-map .canvas-map-canvas .canvas-map-note{position:absolute;background-color:#fef68a;border:2px solid #8b5e3c;border-radius:.1875rem;opacity:1}.cloud-sync-banner{position:fixed;top:1.25rem;right:1.25rem;z-index:9999;display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;border-radius:.5rem;background:transparent;font-family:"Press Start 2P",monospace;font-size:.75rem;white-space:nowrap;pointer-events:none;transition:background .2s,color .2s}@media only screen and (max-width: 767px){.cloud-sync-banner{background-color:#fbfbfb}}.cloud-sync-banner.error,.cloud-sync-banner.error .icon{color:#e74c3c}.cloud-sync-banner .icon{width:1.25rem;height:1.25rem}@media only screen and (max-width: 767px){.cloud-sync-banner .icon{width:1.5rem;height:1.5rem}}@media only screen and (max-width: 767px){.cloud-sync-banner span{display:none}}.connections-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:auto}.connections-layer text{paint-order:stroke;stroke:#fff;font-weight:600;pointer-events:auto}.inline-label-input{font-size:.875rem;padding:.125rem .375rem;border:1px solid #cccccc;border-radius:.1875rem;background:#fff;outline:none;width:7.5rem;max-width:12.5rem;position:fixed}.connection-mode-banner{position:fixed;top:1.25rem;left:50%;transform:translate(-50%);max-width:max-content;z-index:9999;background-color:transparent;padding:.375rem .625rem}@media only screen and (max-width: 767px){.connection-mode-banner{background-color:#fbfbfb}}.connection-mode-banner .icon{width:1.25rem;height:1.25rem}@media only screen and (max-width: 767px){.connection-mode-banner .icon{width:1.5rem;height:1.5rem}}@media only screen and (max-width: 767px){.connection-mode-banner span{display:none}}.feedback-section{padding:1.5rem 1rem;background-color:#f9e7c1;text-align:center;font-family:Pixel Operator}@media only screen and (max-width: 767px){.feedback-section{padding:1.5rem .75rem}}.feedback-section .feedback-title{font-size:1.5rem;margin-bottom:.75rem;color:#38210f}.feedback-section .feedback-form{display:flex;flex-direction:column;align-items:center;max-width:600px;margin:0 auto}.feedback-section .feedback-form .feedback-textarea{width:100%;font-family:Pixel Operator;padding:.75rem;border:1px solid #cccccc;border-radius:.5rem;resize:vertical;margin-bottom:.75rem;background-color:#fff;color:#000;font-size:1.25rem}.feedback-section .feedback-form .feedback-textarea:focus{outline:none;border-color:#8b5e3c}.feedback-section .feedback-form .feedback-submit{background-color:#8b5e3c;color:#fff;cursor:pointer;margin-top:.75rem;font-size:1.125rem}.feedback-section .feedback-form .feedback-submit:hover{background-color:#38210f}.feedback-section .feedback-form .feedback-success{font-size:1.25rem}.home-wrapper{display:flex;justify-content:center;align-items:center;width:100svw;background:#f9e7c1;font-family:"Press Start 2P",monospace;overflow:auto}@media only screen and (max-width: 767px){.home-wrapper{overflow:hidden}}.home-wrapper .home-box{background:#fff;width:90%;max-width:600px;min-height:90svh;max-height:90svh;display:flex;flex-direction:column;padding:2rem 2rem 3.125rem;border:4px solid #38210f;border-radius:8px;box-shadow:0 4px #38210f;overflow:hidden}@media only screen and (max-width: 767px){.home-wrapper .home-box{min-height:99.5svh;max-height:99.5svh;padding-top:0;padding-bottom:0;border-width:5px;border-radius:0}}.home-wrapper .home-box .home-title{font-size:2rem;color:#38210f;margin-bottom:2rem;text-align:center}.home-wrapper .home-box .home-actions{display:flex;justify-content:space-between;margin-bottom:2rem;padding:0 .5rem}.home-wrapper .home-box .status-text{text-align:center;font-size:1rem;margin:1rem 0}.home-wrapper .home-box .canvas-list{list-style:none;padding:0 .5rem;margin:0;overflow-y:auto;flex:1 1 auto;min-height:0}.home-wrapper .home-box .canvas-list .canvas-card{background:#f9e7c1;border:2px solid #38210f;border-radius:6px;padding:1rem;margin-bottom:1rem;display:flex;justify-content:space-between;flex-wrap:wrap}.home-wrapper .home-box .canvas-list .canvas-card .canvas-meta{width:100%}.home-wrapper .home-box .canvas-list .canvas-card .canvas-meta .canvas-name{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.home-wrapper .home-box .canvas-list .canvas-card .canvas-meta .canvas-name h2{margin:0;font-size:1.125rem;color:#38210f}.home-wrapper .home-box .canvas-list .canvas-card .canvas-meta .canvas-name .edit-icon{width:1.5rem;height:1.5rem;cursor:pointer;color:#38210f;transition:color .2s ease}.home-wrapper .home-box .canvas-list .canvas-card .canvas-meta .canvas-name .edit-icon:hover{color:#e74c3c}.home-wrapper .home-box .canvas-list .canvas-card .canvas-meta h2{margin:0;font-size:1.125rem;color:#38210f}.home-wrapper .home-box .canvas-list .canvas-card .canvas-meta p{font-size:.875rem;color:#555}.home-wrapper .home-box .canvas-list .canvas-card .canvas-actions{display:flex;justify-content:space-between;gap:16px;width:100%;margin-top:.5rem}.home-wrapper .home-box .canvas-list .canvas-card .canvas-actions .open-btn{background:#c1e1c1}.primary{background:#ffe177}.secondary{background:#ccc}.danger{background:#faa}.small{padding:.3125rem .8125rem;font-size:.875rem}.new-canvas{width:60%;max-width:720px;max-height:80%;background:#f9e7c1;padding:2rem;border:4px double #8b5e3c;border-radius:1rem;box-shadow:0 0 12px #00000080;font-size:.875rem;color:#38210f;text-align:center;overflow:auto}@media only screen and (max-width: 767px){.new-canvas{width:75%;margin:0 2rem;padding:1.5rem 2rem}}.new-canvas .input{width:100%;height:2.5rem;margin:.75rem 0;padding:0 .75rem;border-radius:.1875rem;border:2px solid #a57048;background:#fbfbfb;color:#38210f;font-family:"Press Start 2P",monospace;font-size:.875rem}@media only screen and (max-width: 767px){.new-canvas .input{font-size:.75rem}}.modal-actions{display:flex;justify-content:space-between;gap:1rem}.modal-box .modal-title{text-align:center;margin-bottom:1.5rem;color:#4b2e13}.modal-box .modal-title .modal-title-inner{display:inline-flex;align-items:center;justify-content:center;gap:0}.modal-box .modal-title .modal-title-icon{width:1.4rem;height:1.4rem;flex-shrink:0;margin-right:2rem}@media only screen and (max-width: 767px){.modal-box .modal-title .modal-title-icon{font-size:1rem;width:2rem;height:2rem;margin-right:0}}.modal-box .instructions-grid{display:flex;flex-direction:column;gap:1.125rem;margin-top:1rem}@media only screen and (max-width: 767px){.modal-box .instructions-grid{gap:1.25rem}}.modal-box .instructions-grid .instruction-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:1.5rem;line-height:1.5}@media only screen and (max-width: 767px){.modal-box .instructions-grid .instruction-row{gap:1.875rem}}.modal-box .instructions-grid .instruction-row .instruction-input{display:flex;align-items:center;gap:1rem;font-family:"Press Start 2P",monospace}@media only screen and (max-width: 767px){.modal-box .instructions-grid .instruction-row .instruction-input{gap:.625rem;font-size:.75rem}}.modal-box .instructions-grid .instruction-row .instruction-input .lucide-icon{width:1.5rem;height:1.5rem;flex-shrink:0;color:#000}@media only screen and (max-width: 767px){.modal-box .instructions-grid .instruction-row .instruction-input .lucide-icon{width:2rem;height:2rem}}.modal-box .instructions-grid .instruction-row .instruction-action{font-weight:700;font-family:"Press Start 2P",monospace}@media only screen and (max-width: 767px){.modal-box .instructions-grid .instruction-row .instruction-action{font-weight:400;font-size:.75rem}}.modal-box .modal-footer{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;flex-wrap:wrap;gap:.5rem}@media only screen and (max-width: 767px){.modal-box .modal-footer{gap:.9375rem}}.modal-box .modal-footer .checkbox-wrapper{display:flex;align-items:center;gap:.5rem;font-size:.875rem}@media only screen and (max-width: 767px){.modal-box .modal-footer .checkbox-wrapper{font-size:.75rem}}.modal-box .modal-footer .checkbox-wrapper input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.5rem;height:1.5rem;background-color:#f9e7c1;border:2px solid #38210f;border-radius:.1875rem;cursor:pointer;position:relative}@media only screen and (max-width: 767px){.modal-box .modal-footer .checkbox-wrapper input[type=checkbox]{width:2rem;height:2rem}}.modal-box .modal-footer .checkbox-wrapper input[type=checkbox]:checked:after{content:"✔";position:absolute;top:-.25rem;left:.25rem;font-size:1.25rem;color:#38210f}@media only screen and (max-width: 767px){.modal-box .modal-footer .checkbox-wrapper input[type=checkbox]:checked:after{font-size:1.375rem}}.modal-box .modal-footer .checkbox-wrapper input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 2px #38210f66}.modal-box .modal-footer .modal-close{background:#8b5e3c;color:#fff;font-weight:700;border:none;border-radius:.5rem;padding:.5rem 1rem;cursor:pointer;font-family:inherit}@media only screen and (max-width: 767px){.modal-box .modal-footer .modal-close{width:100%}}.modal-box .modal-footer .modal-close:hover{background:#a57048}.landing{width:100svw;height:100svh;display:flex;justify-content:center;overflow-y:auto;background:#f9e7c1;font-family:"Press Start 2P",monospace}@media only screen and (max-width: 767px){.landing{padding:0}}.landing .content-wrapper{width:100%;max-width:960px;padding:2rem;position:relative}@media only screen and (max-width: 767px){.landing .content-wrapper{padding:0}}.landing .content-wrapper .content{border:3px solid #38210f;min-height:100svh;border-radius:.5rem;box-shadow:0 .25rem .75rem #0000004d}@media only screen and (max-width: 767px){.landing .content-wrapper .content{padding:1rem;border-width:5px;border-radius:0}}.landing .content-wrapper .content section{margin-bottom:3rem;text-align:center}.landing .content-wrapper .content section h2,.landing .content-wrapper .content section h3{font-size:1.125rem;margin-bottom:1rem;color:#38210f}.landing .content-wrapper .content section p{font-size:.875rem;line-height:1.6;max-width:700px;margin:0 auto}.landing .content-wrapper .content section .about-me{font-family:Pixel Operator;font-size:1.5rem;line-height:normal;font-weight:600}.landing .content-wrapper .content section.hero .brand-title{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;justify-content:center}.landing .content-wrapper .content section.hero .brand-title .logo{width:2rem;height:2rem;transform:translateY(.3125rem)}@media only screen and (max-width: 767px){.landing .content-wrapper .content section.hero .brand-title .logo{width:1.75rem;height:1.75rem;transform:translateY(0)}}.landing .content-wrapper .content section.hero .brand-title h1{font-size:2.25rem;font-family:"Press Start 2P",monospace;color:#38210f}@media only screen and (max-width: 767px){.landing .content-wrapper .content section.hero .brand-title h1{font-size:1.75rem}}.landing .content-wrapper .content section.hero .subtitle{font-size:1.5rem;color:#555;margin-bottom:1.5rem;font-family:Pixel Operator}.landing .content-wrapper .content section.hero .btn.primary{background:#8b5e3c;color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;font-size:.875rem;text-decoration:none;display:inline-block}.landing .content-wrapper .content section.use-cases .feature-grid,.landing .content-wrapper .content section.features .feature-grid,.landing .content-wrapper .content section.future .feature-grid{list-style:none;padding:0;display:grid;gap:1rem;grid-template-columns:1fr;max-width:700px;margin:0 auto}.landing .content-wrapper .content section.use-cases .feature-grid .feature,.landing .content-wrapper .content section.features .feature-grid .feature,.landing .content-wrapper .content section.future .feature-grid .feature{color:#38210f;padding:1rem;border-radius:.5rem;font-size:.875rem;text-align:left}.landing .content-wrapper .content section.use-cases .feature-grid .feature.btn,.landing .content-wrapper .content section.features .feature-grid .feature.btn,.landing .content-wrapper .content section.future .feature-grid .feature.btn{cursor:default}.landing .content-wrapper .content section.use-cases .feature{background-color:#ffe177}.landing .content-wrapper .content section.features .feature{background-color:#bcbcff}.landing .content-wrapper .content section.future .feature{background-color:#b1f4e3}.landing .content-wrapper .bottom-tab-anchor{position:relative;width:100%;overflow:visible}.landing .content-wrapper .bottom-tab-anchor .bottom-tab{position:absolute;top:0;padding:.5rem 1rem;background:#000;color:#fff;font-family:"Press Start 2P",monospace;font-size:.875rem;text-decoration:none;border-bottom-left-radius:8px;border-bottom-right-radius:8px;box-shadow:0 -2px 6px #0000004d;z-index:1;transition:background .2s}.landing .content-wrapper .bottom-tab-anchor .bottom-tab:hover{background:#333;box-shadow:0}.scroll-spacer{height:5.625rem;flex-shrink:0}@media only screen and (max-width: 767px){.scroll-spacer{height:0}}.minimap{position:absolute;top:1rem;left:1rem;z-index:10;overflow:hidden;background:#fff;border:1px solid #38210f;transition:width .2s ease,height .2s ease}.minimap .minimap-canvas{position:relative}.minimap .minimap-canvas .minimap-border{border:1px dashed rgba(0,123,255,.7);background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(0,123,255,.1) 4px,rgba(0,123,255,.1) 8px);z-index:1}.minimap .minimap-canvas .minimap-connections{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.minimap .minimap-canvas .minimap-connections line{stroke:#555;stroke-width:1}.minimap .minimap-canvas .minimap-note{position:absolute}.minimap .minimap-canvas .minimap-viewport{position:absolute;transition:all .05s linear}.floating-nav{position:fixed;bottom:1.25rem;left:1.25rem;z-index:9999;display:flex;align-items:center;gap:.5rem;background:transparent;padding:.5rem;border-radius:.5rem;cursor:pointer;transition:background .2s}@media only screen and (max-width: 767px){.floating-nav{background:#fbfbfb}}@media only screen and (min-width: 1440px){.floating-nav:hover{background:#8b5e3c}}.floating-nav .logo{width:1.25rem;height:1.25rem}@media only screen and (max-width: 767px){.floating-nav .logo{width:2rem;height:2rem}}.floating-nav .project-name{font-family:"Press Start 2P",monospace;font-size:.75rem;color:#38210f;white-space:nowrap}@media only screen and (max-width: 767px){.floating-nav .project-name{display:none}}.nav-tabs{position:absolute;top:0;left:0;display:flex;gap:8px;background-color:transparent;z-index:9999;width:100%;max-width:960px;padding:.375rem .75rem .375rem 2.8125rem}@media only screen and (max-width: 767px){.nav-tabs{max-width:90svw;position:relative;padding-left:.5rem;top:11px;align-items:flex-start;justify-content:center;vertical-align:middle}}.tab{background-color:#38210f;color:#fbfbfb;font-family:"Press Start 2P",monospace;font-size:1rem;padding:.3125rem .625rem;border-radius:6px 6px 0 0;box-shadow:0 0 4px #00000080;text-decoration:none;transition:background .2s}.tab.active{background-color:#f9e7c1;color:#38210f;border:3px solid #38210f;border-bottom-width:0;box-shadow:none}@media only screen and (max-width: 767px){.tab{font-size:.75rem;height:1.875rem;text-align:center}}.tab:hover{background-color:#a57048}.postit{position:absolute;width:25rem;height:21.875rem;min-width:4.375rem;min-height:4.0625rem;background-color:#fef68a;border:1px solid #cccccc;border-radius:.375rem;box-shadow:0 .25rem .5rem #00000026;display:flex;flex-direction:column;overflow:hidden;touch-action:auto}.postit.connectHighlight{box-shadow:0 0 .625rem #007bff}.postit.disconnectHighlight{box-shadow:0 0 .625rem #e74c3c}.postit .postit-header{display:flex;align-items:center;justify-content:space-between;height:1.75rem;width:100%;background-color:#0000000d;border-bottom:1px solid #cccccc;flex-shrink:0;cursor:move;position:relative}.postit .postit-header .link-btn,.postit .postit-header .close-btn{background:transparent;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.postit .postit-header .link-btn svg,.postit .postit-header .close-btn svg{stroke:#999;opacity:.8;transition:stroke .2s ease,opacity .2s ease}.postit .postit-header .link-btn:focus,.postit .postit-header .close-btn:focus{outline:none}.postit .postit-header .link-btn{padding-left:.375rem}.postit .postit-header .link-btn:hover svg{stroke:#007bff;opacity:1}.postit .postit-header .close-btn{padding-right:.375rem}.postit .postit-header .close-btn:hover svg{stroke:#e74c3c;opacity:1}.postit .editor-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;cursor:text}.postit .postit-text-editor{display:flex;flex-direction:column;flex-grow:1}.postit .ql-toolbar{order:2;border:none!important;border-top:1px solid #cccccc!important;background-color:#00000005;padding:.375rem .5rem!important;display:none}.postit .ql-toolbar .ql-picker.ql-expanded .ql-picker-options{top:auto;bottom:100%;margin-bottom:4px;box-shadow:0 -3px 8px #0000001a}.postit .ql-container{order:1;flex:1;border:none!important;font-size:1rem;font-family:inherit;color:#333;overflow-y:auto}.postit.editor-active .ql-toolbar{display:block!important}.postit .ql-editor{padding:.5rem!important;overflow-wrap:break-word;box-sizing:border-box;height:100%;-webkit-user-select:text!important;user-select:text!important}.postit .resize-handle{position:absolute;z-index:10;background:transparent}.postit .resize-handle.top,.postit .resize-handle.bottom{height:.375rem;left:0;right:0;cursor:ns-resize}.postit .resize-handle.top{top:0}.postit .resize-handle.bottom{bottom:0}.postit .resize-handle.left,.postit .resize-handle.right{width:.375rem;top:0;bottom:0;cursor:ew-resize}.postit .resize-handle.left{left:0}.postit .resize-handle.right{right:0}.postit .resize-handle.topleft,.postit .resize-handle.topright,.postit .resize-handle.bottomleft,.postit .resize-handle.bottomright{width:.75rem;height:.75rem}.postit .resize-handle.topleft{top:0;left:0;cursor:nwse-resize}.postit .resize-handle.topright{top:0;right:0;cursor:nesw-resize}.postit .resize-handle.bottomleft{bottom:0;left:0;cursor:nesw-resize}.postit .resize-handle.bottomright{bottom:0;right:0;cursor:nwse-resize}.postit .connect-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10000;background:transparent;cursor:pointer}body{margin:0;padding:0;background-color:#fbfbfb;font-family:Inter,sans-serif}.tool-panel-wrapper{position:absolute;bottom:1.25rem;right:1.25rem;z-index:9999;display:flex;flex-direction:column;align-items:flex-end}.tool-panel-wrapper .tool-panel{display:flex;flex-direction:column;gap:.5rem;background:#f9e7c1;border:.125rem solid #8b5e3c;padding:.75rem;border-radius:.5rem;margin-bottom:.5rem;box-shadow:0 0 10px #0003}.tool-panel-wrapper .tool-panel .btn.howto-btn{background-color:#bcbcff}.tool-panel-wrapper .tool-panel .btn.sync-btn{background-color:#ffe177}.tool-panel-wrapper .tool-panel .btn.uploaded-btn{background-color:#4caf50}.tool-panel-wrapper .tool-panel .btn.map-btn{background-color:#b1f4e3}.tool-panel-wrapper .tool-panel .btn.clear-board-btn{background-color:#faa}.tool-panel-wrapper .tool-toggle{margin:.25rem;background-color:transparent}@media only screen and (max-width: 767px){.tool-panel-wrapper .tool-toggle{background-color:#fbfbfb}}
