/* In-app manual panel (resources/views/livewire/manual-panel.blade.php). Static and cacheable; loaded once through a HEAD_END render hook in each panel provider. */
.manual-root { display: flex; align-items: center; }
.manual-panel, .manual-panel * { box-sizing: border-box; }
.manual-trigger, .manual-close {
    display: inline-flex; align-items: center; justify-content: center; flex: none;
    width: 2.25rem; height: 2.25rem; border: 0; border-radius: .5rem; background: none; cursor: pointer;
    color: var(--gray-500);
}
.manual-trigger:hover, .manual-close:hover { background: var(--gray-100); color: var(--gray-700); }
.manual-trigger:focus-visible, .manual-close:focus-visible, .manual-link:focus-visible, .manual-back:focus-visible { outline: 2px solid var(--primary-500); outline-offset: 2px; }
.dark .manual-trigger, .dark .manual-close { color: var(--gray-400); }
.dark .manual-trigger:hover, .dark .manual-close:hover { background: rgb(255 255 255 / .08); color: var(--gray-200); }
.manual-trigger-icon, .manual-close-icon { width: 1.5rem; height: 1.5rem; }
.manual-backdrop { position: fixed; inset: 0; z-index: 60; background: rgb(0 0 0 / .45); }
.manual-panel {
    position: fixed; top: 0; bottom: 0; right: 0; z-index: 61;
    width: min(30rem, 100vw); display: flex; flex-direction: column;
    background: #fff; color: var(--gray-900);
    box-shadow: -8px 0 32px rgb(0 0 0 / .18);
}
.dark .manual-panel { background: var(--gray-900); color: var(--gray-100); }
.manual-head { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .75rem 1rem; border-bottom: 1px solid var(--gray-200); }
.dark .manual-head, .dark .manual-search { border-color: rgb(255 255 255 / .1); }
.manual-head h2 { font-size: 1.05rem; font-weight: 600; margin: 0; }
.manual-search { padding: .75rem 1rem; border-bottom: 1px solid var(--gray-200); }
.manual-search input {
    width: 100%; padding: .5rem .75rem; font-size: .9rem; border-radius: .5rem;
    border: 1px solid var(--gray-300); background: #fff; color: inherit;
}
.dark .manual-search input { background: rgb(255 255 255 / .05); border-color: rgb(255 255 255 / .2); }
.manual-search input:focus { outline: 2px solid var(--primary-500); outline-offset: 0; }
.manual-body { flex: 1; overflow-y: auto; padding: 1rem; font-size: .9rem; line-height: 1.55; overflow-wrap: anywhere; }
.manual-small { display: block; font-size: .75rem; color: var(--gray-600); }
.dark .manual-small { color: var(--gray-400); }
.manual-count, .manual-notice { margin: 0 0 .85rem; }
.manual-module { margin: 0 0 .35rem; font-size: .72rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--gray-600); }
.dark .manual-module { color: var(--gray-400); }
.manual-list { list-style: none; margin: 0 0 1.25rem; padding: 0; }
.manual-link {
    display: block; width: 100%; text-align: left; background: none; border: 0; cursor: pointer;
    padding: .4rem .5rem; border-radius: .4rem; color: inherit; font: inherit;
}
.manual-link:hover { background: var(--gray-100); }
.dark .manual-link:hover { background: rgb(255 255 255 / .07); }
.manual-link strong { display: block; font-weight: 600; color: var(--primary-700); }
.dark .manual-link strong { color: var(--primary-400); }
.manual-back { background: none; border: 0; cursor: pointer; padding: 0; margin-bottom: .75rem; font: inherit; font-size: .82rem; color: var(--primary-700); }
.dark .manual-back { color: var(--primary-400); }
.manual-back:hover { text-decoration: underline; }
.manual-text h1, .manual-text h2 { font-size: 1.2rem; font-weight: 700; margin: 0 0 .75rem; }
.manual-text h3 { font-size: .95rem; font-weight: 700; margin: 1.25rem 0 .4rem; }
.manual-text h4 { font-size: .9rem; font-weight: 600; margin: 1rem 0 .3rem; }
.manual-text p { margin: 0 0 .7rem; }
.manual-text ul, .manual-text ol { margin: 0 0 .8rem; padding-left: 1.25rem; }
.manual-text ul { list-style: disc; }
.manual-text ol { list-style: decimal; }
.manual-text li { margin-bottom: .25rem; }
.manual-text code { font-size: .82em; padding: .05rem .3rem; border-radius: .25rem; background: var(--gray-100); }
.dark .manual-text code { background: rgb(255 255 255 / .1); }
.manual-text a { color: var(--primary-700); text-decoration: underline; }
.dark .manual-text a { color: var(--primary-400); }
.manual-text blockquote { margin: 0 0 .8rem; padding: .1rem .8rem; border-left: 3px solid var(--primary-500); color: var(--gray-600); }
.dark .manual-text blockquote { color: var(--gray-300); }
.manual-text table { width: 100%; border-collapse: collapse; margin: 0 0 .9rem; font-size: .84rem; display: block; overflow-x: auto; }
.manual-text th, .manual-text td { border: 1px solid var(--gray-200); padding: .3rem .5rem; text-align: left; vertical-align: top; }
.dark .manual-text th, .dark .manual-text td { border-color: rgb(255 255 255 / .15); }
.manual-text th { font-weight: 600; background: var(--gray-50); }
.dark .manual-text th { background: rgb(255 255 255 / .06); }
.manual-empty { color: var(--gray-600); }
.dark .manual-empty { color: var(--gray-400); }
html.manual-open { overflow: hidden; }
