@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{color:#f3f7fb;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:radial-gradient(circle at top,#163f4f99,#0000 38%),radial-gradient(circle at 100%,#0b33446b,#0000 24%),linear-gradient(#061016 0%,#07121b 48%,#04080d 100%);font-family:Space Grotesk,Trebuchet MS,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh}.app-fullscreen,.point-viewer-fullscreen{isolation:isolate;width:100%;height:100vh;min-height:100vh;position:relative}.loading-overlay{color:#dce9f4;text-align:center;background:radial-gradient(circle at top,#163f4f59,#0000 32%),linear-gradient(#03090ef0 0%,#04080cfa 100%);place-items:center;min-height:100vh;padding:2rem;display:grid}.loading-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#080e16c7;border:1px solid #ffffff1a;border-radius:1.6rem;width:min(34rem,100%);padding:1.7rem 1.6rem;box-shadow:0 20px 50px #00000047}.loading-spinner{border:3px solid #6fe6ff24;border-top-color:#6fe6ff;border-radius:50%;width:2.8rem;height:2.8rem;margin:0 auto 1rem;animation:.9s linear infinite point-spin}.loading-title{letter-spacing:.08em;margin:.45rem 0 0;font-size:clamp(1.4rem,4vw,2rem);font-weight:700}.loading-copy{color:#c8d8e7;margin:.85rem 0 0;line-height:1.6}a{color:inherit;text-decoration:none}button,a{font:inherit}.app-shell{min-height:100vh;padding:1.25rem}.topbar{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.topbar-group{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.ghost-button,.pill,.topbar-summary,.meta-card,.hero-panel,.viewer-panel,.status-card,.debug-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#080e16b3;border:1px solid #ffffff1a;box-shadow:0 20px 50px #00000047}.ghost-button,.pill{border-radius:999px;padding:.85rem 1.15rem}.ghost-button{transition:border-color .16s,background .16s,transform .16s}.ghost-button:hover{background:#0a1622e6;border-color:#78f7ff73;transform:translateY(-1px)}.pill{color:#6fe6ff;letter-spacing:.28em;text-transform:uppercase;font-size:.76rem}.topbar-summary{color:#d4deea;border-radius:1.25rem;max-width:28rem;padding:1rem 1.15rem;font-size:.95rem}.layout{grid-template-columns:minmax(0,30rem) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.hero-panel,.viewer-panel{border-radius:1.75rem;padding:1.25rem}.hero-panel{gap:1.25rem;display:grid}.hero-panel h1{margin:.4rem 0 0;font-size:clamp(2.3rem,4vw,3.7rem);line-height:.94}.lede{color:#b7c6d8;max-width:34rem;margin:1rem 0 0;line-height:1.7}.eyebrow,.meta-label{text-transform:uppercase;letter-spacing:.24em;color:#7bdfff;font-family:IBM Plex Mono,monospace;font-size:.75rem}.meta-grid{gap:.85rem;display:grid}.meta-card{border-radius:1.25rem;padding:1rem 1.1rem}.meta-card strong{color:#f6fbff;word-break:break-word;margin-top:.5rem;font-size:.95rem;line-height:1.5;display:block}.viewer-panel{min-height:calc(100vh - 6rem);position:relative;overflow:hidden}.empty-state{place-items:center;min-height:calc(100vh - 8.5rem);display:grid}.point-viewer{background:radial-gradient(circle,#28353973,#0000 42%),linear-gradient(#09131b 0%,#060b10 100%);border-radius:1.35rem;min-height:calc(100vh - 8.5rem);position:relative;overflow:hidden}.point-viewer.is-ready .viewer-overlay{display:none}.viewer-host{z-index:1;width:100%;height:100vh;position:relative}.viewer-canvas{z-index:0;width:100%;height:100%;position:relative;overflow:hidden}.viewer-sidebar-hidden{display:none}.viewer-overlay{z-index:18;background:#04090ead;place-items:center;padding:1.5rem;display:grid;position:absolute;inset:0}.status-card{border-radius:1.6rem;width:min(34rem,100%);padding:1.35rem 1.5rem}.status-message{margin:.85rem 0 0;font-size:1.05rem;line-height:1.6}.status-hint{color:#b6c6d7;margin:.8rem 0 0;line-height:1.6}.viewer-topbar{z-index:22;flex-wrap:wrap;align-items:flex-start;gap:.85rem;display:flex;position:absolute;top:1rem;left:1rem;right:6rem}.viewer-chip,.viewer-hint,.viewer-info-panel,.radial-main,.radial-action{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #ffffff1a;box-shadow:0 20px 50px #00000047}.viewer-chip,.viewer-hint{background:#080e16b8;border-radius:999px}.viewer-chip{color:#6fe6ff;letter-spacing:.28em;text-transform:uppercase;padding:.8rem 1.15rem;font-size:.76rem}.viewer-hint{color:#f3f7fb;max-width:34rem;padding:.85rem 1rem;line-height:1.45}.viewer-info-panel{z-index:22;color:#dce7f2;background:#080e16cc;border-radius:1.3rem;width:min(26rem,100% - 7rem);padding:1rem 1.1rem;position:absolute;top:4.9rem;left:1rem}.viewer-topbar.toolbar-open{top:3.8rem}.viewer-info-panel.toolbar-open{top:7.6rem}.viewer-info-panel p{margin:.35rem 0 0;line-height:1.5}.radial-menu{z-index:24;pointer-events:none;width:15rem;height:15rem;position:absolute;bottom:2rem;right:2rem}.radial-main,.radial-action{color:#fff;cursor:pointer;pointer-events:auto;border:0;place-items:center;transition:transform .18s,opacity .18s,box-shadow .18s,filter .18s;display:grid;position:absolute;bottom:0;right:0}.radial-main:hover,.radial-action:hover{filter:brightness(1.04);transform:translateY(-2px)}.radial-main:disabled,.radial-action:disabled{opacity:.45;cursor:not-allowed;transform:none}.radial-main{background:#1f2b39f5;border-radius:50%;width:4.1rem;height:4.1rem}.radial-action{opacity:0;border-radius:50%;width:2.35rem;height:2.35rem;transform:translate(0)scale(.55)}.radial-menu.is-open .radial-action{opacity:1;transform:translate(var(--tx), var(--ty)) scale(1)}.radial-action-measure{background:#8a2dff}.radial-action-center{background:#20bf55}.radial-action-cancel{background:#ff8c2b}.radial-action-info{background:#2d7dff}.radial-main svg,.radial-action svg{width:1.15rem;height:1.15rem}.radial-action.is-cat-active{filter:brightness(1.15);box-shadow:0 0 16px #8a2dff8c;opacity:1!important;border-color:#8a2dffb3!important}.toolbar-panel{z-index:30;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#10141cf5;border-bottom:1px solid #ffffff12;align-items:center;gap:1rem;padding:.65rem 1.25rem;animation:.22s cubic-bezier(.22,.68,0,1) toolbar-slide-down;display:flex;position:absolute;top:0;left:0;right:0;box-shadow:0 4px 32px #00000080,inset 0 1px #ffffff0a}@keyframes toolbar-slide-down{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.toolbar-header{flex-shrink:0;align-items:center;gap:.55rem;display:flex}.toolbar-close{color:#ccc;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;place-items:center;width:1.85rem;height:1.85rem;transition:all .15s;display:grid}.toolbar-close:hover{color:#fff;background:#ffffff1f;border-color:#ffffff40}.toolbar-cat-label{letter-spacing:.2em;text-transform:uppercase;color:#fff;font-family:IBM Plex Mono,monospace;font-size:.78rem;font-weight:700}.toolbar-cat-medir .toolbar-cat-label{color:#c78aff}.toolbar-cat-corte .toolbar-cat-label{color:#ff8c2b}.toolbar-cat-anotacao .toolbar-cat-label{color:#4da6ff}.toolbar-cat-funcoes .toolbar-cat-label{color:#20bf55}.toolbar-sep{background:#ffffff14;flex-shrink:0;width:1px;height:2rem}.toolbar-tools{-ms-overflow-style:none;scrollbar-width:none;flex:1;align-items:center;gap:.45rem;display:flex;overflow-x:auto}.toolbar-tools::-webkit-scrollbar{display:none}.toolbar-tool-btn{color:#b8c6d6;cursor:pointer;white-space:nowrap;background:#ffffff08;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:.4rem;padding:.5rem .95rem;font-family:Space Grotesk,sans-serif;font-size:.8rem;font-weight:500;transition:all .16s;display:flex}.toolbar-tool-btn:hover{color:#fff;background:#8a2dff2e;border-color:#8a2dff73;transform:translateY(-1px)}.toolbar-tool-btn.is-active{color:#fff;background:linear-gradient(135deg,#7c2dff 0%,#9b4dff 100%);border-color:#8a2dff99;box-shadow:0 2px 12px #8a2dff59}.toolbar-tool-btn svg{flex-shrink:0;width:.95rem;height:.95rem}.toolbar-actions{flex-shrink:0;align-items:center;gap:.45rem;display:flex}.toolbar-action-btn{color:#b8c6d6;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:.4rem;padding:.5rem .95rem;font-family:Space Grotesk,sans-serif;font-size:.8rem;font-weight:500;transition:all .16s;display:flex}.toolbar-action-btn:hover{color:#ff6b6b;background:#ff5a5a1a;border-color:#ff5a5a80;transform:translateY(-1px)}.toolbar-action-btn svg{flex-shrink:0;width:.85rem;height:.85rem}.ann-marker{z-index:26;pointer-events:auto;will-change:transform;position:absolute;top:0;left:0}.ann-pin{color:#fff;cursor:pointer;background:#8a2dffd9;border:2px solid #ffffff40;border-radius:50%;place-items:center;width:2.4rem;height:2.4rem;margin-top:-2.2rem;margin-left:-1.2rem;transition:all .18s;animation:2s ease-in-out infinite ann-pulse;display:grid;box-shadow:0 2px 12px #8a2dff73}.ann-pin:hover{transform:scale(1.15);box-shadow:0 4px 20px #8a2dffa6}.ann-marker.is-expanded .ann-pin{background:#8a2dff;border-color:#ffffff80;animation:none}@keyframes ann-pulse{0%,to{box-shadow:0 2px 12px #8a2dff73}50%{box-shadow:0 2px 20px #8a2dffbf,0 0 0 6px #8a2dff1f}}.ann-bubble{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:27;background:#0c121cf2;border:1px solid #ffffff1a;border-radius:1rem;width:18rem;padding:.85rem 1rem;animation:.2s ease-out ann-bubble-in;position:absolute;top:.4rem;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000080}@keyframes ann-bubble-in{0%{opacity:0;transform:translate(-50%)translateY(-6px)scale(.95)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.ann-bubble-text{color:#e8eef5;word-break:break-word;margin:0;font-size:.85rem;line-height:1.55}.ann-bubble-date{color:#7b8da0;letter-spacing:.04em;margin-top:.5rem;font-family:IBM Plex Mono,monospace;font-size:.65rem;display:block}.ann-bubble-actions{gap:.4rem;margin-top:.65rem;display:flex}.ann-btn{color:#c8d4e0;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;padding:.35rem .75rem;font-family:Space Grotesk,sans-serif;font-size:.72rem;font-weight:500;transition:all .15s}.ann-btn-edit:hover{color:#c78aff;background:#8a2dff26;border-color:#8a2dff80}.ann-btn-delete:hover{color:#ff6b6b;background:#ff50501f;border-color:#ff505080}.ann-editor-overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;place-items:center;animation:.18s ease-out ann-fade-in;display:grid;position:fixed;inset:0}@keyframes ann-fade-in{0%{opacity:0}to{opacity:1}}.ann-editor{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0c121cf7;border:1px solid #ffffff1a;border-radius:1.4rem;width:min(26rem,100% - 2rem);padding:1.35rem 1.5rem;animation:.25s cubic-bezier(.22,.68,0,1) ann-editor-in;box-shadow:0 20px 60px #0009}@keyframes ann-editor-in{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.ann-editor-title{letter-spacing:.15em;text-transform:uppercase;color:#c78aff;margin:0 0 .85rem;font-family:IBM Plex Mono,monospace;font-size:.82rem;font-weight:700}.ann-editor-input{color:#e8eef5;resize:vertical;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:.8rem;outline:none;width:100%;padding:.75rem .85rem;font-family:Space Grotesk,sans-serif;font-size:.88rem;line-height:1.5;transition:border-color .15s;display:block}.ann-editor-input:focus{border-color:#8a2dff80}.ann-editor-input::placeholder{color:#5a6a7c}.ann-editor-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.ann-btn-cancel{color:#9aa8b8;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:999px;padding:.5rem 1rem;font-family:Space Grotesk,sans-serif;font-size:.82rem;transition:all .15s}.ann-btn-cancel:hover{color:#fff;border-color:#ffffff40}.ann-btn-save{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c2dff 0%,#9b4dff 100%);border:none;border-radius:999px;padding:.5rem 1.2rem;font-family:Space Grotesk,sans-serif;font-size:.82rem;font-weight:600;transition:all .15s;box-shadow:0 2px 12px #8a2dff59}.ann-btn-save:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 18px #8a2dff80}@keyframes point-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.debug-panel{z-index:20;border-radius:1.35rem;width:min(38rem,100% - 2rem);padding:1rem 1.1rem;position:absolute;bottom:1rem;right:1rem}.debug-lines{color:#d8e6f4;max-height:20rem;margin-top:.85rem;font-family:IBM Plex Mono,monospace;font-size:.75rem;line-height:1.55;overflow:auto}.debug-lines p{margin:0}@media (width<=1100px){.layout{grid-template-columns:1fr}.viewer-panel,.point-viewer,.empty-state{min-height:42rem}.viewer-host{height:42rem}}@media (width<=720px){.app-shell{padding:.85rem}.topbar{flex-direction:column}.hero-panel,.viewer-panel{padding:1rem}.viewer-panel,.point-viewer,.empty-state{min-height:34rem}.viewer-host{height:34rem}.viewer-topbar{right:1rem}.viewer-hint,.viewer-info-panel{width:calc(100% - 2rem);max-width:none}.viewer-info-panel{top:7.5rem}.radial-menu{transform-origin:100% 100%;bottom:1rem;right:1rem;transform:scale(.92)}.debug-panel{width:100%;margin-top:.75rem;position:static}.toolbar-panel{gap:.6rem;padding:.55rem .75rem}.toolbar-tool-btn,.toolbar-action-btn{padding:.4rem .7rem;font-size:.72rem}.toolbar-cat-label{font-size:.68rem}}
