.lhp-note-fab{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:99998;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:none;border-radius:9999px;background:#4f46e5;color:#fff;box-shadow:0 10px 24px -8px rgba(79,70,229,.55);cursor:pointer;transition:transform .15s ease,background .2s ease}.lhp-note-fab:hover{background:#4338ca;transform:translateY(-1px)}.lhp-note-fab:active{transform:translateY(0)}.lhp-note-fab:focus-visible{outline:3px solid rgba(79,70,229,.35);outline-offset:2px}.lhp-note-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:9999px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}.lhp-note-inline{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#6366f1;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.lhp-note-inline:hover{border-color:#a5b4fc;background:#eef2ff;color:#4338ca}.lhp-note-inline.has-notes{border-color:#c7d2fe;background:#eef2ff}.lhp-note-inline .lhp-note-badge{top:-6px;right:-6px}.lhp-note-slot-bottombar{display:contents}.lhp-note-inline.lhp-note-inline--bottombar{width:36px;height:36px;border-radius:6px;flex:none}.lhphuc-voca-dashboard-bottombar.is-album-dock .lhp-note-inline.lhp-note-inline--bottombar{width:40px;height:40px;border-radius:12px;box-shadow:none}.lhphuc-voca-dashboard-bottombar.is-album-dock .lhp-note-inline.lhp-note-inline--bottombar svg{width:18px;height:18px}.lhp-note-inline__label{display:none;font-size:14px;font-weight:600;white-space:nowrap}@media (min-width:640px){.lhp-note-inline.lhp-note-inline--bottombar,.lhphuc-voca-dashboard-bottombar.is-album-dock .lhp-note-inline.lhp-note-inline--bottombar{width:auto;padding:0 14px;gap:8px}.lhp-note-inline--bottombar .lhp-note-inline__label{display:inline}}.lhp-note-overlay{position:fixed;inset:0;z-index:100001;background:rgba(15,23,42,.42);backdrop-filter:blur(3px);display:flex;justify-content:flex-end}.lhp-note-panel{width:420px;max-width:94vw;height:100%;background:#fff;display:flex;flex-direction:column;box-shadow:-20px 0 40px -16px rgba(15,23,42,.3);animation:lhp-note-slide-in .22s ease}@keyframes lhp-note-slide-in{0%{transform:translateX(24px);opacity:.6}to{transform:translateX(0);opacity:1}}.lhp-note-panel-head{padding:16px 20px;border-bottom:1px solid #f1f5f9;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.lhp-note-panel-title{margin:0;font-size:15px;font-weight:700;color:#0f172a}.lhp-note-panel-sub{margin-top:2px;font-size:12px;color:#64748b}.lhp-note-panel-body{flex:1;min-height:0;overflow:hidden;padding:14px 18px;display:flex;flex-direction:column;gap:12px}.lhp-note-saved{flex:0 1 auto;max-height:42%;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:2px}.lhp-note-compose{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:8px}.lhp-note-compose-tag{align-self:flex-start;padding:2px 10px;border-radius:9999px;background:#eef2ff;color:#4338ca;font-size:11px;font-weight:700}.lhp-note-item{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;background:#fff}.lhp-note-item.is-pinned{border-color:#fbcfe8;background:#fff7fb}.lhp-note-item-text{font-size:13px;line-height:1.55;color:#334155;white-space:pre-wrap}.lhp-note-editable mark,.lhp-note-item-text mark,.lhp-note-rich mark{background:#fde68a;color:inherit;border-radius:3px;padding:0 1px}.lhp-note-editable b,.lhp-note-editable strong,.lhp-note-item-text b,.lhp-note-item-text strong,.lhp-note-rich b,.lhp-note-rich strong{font-weight:700;color:#0f172a}.lhp-note-editable ol,.lhp-note-editable ul,.lhp-note-item-text ol,.lhp-note-item-text ul,.lhp-note-rich ol,.lhp-note-rich ul{margin:4px 0;padding-left:20px;list-style:revert}.lhp-note-editable li,.lhp-note-item-text li,.lhp-note-rich li{margin:2px 0}.lhp-note-item.is-editing{border-color:#a5b4fc;background:#f5f3ff}.lhp-note-item-actions{margin-top:8px;display:flex;gap:8px}.lhp-note-item-actions button{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#64748b;background:none;border:none;cursor:pointer}.lhp-note-item-actions button:hover{color:#4338ca}.lhp-note-item-actions button.is-danger:hover{color:#dc2626}.lhp-note-editor{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid #d1d5db;border-radius:14px;overflow:hidden;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.lhp-note-editor:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.12)}.lhp-note-toolbar{display:flex;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid #eef2f6;background:#f8fafc}.lhp-note-toolbar button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:#475569;cursor:pointer;transition:background .15s ease,color .15s ease}.lhp-note-toolbar button:hover{background:#e0e7ff;color:#4338ca}.lhp-note-toolbar button:active{background:#c7d2fe}.lhp-note-toolbar-sep{width:1px;align-self:stretch;margin:4px;background:#e2e8f0}.lhp-note-editable{flex:1;min-height:160px;overflow-y:auto;padding:12px 14px;outline:none;font-size:14px;line-height:1.6;color:#1f2937;white-space:pre-wrap;word-break:break-word}.lhp-note-editable:empty:before{content:attr(data-placeholder);color:#94a3b8;pointer-events:none}.lhp-note-panel-foot{border-top:1px solid #f1f5f9;padding:12px 18px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}.lhp-note-foot-actions{display:flex;align-items:center;gap:8px}.lhp-note-openall{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#4338ca;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .2s ease,background .2s ease}.lhp-note-openall:hover{border-color:#a5b4fc;background:#eef2ff}.lhp-note-cancel{padding:9px 14px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#64748b;font-weight:600;font-size:13px;cursor:pointer}.lhp-note-cancel:hover{border-color:#cbd5e1;color:#334155}.lhp-note-save{align-self:flex-end;padding:9px 18px;border:none;border-radius:10px;background:#4f46e5;color:#fff;font-weight:600;font-size:13px;cursor:pointer}.lhp-note-save:hover{background:#4338ca}.lhp-note-save:disabled{opacity:.6;cursor:default}.note-anchor-pulse{animation:note-anchor-pulse 1.2s ease-in-out 2;border-radius:16px}@keyframes note-anchor-pulse{0%,to{box-shadow:0 0 0 0 rgba(99,102,241,0)}40%{box-shadow:0 0 0 4px rgba(99,102,241,.35)}}[data-css-theme=dark] .lhp-note-fab{background:#2563eb;box-shadow:0 10px 24px -8px rgba(37,99,235,.55)}[data-css-theme=dark] .lhp-note-fab:hover{background:#1d4ed8}[data-css-theme=dark] .lhp-note-fab:focus-visible{outline-color:rgba(96,165,250,.45)}[data-css-theme=dark] .lhp-note-inline{border-color:#273349;background:#131c2e;color:#60a5fa}[data-css-theme=dark] .lhp-note-inline:hover{border-color:#3b82f6;background:rgba(37,99,235,.18);color:#93c5fd}[data-css-theme=dark] .lhp-note-inline.has-notes{border-color:rgba(96,165,250,.4);background:rgba(37,99,235,.18)}[data-css-theme=dark] .lhp-note-overlay{background:rgba(2,6,23,.62)}[data-css-theme=dark] .lhp-note-panel{background:#131c2e;box-shadow:-20px 0 40px -16px rgba(0,0,0,.55)}[data-css-theme=dark] .lhp-note-panel-head{border-bottom-color:#1e2a3d}[data-css-theme=dark] .lhp-note-panel-title{color:#f8fafc}[data-css-theme=dark] .lhp-note-panel-head .lhp-report-close-btn,[data-css-theme=dark] .lhp-note-panel-sub{color:#94a3b8}[data-css-theme=dark] .lhp-note-compose-tag{background:rgba(37,99,235,.22);color:#93c5fd}[data-css-theme=dark] .lhp-note-item{border-color:#273349;background:#1b2538}[data-css-theme=dark] .lhp-note-item.is-pinned{border-color:rgba(244,114,182,.4);background:rgba(244,114,182,.12)}[data-css-theme=dark] .lhp-note-item.is-editing{border-color:#3b82f6;background:rgba(37,99,235,.16)}[data-css-theme=dark] .lhp-note-item-text{color:#cbd5e1}[data-css-theme=dark] .lhp-note-editable mark,[data-css-theme=dark] .lhp-note-item-text mark,[data-css-theme=dark] .lhp-note-rich mark{color:#451a03}[data-css-theme=dark] .lhp-note-editable b,[data-css-theme=dark] .lhp-note-editable strong,[data-css-theme=dark] .lhp-note-item-text b,[data-css-theme=dark] .lhp-note-item-text strong,[data-css-theme=dark] .lhp-note-rich b,[data-css-theme=dark] .lhp-note-rich strong{color:#f8fafc}[data-css-theme=dark] .lhp-note-item-actions button{color:#94a3b8}[data-css-theme=dark] .lhp-note-item-actions button:hover{color:#93c5fd}[data-css-theme=dark] .lhp-note-item-actions button.is-danger:hover{color:#f87171}[data-css-theme=dark] .lhp-note-editor{border-color:#3a4860;background:#0f1626}[data-css-theme=dark] .lhp-note-editor:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.22)}[data-css-theme=dark] .lhp-note-toolbar{border-bottom-color:#1e2a3d;background:#1b2538}[data-css-theme=dark] .lhp-note-toolbar button{color:#cbd5e1}[data-css-theme=dark] .lhp-note-toolbar button:hover{background:rgba(37,99,235,.22);color:#93c5fd}[data-css-theme=dark] .lhp-note-toolbar button:active{background:rgba(37,99,235,.34)}[data-css-theme=dark] .lhp-note-toolbar-sep{background:#273349}[data-css-theme=dark] .lhp-note-editable{color:#e2e8f0}[data-css-theme=dark] .lhp-note-editable:empty:before{color:#64748b}[data-css-theme=dark] .lhp-note-panel-foot{border-top-color:#1e2a3d}[data-css-theme=dark] .lhp-note-openall{border-color:#273349;background:#1b2538;color:#93c5fd}[data-css-theme=dark] .lhp-note-openall:hover{border-color:#3b82f6;background:rgba(37,99,235,.18)}[data-css-theme=dark] .lhp-note-cancel{border-color:#273349;background:#1b2538;color:#94a3b8}[data-css-theme=dark] .lhp-note-cancel:hover{border-color:#3a4860;color:#e2e8f0}[data-css-theme=dark] .lhp-note-save{background:#2563eb}[data-css-theme=dark] .lhp-note-save:hover{background:#1d4ed8}:root{--hapio-annot-yellow-bg:rgba(253,224,71,0.55);--hapio-annot-green-bg:rgba(134,239,172,0.55);--hapio-annot-blue-bg:rgba(147,197,253,0.5);--hapio-annot-pink-bg:rgba(249,168,212,0.5);--hapio-annot-yellow-dot:#eab308;--hapio-annot-green-dot:#22c55e;--hapio-annot-blue-dot:#3b82f6;--hapio-annot-pink-dot:#ec4899;--hapio-annot-noted-ink:rgba(15,23,42,0.6);--hapio-annot-surface:#ffffff;--hapio-annot-border:#e2e8f0;--hapio-annot-text:#0f172a;--hapio-annot-text-muted:#64748b;--hapio-annot-quote-bg:#f1f5f9;--hapio-annot-shadow:0 12px 32px rgba(15,23,42,0.18);--hapio-annot-danger:#dc2626;--hapio-annot-danger-soft:#fee2e2;--hapio-annot-primary:#4f46e5;--hapio-annot-primary-ink:#ffffff}[data-css-theme=dark],html[data-pub-theme=dark]{--hapio-annot-yellow-bg:rgba(202,138,4,0.45);--hapio-annot-green-bg:rgba(22,163,74,0.45);--hapio-annot-blue-bg:rgba(37,99,235,0.45);--hapio-annot-pink-bg:rgba(219,39,119,0.42);--hapio-annot-noted-ink:rgba(226,232,240,0.7);--hapio-annot-surface:#0f172a;--hapio-annot-border:#334155;--hapio-annot-text:#e2e8f0;--hapio-annot-text-muted:#94a3b8;--hapio-annot-quote-bg:#1e293b;--hapio-annot-shadow:0 12px 32px rgba(0,0,0,0.5)}::highlight(hapio-annot-yellow){background-color:var(--hapio-annot-yellow-bg)}::highlight(hapio-annot-green){background-color:var(--hapio-annot-green-bg)}::highlight(hapio-annot-blue){background-color:var(--hapio-annot-blue-bg)}::highlight(hapio-annot-pink){background-color:var(--hapio-annot-pink-bg)}::highlight(hapio-annot-noted){-webkit-text-decoration:underline dotted 2px var(--hapio-annot-noted-ink);text-decoration:underline dotted 2px var(--hapio-annot-noted-ink);text-underline-offset:3px}.hapio-annot-root{position:fixed;inset:0 auto auto 0;width:0;height:0;z-index:2147482000}.hapio-annot-popover,.hapio-annot-toolbar{position:fixed;display:flex;flex-direction:column;gap:8px;width:min(300px,88vw);padding:10px;border:1px solid var(--hapio-annot-border);border-radius:14px;background:var(--hapio-annot-surface);color:var(--hapio-annot-text);box-shadow:var(--hapio-annot-shadow);font-size:13px;line-height:1.45}.hapio-annot-toolbar__row{display:flex;align-items:center;gap:8px}.hapio-annot-toolbar__icon{display:inline-flex;color:var(--hapio-annot-text-muted)}.hapio-annot-toolbar__hint{font-size:11px;color:var(--hapio-annot-text-muted)}.hapio-annot-dot{width:22px;height:22px;border-radius:999px;border:2px solid transparent;cursor:pointer;padding:0;flex:none;transition:transform .12s ease,box-shadow .12s ease}.hapio-annot-dot:hover{transform:scale(1.12)}.hapio-annot-dot:disabled{opacity:.5;cursor:default}.hapio-annot-dot.is-active{border-color:var(--hapio-annot-text);box-shadow:0 0 0 2px var(--hapio-annot-surface) inset}.hapio-annot-dot--yellow{background:var(--hapio-annot-yellow-dot)}.hapio-annot-dot--green{background:var(--hapio-annot-green-dot)}.hapio-annot-dot--blue{background:var(--hapio-annot-blue-dot)}.hapio-annot-dot--pink{background:var(--hapio-annot-pink-dot)}.hapio-annot-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:auto;border:none;border-radius:8px;background:transparent;color:var(--hapio-annot-text-muted);cursor:pointer}.hapio-annot-iconbtn:hover{background:var(--hapio-annot-quote-bg);color:var(--hapio-annot-text)}.hapio-annot-textarea{width:100%;resize:vertical;min-height:40px;max-height:160px;padding:8px 10px;border:1px solid var(--hapio-annot-border);border-radius:10px;background:var(--hapio-annot-surface);color:var(--hapio-annot-text);font:inherit;font-size:13px}.hapio-annot-textarea:focus{outline:2px solid var(--hapio-annot-primary);outline-offset:1px}.hapio-annot-error{font-size:11.5px;color:var(--hapio-annot-danger)}.hapio-annot-popover__head{display:flex;align-items:center;gap:8px}.hapio-annot-popover__title{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:12.5px}.hapio-annot-quote{margin:0;padding:6px 10px;border-left:3px solid var(--hapio-annot-border);border-radius:6px;background:var(--hapio-annot-quote-bg);color:var(--hapio-annot-text-muted);font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hapio-annot-popover__actions{display:flex;justify-content:flex-end;gap:8px}.hapio-annot-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:10px;border:1px solid var(--hapio-annot-border);background:var(--hapio-annot-surface);color:var(--hapio-annot-text);font-size:12.5px;font-weight:600;cursor:pointer}.hapio-annot-btn:disabled{opacity:.55;cursor:default}.hapio-annot-btn--primary{background:var(--hapio-annot-primary);border-color:var(--hapio-annot-primary);color:var(--hapio-annot-primary-ink)}.hapio-annot-btn--danger{color:var(--hapio-annot-danger);border-color:var(--hapio-annot-danger-soft);background:var(--hapio-annot-danger-soft)}.hapio-annot-tooltip{position:fixed;display:flex;align-items:flex-start;gap:7px;max-width:min(320px,80vw);padding:8px 11px;border:1px solid var(--hapio-annot-border);border-radius:10px;background:var(--hapio-annot-surface);color:var(--hapio-annot-text);box-shadow:var(--hapio-annot-shadow);font-size:12.5px;line-height:1.5;pointer-events:none;z-index:2147482601}.hapio-annot-tooltip__dot{width:10px;height:10px;margin-top:4px;border-radius:999px;flex:none}.hapio-annot-tooltip__text{white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}