.skeleton-anatomy-root{--bg-primary:#0f0f1a;--bg-secondary:#141425;--bg-header:linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);--text-primary:#e8dcc8;--text-secondary:#e8dcc880;--text-muted:#e8dcc859;--accent:#ff6b35;--accent-light:#ffb088;--accent-glow:#ff6b3533;--accent-glow-strong:#ff6b354d;--border:#ffffff0f;--border-hover:#ff6b3533;--surface-hover:#ff6b3514;--surface-active:#ff6b3526;--scrollbar-thumb:#ffffff1a;--canvas-bg:#1a1a2e;--shadow:0 2px 12px #0000004d;background:var(--bg-primary);color:var(--text-primary);height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;transition:background .3s,color .3s;overflow:hidden}.skeleton-anatomy-root[data-theme=light]{--bg-primary:#f5f0eb;--bg-secondary:#fff;--bg-header:linear-gradient(135deg, #fff 0%, #faf7f4 100%);--text-primary:#2a2520;--text-secondary:#2a252099;--text-muted:#2a252066;--accent:#e85d2a;--accent-light:#f09060;--accent-glow:#e85d2a1f;--accent-glow-strong:#e85d2a33;--border:#00000014;--border-hover:#e85d2a4d;--surface-hover:#e85d2a0f;--surface-active:#e85d2a1f;--scrollbar-thumb:#00000026;--canvas-bg:#e8e0d8;--shadow:0 2px 12px #00000014}.skeleton-app-loading{min-height:100svh;color:var(--text-secondary);background:radial-gradient(circle at 50% 46%, var(--accent-glow), transparent 30%), var(--bg-primary);letter-spacing:.06em;place-content:center;justify-items:center;gap:12px;display:grid}.skeleton-app-loading span{font-size:2.4rem}.skeleton-app-loading strong{color:var(--text-primary);font-size:.82rem;font-weight:500}.skeleton-anatomy-root *{box-sizing:border-box;margin:0;padding:0}.skeleton-anatomy-root #root{text-align:left;border:none;flex-direction:column;width:100%;max-width:100%;height:100vh;min-height:100vh;margin:0;display:flex}.app{flex-direction:column;height:100vh;display:flex}.app-header{background:var(--bg-header);border-bottom:1px solid var(--border-hover);flex-shrink:0;align-items:center;gap:16px;padding:12px 24px;transition:background .3s;display:flex}.app-header h1{color:var(--accent);letter-spacing:2px;margin:0;font-size:20px;font-weight:700}.app-subtitle{color:var(--text-muted);font-size:13px}.header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.app-body{flex:1;display:flex;overflow:hidden}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:280px;transition:background .3s;display:flex}.sidebar-search{padding:12px;position:relative}.sidebar-search input{background:var(--surface-hover);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:8px;outline:none;padding:10px 32px 10px 12px;font-size:14px;transition:border-color .2s}.sidebar-search input:focus{border-color:var(--accent)}.sidebar-search input::placeholder{color:var(--text-muted)}.search-clear{width:44px;height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:14px;display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.search-clear:hover{color:var(--accent)}.sidebar-categories{flex-wrap:wrap;gap:6px;padding:0 12px 12px;display:flex}.category-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:#ffffff0a;border-radius:6px;padding:5px 10px;font-size:12px;transition:all .2s}[data-theme=light] .category-btn{background:#00000008}.category-btn:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.category-btn.active{background:var(--accent-glow);border-color:var(--accent);color:var(--accent)}.sidebar-bone-list{flex:1;padding:0 4px;overflow-y:auto}.sidebar-bone-list::-webkit-scrollbar{width:4px}.sidebar-bone-list::-webkit-scrollbar-track{background:0 0}.sidebar-bone-list::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:2px}.bone-list-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:8px 12px;font-size:11px}.bone-list-item{text-align:left;cursor:pointer;background:0 0;border:none;border-left:3px solid #0000;border-radius:6px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;width:calc(100% - 8px);min-height:44px;margin:1px 4px;padding:8px 12px;font-family:inherit;transition:background .15s,border-color .15s;display:flex}.bone-list-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.bone-list-item:hover{background:var(--surface-hover)}.bone-list-item.selected{background:var(--surface-active);border-left-color:var(--accent)}.bone-list-name-zh{color:var(--text-primary);font-size:14px;font-weight:500}.bone-list-name-en{color:var(--text-muted);margin-top:2px;font-size:11px}.bone-list-empty{text-align:center;color:var(--text-muted);padding:24px 12px;font-size:13px}.canvas-container{flex:1;position:relative}.info-panel{background:var(--bg-secondary);border-left:1px solid var(--border);flex-shrink:0;width:320px;transition:background .3s;overflow-y:auto}.info-panel.collapsed{border-left:none;width:0;overflow:hidden}.info-panel::-webkit-scrollbar{width:4px}.info-panel::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:2px}.info-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:40px;display:flex}.info-icon{opacity:.6;margin-bottom:16px;font-size:48px}.info-placeholder h3{color:var(--text-secondary);margin-bottom:12px;font-size:16px;font-weight:500}.info-placeholder p{color:var(--text-muted);font-size:12px;line-height:1.8}.info-header{padding:20px 20px 0}.info-category-badge{background:var(--accent-glow);border:1px solid var(--accent-glow-strong);color:var(--accent);border-radius:12px;padding:4px 12px;font-size:12px;display:inline-block}.info-bone-name-zh{color:var(--text-primary);padding:16px 20px 4px;font-size:28px;font-weight:700}.info-bone-name-en{color:var(--text-secondary);border-bottom:1px solid var(--border);padding:0 20px 20px;font-size:16px}.info-section{border-bottom:1px solid var(--border);padding:16px 20px}.info-section h4{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:8px;font-size:11px;font-weight:600}.info-section p{color:var(--text-primary);opacity:.8;font-size:14px;line-height:1.7}.info-desc-en{font-style:italic;color:var(--text-secondary)!important;opacity:1!important;font-size:13px!important}.info-id{background:var(--accent-glow);border-radius:4px;padding:4px 8px;font-family:SF Mono,Fira Code,monospace;display:inline-block;color:var(--accent)!important;opacity:1!important;font-size:12px!important}.theme-toggle{border:1px solid var(--border);background:var(--surface-hover);width:36px;height:36px;color:var(--text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:flex}.theme-toggle:hover{border-color:var(--accent);background:var(--accent-glow)}.quiz-toggle-btn{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;padding:6px 16px;font-size:13px;transition:all .2s}.quiz-toggle-btn:hover{background:var(--accent-glow)}.quiz-toggle-btn.active{background:var(--accent);color:#fff;cursor:default}.quiz-panel{background:var(--bg-secondary);border:1px solid var(--border-hover);width:360px;box-shadow:var(--shadow);z-index:10;border-radius:12px;position:absolute;top:16px;left:50%;overflow:hidden;transform:translate(-50%)}.quiz-header{border-bottom:1px solid var(--border);align-items:center;padding:12px 16px;display:flex}.quiz-header h3{color:var(--accent);font-size:15px;font-weight:600}.quiz-score{color:var(--text-secondary);margin-left:auto;margin-right:12px;font-size:14px;font-weight:500}.quiz-close{min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:inline-flex}.quiz-close:hover{color:var(--accent)}.quiz-question{padding:16px}.quiz-question p{color:var(--text-primary);margin-bottom:8px;font-size:14px}.quiz-hint-area{margin-top:8px}.quiz-hint-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:12px;transition:all .2s}.quiz-hint-btn:hover{border-color:var(--accent);color:var(--accent)}.quiz-hint{background:var(--surface-hover);color:var(--text-secondary);border-radius:6px;margin-top:8px;padding:10px;font-size:12px;line-height:1.8}.quiz-input-area{gap:8px;padding:0 16px 16px;display:flex}.quiz-input-area input{background:var(--surface-hover);border:1px solid var(--border);color:var(--text-primary);border-radius:8px;outline:none;flex:1;padding:8px 12px;font-size:14px;transition:border-color .2s}.quiz-input-area input:focus{border-color:var(--accent)}.quiz-input-area input::placeholder{color:var(--text-muted)}.quiz-submit{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;transition:opacity .2s}.quiz-submit:hover{opacity:.85}.quiz-result{text-align:center;padding:12px 16px 16px}.quiz-result p{margin-bottom:10px;font-size:14px}.quiz-result.correct p{color:#4caf50}.quiz-result.wrong p{color:#ef5350}.quiz-next{background:var(--accent-glow);border:1px solid var(--accent);color:var(--accent);cursor:pointer;border-radius:8px;padding:6px 16px;font-size:13px;transition:all .2s}.quiz-next:hover{background:var(--accent);color:#fff}.mobile-overlay{appearance:none;border:none;padding:0;display:none}.drawer-close,.mobile-toggle{display:none}@keyframes skeleton-anatomy-pulse{0%,to{opacity:.4;width:30%}50%{opacity:1;width:80%}}@media (max-width:1024px){.sidebar{width:220px}.info-panel{width:260px}.info-bone-name-zh{font-size:22px}}@media (max-width:768px){.app-header h1{letter-spacing:1px;font-size:16px}.app-subtitle{display:none}.mobile-toggle{border:1px solid var(--border);background:var(--surface-hover);width:44px;height:44px;color:var(--text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:18px;display:flex}.drawer-close{z-index:1;border:1px solid var(--border);background:var(--bg-secondary);width:44px;height:44px;color:var(--text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:16px;display:flex;position:absolute;top:8px;right:8px}.drawer-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.category-btn{min-height:44px;padding:8px 12px}.sidebar{z-index:100;width:280px;box-shadow:var(--shadow);transition:transform .3s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.info-panel{z-index:100;border-left:none;border-top:1px solid var(--border);width:100%;max-height:50vh;box-shadow:var(--shadow);border-radius:16px 16px 0 0;transition:transform .3s;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.info-panel.open{transform:translateY(0)}.info-panel.collapsed{width:100%;overflow-y:auto}.sidebar-search,.info-header,.info-placeholder{padding-top:60px}.mobile-overlay{z-index:99;opacity:0;pointer-events:none;background:#00000080;transition:opacity .3s;display:block;position:fixed;inset:0}.mobile-overlay.visible{opacity:1;pointer-events:auto}.quiz-panel{width:calc(100% - 32px);top:8px}}@media (max-width:480px){.app-header{gap:8px;padding:10px 12px}.app-header h1{font-size:14px}.quiz-toggle-btn{padding:5px 10px;font-size:12px}}@media (prefers-reduced-motion:reduce){.skeleton-anatomy-root *,.skeleton-anatomy-root :before,.skeleton-anatomy-root :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-motion:reduce) and (max-width:768px){.sidebar,.info-panel{display:none;transform:none}.sidebar.open{display:flex}.info-panel.open{display:block}}