:root{--mindmap-bg-light: #f8fafc;--mindmap-bg-dark: #0f172a;--mindmap-card: rgba(255, 255, 255, .86);--mindmap-card-dark: rgba(15, 23, 42, .86);--mindmap-border: rgba(148, 163, 184, .35);--mindmap-border-dark: rgba(148, 163, 184, .18);--mindmap-highlight: #f97316;--mindmap-text: #0f172a;--mindmap-text-dark: #f8fafc;--mindmap-radius: 1.5rem}.mindmap-page{display:flex;flex-direction:column;gap:3rem;padding-bottom:4rem}.mindmap-hero{background:linear-gradient(135deg,#38bdf829,#6366f114);padding:clamp(2.5rem,4vw,3.5rem) 0}.mindmap-hero__content{width:min(1100px,90%);margin:0 auto;display:flex;flex-direction:column;gap:1.5rem;color:var(--mindmap-text)}.mindmap-hero__content h1{font-size:clamp(2.25rem,4vw,3rem);font-weight:700;margin:0}.mindmap-hero__content p{font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.6;max-width:820px;margin:0}.mindmap-hero__other{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center;font-size:.95rem}.mindmap-hero__other ul{display:flex;gap:.75rem;list-style:none;padding:0;margin:0;flex-wrap:wrap}.mindmap-runtime{width:min(1200px,92%);margin:0 auto}.mindmap-app{background:var(--mindmap-card);border-radius:calc(var(--mindmap-radius) + 1rem);border:1px solid var(--mindmap-border);box-shadow:0 24px 60px #0f172a29;padding:clamp(1.5rem,3vw,2rem);display:flex;flex-direction:column;gap:1.5rem}.mindmap-app.dark{background:var(--mindmap-card-dark);border-color:var(--mindmap-border-dark);color:var(--mindmap-text-dark)}.mindmap-app.presentation-mode .mindmap-controls,.mindmap-app.presentation-mode .detail-panel,.mindmap-app.presentation-mode .mindmap-hero__other{display:none}.mindmap-controls{display:flex;flex-direction:column;gap:1rem}.control-row{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center}.tabs{display:flex;flex-wrap:wrap;gap:.5rem}.tab{appearance:none;border:1px solid rgba(148,163,184,.24);background:#ffffffe6;padding:.65rem 1rem;border-radius:999px;font-weight:600;cursor:pointer;transition:all .16s ease}.mindmap-app.dark .tab{background:#1e293bcc;color:inherit;border-color:#94a3b838}.tab:hover,.tab:focus-visible{border-color:#3b82f699;box-shadow:0 0 0 3px #3b82f626}.tab.active{background:#3b82f626;border-color:#2563eb66;color:#1e40af}.mindmap-app.dark .tab.active{background:#2563eb59;border-color:#bfdbfe73;color:#e0f2fe}.actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.actions button,.actions label{border:1px solid rgba(148,163,184,.24);background:#ffffffd9;padding:.55rem .9rem;border-radius:.75rem;font-size:.9rem;cursor:pointer;transition:all .16s ease;display:inline-flex;align-items:center;gap:.35rem}.actions button:hover,.actions label:hover,.actions button:focus-visible,.actions label:focus-visible{border-color:#3b82f699;box-shadow:0 0 0 3px #3b82f626}.actions label{position:relative;overflow:hidden}.actions input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.search-row{display:flex;gap:.75rem;align-items:center}.search-row input[type=search]{flex:1;border-radius:.75rem;border:1px solid rgba(148,163,184,.35);padding:.6rem .9rem;font-size:1rem}.search-results{display:grid;gap:.5rem;max-height:220px;overflow:auto;border-radius:.75rem;border:1px solid rgba(148,163,184,.2);padding:.75rem;background:#0f172a0a}.search-result{width:100%;text-align:left;border:none;background:#ffffffe6;border-radius:.75rem;padding:.6rem .75rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem .75rem;align-items:baseline}.search-result .result-name{font-weight:600}.search-result .result-path{grid-column:1 / -1;font-size:.85rem;color:#0f172ab3}.search-result .result-score{font-variant-numeric:tabular-nums;font-size:.8rem;color:#1e40afcc}.mindmap-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:1.5rem}.canvas-panel{display:grid;gap:1rem}.mindmap-canvas{position:relative;background:linear-gradient(135deg,#ffffffe6,#f1f5f999);border-radius:1.25rem;border:1px solid rgba(148,163,184,.16);min-height:520px;overflow:hidden}.mindmap-canvas svg{width:100%;height:100%;display:block;touch-action:none}.mindmap-minimap{align-self:flex-end;padding:.5rem;border-radius:.75rem;border:1px solid rgba(148,163,184,.25);background:#fffc;width:160px;height:160px}.mindmap-minimap svg{width:100%;height:100%}.breadcrumbs{font-size:.9rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;padding:.75rem 1rem;background:#ffffffe6;border-radius:.75rem;border:1px solid rgba(148,163,184,.2)}.mindmap-app.dark .breadcrumbs{background:#1e293bcc;border-color:#94a3b826}.breadcrumb-items{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem}.breadcrumb-segment{display:inline-flex;align-items:center}.breadcrumb-link{appearance:none;border:none;background:none;padding:.2rem .4rem;margin:-.2rem 0;border-radius:4px;font-size:inherit;color:#1e40afd9;cursor:pointer;transition:all .15s ease}.mindmap-app.dark .breadcrumb-link{color:#93c5fde6}.breadcrumb-link:hover,.breadcrumb-link:focus-visible{background:#3b82f61f;color:#2563eb}.mindmap-app.dark .breadcrumb-link:hover,.mindmap-app.dark .breadcrumb-link:focus-visible{background:#3b82f640;color:#bfdbfe}.breadcrumb-current{font-weight:600;color:#0f172af2;padding:.2rem .4rem}.mindmap-app.dark .breadcrumb-current{color:#f8fafcf2}.breadcrumb-separator{color:#94a3b899;user-select:none}.breadcrumb-copy{appearance:none;border:1px solid rgba(148,163,184,.25);background:#ffffffe6;padding:.4rem .75rem;border-radius:6px;font-size:.8rem;font-weight:500;color:#475569e6;cursor:pointer;transition:all .15s ease;white-space:nowrap}.mindmap-app.dark .breadcrumb-copy{background:#334155cc;border-color:#94a3b833;color:#cbd5e1e6}.breadcrumb-copy:hover,.breadcrumb-copy:focus-visible{border-color:#3b82f680;color:#2563eb}.mindmap-app.dark .breadcrumb-copy:hover,.mindmap-app.dark .breadcrumb-copy:focus-visible{border-color:#60a5fa80;color:#93c5fd}.breadcrumb-copy.copied{background:#10b98126;border-color:#10b98166;color:#059669}.mindmap-app.dark .breadcrumb-copy.copied{background:#10b98133;border-color:#34d39966;color:#34d399}.detail-panel{background:linear-gradient(180deg,#fffffff0,#ecfcffcc);border-radius:1.25rem;padding:1.25rem;border:1px solid rgba(148,163,184,.2);display:grid;gap:.75rem;align-content:start}.detail-panel h2{margin:0;font-size:1.1rem}.detail-panel .tooltip-content{max-height:240px;overflow:auto;padding-right:.35rem;line-height:1.5}.detail-panel textarea{min-height:120px;border-radius:.75rem;border:1px solid rgba(148,163,184,.3);padding:.6rem .75rem;resize:vertical;font-family:inherit}.detail-panel details{border:1px solid rgba(148,163,184,.2);border-radius:.75rem;padding:.5rem .75rem;background:#ffffffd9}.detail-panel pre{white-space:pre-wrap;font-size:.9rem;margin:.5rem 0 0}.help-overlay{position:fixed;inset:0;background:#0f172a8c;backdrop-filter:blur(6px);display:grid;place-items:center;z-index:40}.help-content{background:var(--mindmap-card);padding:2rem;border-radius:1rem;width:min(480px,92%);display:grid;gap:1rem;border:1px solid var(--mindmap-border)}.help-content h2{margin:0}.help-content ul{margin:0;padding-left:1.25rem;display:grid;gap:.6rem}.help-content button{justify-self:flex-end;border-radius:.75rem;border:1px solid rgba(148,163,184,.24);padding:.5rem .9rem;cursor:pointer}.mindmap-app.dark .mindmap-canvas{background:radial-gradient(circle at top,#1e293bd9,#0f172af0);border-color:#0f172ab3}.mindmap-app.dark .detail-panel{background:linear-gradient(180deg,#111827eb,#111827db);color:var(--mindmap-text-dark);border-color:#3b82f62e}.mindmap-app.dark .search-results{background:#0f172a8c}.mindmap-app.dark .search-result{background:#1e293bd1;color:var(--mindmap-text-dark)}.mindmap-app.dark .search-result .result-path{color:#e2e8f0b8}.mindmap-app.dark .actions button,.mindmap-app.dark .actions label{background:#1e293bd9;color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.mobile-menu-toggle{display:none;appearance:none;border:1px solid rgba(148,163,184,.3);background:#ffffffe6;padding:.75rem;border-radius:.75rem;cursor:pointer;min-width:44px;min-height:44px;align-items:center;justify-content:center;font-size:1.25rem;transition:all .16s ease}.mindmap-app.dark .mobile-menu-toggle{background:#1e293bd9;color:inherit;border-color:#94a3b838}.mobile-menu-toggle:hover,.mobile-menu-toggle:focus-visible{border-color:#3b82f699;box-shadow:0 0 0 3px #3b82f626}.hamburger-icon{display:flex;flex-direction:column;gap:4px;width:20px}.hamburger-icon span{display:block;height:2px;background:currentColor;border-radius:1px;transition:transform .2s ease}.mobile-menu-toggle.open .hamburger-icon span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.mobile-menu-toggle.open .hamburger-icon span:nth-child(2){opacity:0}.mobile-menu-toggle.open .hamburger-icon span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}.mobile-actions-menu{display:none;position:fixed;inset:0;background:#0f172a99;backdrop-filter:blur(8px);z-index:50;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.mobile-actions-menu.open{opacity:1;visibility:visible}.mobile-actions-content{position:absolute;top:0;right:0;bottom:0;width:min(320px,85vw);background:var(--mindmap-card);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;transform:translate(100%);transition:transform .3s cubic-bezier(.32,.72,0,1)}.mobile-actions-menu.open .mobile-actions-content{transform:translate(0)}.mindmap-app.dark .mobile-actions-content{background:var(--mindmap-card-dark)}.mobile-actions-content h3{margin:0;font-size:1rem;color:#64748be6;text-transform:uppercase;letter-spacing:.05em}.mobile-actions-content button,.mobile-actions-content label{width:100%;min-height:48px;padding:.75rem 1rem;border-radius:.75rem;font-size:1rem;text-align:left;display:flex;align-items:center;gap:.75rem}.mobile-menu-close{appearance:none;border:none;background:none;padding:.5rem;margin:-.5rem -.5rem 0 auto;font-size:1.5rem;cursor:pointer;color:inherit;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.mobile-fab{display:none;position:fixed;bottom:20px;right:20px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;box-shadow:0 4px 20px #3b82f666;cursor:pointer;z-index:30;align-items:center;justify-content:center;font-size:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.mobile-fab:hover,.mobile-fab:focus-visible{transform:scale(1.08);box-shadow:0 6px 28px #3b82f680}.mobile-fab:active{transform:scale(.95)}.detail-panel-sheet{display:none}.sheet-handle{display:none;width:40px;height:4px;background:#94a3b866;border-radius:2px;margin:0 auto 1rem;cursor:grab;touch-action:pan-y;padding:12px 20px;margin:-12px auto calc(1rem - 12px)}.mindmap-app.dark .sheet-handle{background:#94a3b84d}.tabs-wrapper{display:contents}.gesture-hint{display:none;position:absolute;bottom:1rem;left:50%;transform:translate(-50%);background:#0f172ad9;color:#fff;padding:.75rem 1.25rem;border-radius:2rem;font-size:.875rem;white-space:nowrap;z-index:20;opacity:0;transition:opacity .3s ease;pointer-events:none}.gesture-hint.visible{opacity:1}.mindmap-app.dark .gesture-hint{background:#334155f2}.zoom-indicator{display:none;position:absolute;top:1rem;left:50%;transform:translate(-50%);background:#0f172ad9;color:#fff;padding:.5rem 1rem;border-radius:1rem;font-size:.875rem;font-variant-numeric:tabular-nums;z-index:20;opacity:0;transition:opacity .2s ease;pointer-events:none}.zoom-indicator.visible{opacity:1}.mindmap-app.dark .zoom-indicator{background:#334155f2}.minimap-toggle{display:none;position:absolute;bottom:.5rem;right:.5rem;appearance:none;border:1px solid rgba(148,163,184,.3);background:#ffffffe6;padding:.5rem;border-radius:.5rem;font-size:.75rem;cursor:pointer;min-width:44px;min-height:44px;z-index:15}.mindmap-app.dark .minimap-toggle{background:#1e293bd9;color:inherit}@media(max-width:980px){.mindmap-layout{grid-template-columns:1fr}.mindmap-minimap{order:-1;justify-self:flex-end}.detail-panel{order:2}.tab{min-height:44px;padding:.75rem 1.25rem}.actions button,.actions label{min-height:44px;padding:.65rem 1rem}.search-row input[type=search]{min-height:44px;padding:.75rem 1rem}.search-row button{min-height:44px;min-width:44px}}@media(max-width:768px){.mindmap-page{gap:1.5rem;padding-bottom:5rem}.mindmap-hero{padding:1.5rem 0}.mindmap-hero__content{gap:1rem}.mindmap-runtime{width:96%}.mindmap-app{padding:1rem;gap:1rem;border-radius:1.25rem}.mobile-menu-toggle{display:flex}.actions{display:none}.mobile-actions-menu{display:block}.mobile-fab{display:flex}.tabs-wrapper{display:block;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -1rem;padding:0 1rem;touch-action:pan-x;flex:1;min-width:0}.tabs-wrapper::-webkit-scrollbar{display:none}.tabs{flex-wrap:nowrap;gap:.75rem;padding-bottom:.25rem}.tab{scroll-snap-align:start;flex-shrink:0;white-space:nowrap}.control-row{flex-wrap:nowrap;gap:.75rem}.mindmap-canvas{min-height:calc(100dvh - 280px);min-height:calc(100vh - 280px);touch-action:manipulation}.detail-panel{position:fixed;bottom:0;left:0;right:0;max-height:60vh;border-radius:1.5rem 1.5rem 0 0;padding:.75rem 1.25rem 1.5rem;transform:translateY(calc(100% - 60px));transition:transform .3s cubic-bezier(.32,.72,0,1);z-index:25;box-shadow:0 -8px 40px #0f172a26;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.detail-panel.expanded{transform:translateY(0)}.detail-panel h2{cursor:pointer;user-select:none;padding:.5rem 0;margin:-.5rem 0 .5rem}.sheet-handle,.gesture-hint,.zoom-indicator{display:block}.mindmap-minimap{position:absolute;top:.75rem;right:.75rem;width:100px;height:100px;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:10}.mindmap-minimap.visible{opacity:1;visibility:visible}.minimap-toggle{display:flex;align-items:center;justify-content:center}.canvas-panel{position:relative}.search-results{position:absolute;left:1rem;right:1rem;max-height:50vh;z-index:20;box-shadow:0 8px 32px #0f172a33}.search-result{min-height:48px}.breadcrumbs{font-size:.8rem;padding:.6rem .75rem;gap:.4rem .75rem}.breadcrumb-copy{padding:.35rem .6rem;font-size:.75rem}.breadcrumb-items{max-width:calc(100% - 100px);overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.breadcrumb-items::-webkit-scrollbar{display:none}.breadcrumb-segment{flex-shrink:0}}@media(max-width:480px){.mindmap-page{gap:1rem}.mindmap-hero{padding:1rem 0}.mindmap-hero__content h1{font-size:1.75rem}.mindmap-hero__content p{font-size:.95rem}.mindmap-runtime{width:100%}.mindmap-app{padding:.75rem;border-radius:0;border-left:none;border-right:none}.mindmap-canvas{min-height:calc(100dvh - 240px);min-height:calc(100vh - 240px);border-radius:1rem}.tabs{gap:.5rem}.tab{padding:.6rem .9rem;font-size:.9rem}.search-row{flex-direction:column;gap:.5rem}.search-row input[type=search]{width:100%}.search-row button{align-self:flex-end}.detail-panel{max-height:70vh;padding:.5rem 1rem 1.25rem}.detail-panel h2{font-size:1rem}.detail-panel textarea{min-height:80px}.mobile-fab{bottom:16px;right:16px;width:52px;height:52px}.help-content{padding:1.5rem;width:95%;max-height:85vh;overflow-y:auto}.help-content ul{gap:.75rem}.mindmap-minimap{width:80px;height:80px}}@media(max-width:768px)and (orientation:landscape){.mindmap-canvas{min-height:calc(100dvh - 140px);min-height:calc(100vh - 140px)}.detail-panel{max-height:50vh;transform:translateY(calc(100% - 48px))}.mindmap-hero{display:none}}@media(hover:none)and (pointer:coarse){.tab,.actions button,.actions label,.search-result,.breadcrumb-link,.breadcrumb-copy,.help-content button{min-height:44px;min-width:44px}.tab:hover,.actions button:hover,.actions label:hover,.search-result:hover{transform:none}.tab:active,.actions button:active,.actions label:active,.search-result:active{opacity:.7;transform:scale(.98)}.mobile-fab:active{transform:scale(.9)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.detail-panel,.mobile-actions-content,.mobile-actions-menu{transition:none!important}}
