/* 引导卡片留在应用窗口内；练习正文保持原有排版。 */
.guide-launch { display:inline-flex; align-items:center; gap:7px; padding:5px 8px; border:0; border-radius:5px; color:var(--accent); background:transparent; font-size:11px; white-space:nowrap; }
.guide-launch:hover { background:var(--accent-soft); }
.guide-launch i { width:5px; height:5px; border-radius:50%; background:currentColor; }
.app-window.guide-restoring .sidebar { transition:none!important; }
.tour-layer { position:fixed; inset:0; z-index:2000; pointer-events:none; }
.tour-mask { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.tour-scrim { fill:#10182b88; }
:root[data-theme="dark"] .tour-scrim { fill:#02050ba8; }
.tour-focus { position:fixed; pointer-events:none; border:1px solid color-mix(in srgb,var(--accent) 65%,transparent); border-radius:7px; box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 9%,transparent); }
.tour-focus[data-kind="text"] { border:0; border-left:3px solid var(--accent); border-radius:0; box-shadow:none; background:color-mix(in srgb,var(--accent) 3%,transparent); }
.tour-focus[data-kind="area"] { border-color:color-mix(in srgb,var(--accent) 25%,transparent); box-shadow:none; }
.tour-card { position:fixed; width:320px; max-width:calc(100vw - 36px); overflow:auto; border-radius:11px; padding:18px; color:var(--fg); background:var(--panel); border:1px solid var(--border); box-shadow:0 14px 48px #0004; pointer-events:auto; }
.tour-meta { display:flex; align-items:center; gap:8px; margin-bottom:13px; font-size:11px; color:var(--muted); }
.tour-count { margin-left:auto; font-variant-numeric:tabular-nums; }
.tour-close { background:none; border:0; padding:3px; color:var(--muted); font-size:18px; line-height:1; border-radius:4px; }
.tour-close:hover { color:var(--fg); background:var(--hover); }
.tour-card h2 { margin:0 0 9px; font-size:18px; font-weight:650; line-height:1.4; }
.tour-description { font-size:12.5px; line-height:1.8; color:var(--fg); margin:0; }
.tour-feedback { font-size:11px; line-height:1.75; min-height:38px; color:var(--muted); margin:10px 0 0; }
.tour-feedback.done { color:var(--success); }
.tour-feedback.done::before { content:'✓ '; }
.tour-progress { display:flex; gap:5px; margin-top:12px; }
.tour-progress button { flex:1; height:12px; padding:4px 0; border:0; background:transparent; }
.tour-progress button::before { content:''; display:block; height:3px; background:var(--border); border-radius:3px; }
.tour-progress button.passed::before { background:color-mix(in srgb,var(--accent) 40%,var(--border)); }
.tour-progress button[aria-current="step"]::before { background:var(--accent); }
.tour-actions { display:flex; align-items:center; gap:8px; margin-top:12px; }
.tour-actions button { font-size:11px; min-height:31px; border-radius:6px; padding:6px 12px; }
.tour-skip { color:var(--muted); border:0; background:transparent; margin-right:auto; padding-left:0!important; }
.tour-previous { color:var(--fg); background:var(--panel); border:1px solid var(--border); }
.tour-next { color:var(--accent-fg); background:var(--accent); border:1px solid var(--accent); display:flex; align-items:center; gap:13px; }
.tour-next:hover { filter:brightness(1.08); }
.tour-more { color:var(--muted); font-size:11px; line-height:1.75; margin-top:6px; }
.tour-more summary { cursor:pointer; color:var(--accent); }
.tour-more p { margin:6px 0 0; }
/* 演练期间把布局选择压缩为小面板，正文仍可用于比较；面板开关不移动引导卡片。 */
.app-window[data-guide-step="4"] .workspace-layout-menu { right:16px; width:420px; padding:14px; }
.app-window[data-guide-step="4"] .workspace-layout-menu>p { margin-bottom:10px; }
.app-window[data-guide-step="4"] .layout-preset { padding:7px; gap:3px; }
.app-window[data-guide-step="4"] .layout-preset small { display:none; }
.app-window[data-guide-step="4"] .layout-preset strong { min-height:28px; font-size:10px; line-height:14px; }
.app-window[data-guide-step="4"] .layout-miniature { height:34px; margin-bottom:0; padding:3px; }
.app-window[data-guide-step="4"] .workspace-layout-footer { margin-top:10px; padding-top:8px; }
@media (max-width:760px) { .guide-launch span { display:none; } .tour-card { width:292px; padding:16px; } }
@media (prefers-reduced-motion:reduce) { .tour-layer * { animation:none!important; transition:none!important; } }
