/* notes-feature.css — D 类笔记 #10-#13（笔记 iframe 内） */

.nf-hl { border-radius: 14px; padding: 0 1px; }
.nf-c-yellow { background: rgba(255, 213, 79, .45); }
.nf-c-green  { background: rgba(102, 187, 106, .40); }
.nf-c-blue   { background: rgba(66, 165, 245, .35); }
.nf-c-pink   { background: rgba(240, 98, 146, .35); }
.nf-c-orange { background: rgba(255, 167, 38, .40); }

/* 画笔下划线（kind:pen） */
.nf-penline {
  background: transparent; color: inherit; border: none; padding: 0;
 border-bottom: 2px solid #3D55D4;
}
/* 白话层（.nf-bai = 注入的术语白话注解） */
.nf-bai { border-bottom: 1px dashed rgba(79,107,237,.6); color: #3D55D4; cursor: help; font-weight: 600; }

/* 画笔模式：自定义笔形光标（data-URI SVG），crosshair 兜底 */
.nf-pen-on, .nf-pen-on * {
  cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24'><path d='M3 21l3.5-.7L20 6.8 17.2 4 3.7 17.5z' fill='%233B57D9' stroke='white' stroke-width='1'/></svg>") 4 24, crosshair !important;
}

/* 工具条 */
.nf-bar { position: fixed; right: 16px; bottom: 16px; z-index: 9998; display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; max-width: 360px; padding: 8px; background: rgba(20,28,48,.92); color:#fff; border-radius: 14px; backdrop-filter: blur(6px); }
.nf-bar button { background: rgba(255,255,255,.12); color:#fff; border:none; padding: 8px 8px; border-radius: 14px; font-size: 13px; cursor:pointer; font-family:inherit; white-space:nowrap; transition: background .15s; }
.nf-bar button:hover { background: rgba(255,255,255,.22); }
.nf-bar button.nf-on { background:#2f66f0; }
.nf-bar button.nf-ver.nf-on { background:var(--indigo-500, var(--indigo-500, #4F6BED)); }

/* 选中小泡泡 */
.nf-pop { position:absolute; z-index:9999; display:none; align-items:center; gap: 8px; background:#1b2435; color:#fff; padding: 8px 8px; border-radius: 14px; font-size: 12px; }
.nf-pop-t { opacity:.7; }
.nf-dot { width:18px; height:18px; border-radius: 50%; border:2px solid rgba(255,255,255,.6); cursor:pointer; }
.nf-pop-note { background:rgba(255,255,255,.15); color:#fff; border:none; border-radius: 14px; padding: 4px 8px; cursor:pointer; font-size: 12px; }

/* 自定义弹层（替代 prompt） */
.nf-popup { position: absolute; z-index: 10002; width: 280px; background:#fff; border:1px solid #e4e9f2; border-radius: 14px; padding: 12px; font-family:inherit; }
.nf-popup-t { font-size: 13px; font-weight: 600; color:#1b2435; margin-bottom: 8px; }
.nf-popup-input { width:100%; box-sizing:border-box; border:1px solid #e4e9f2; border-radius: 14px; padding: 8px; font-size: 13px; font-family:inherit; resize:vertical; }
.nf-popup-btns { display:flex; justify-content:flex-end; gap: 8px; margin-top: 8px; }
.nf-popup-btns button { border:none; border-radius: 14px; padding: 8px 16px; font-size: 13px; cursor:pointer; }
.nf-ghost { background:#f1f4fa; color:#46506b; }
.nf-primary { background:#2f66f0; color:#fff; }

/* toast */
.nf-toast { position: fixed; left: 50%; bottom: 90px; transform: translateX(-50%) translateY(10px); background: rgba(20,28,48,.92); color:#fff; padding: 8px 16px; border-radius: 999px; font-size: 13px; z-index:10003; opacity:0; transition: all 0.22s; pointer-events:none; }
.nf-toast.nf-show { opacity:1; transform: translateX(-50%) translateY(0); }

/* 遮罩 + 面板 */
.nf-mask { position: fixed; inset:0; background: rgba(0,0,0,.35); z-index:10000; display:none; }
.nf-panel { position: fixed; right:0; top:0; bottom:0; width:420px; max-width:92vw; background:#fff; z-index:10001; display:none; flex-direction:column; box-shadow:-6px 0 24px rgba(0,0,0,.2); font-family:inherit; }
.nf-panel-h { display:flex; align-items:center; justify-content:space-between; padding: 16px 16px; border-bottom:1px solid #e4e9f2; font-weight: 600; color:#1b2435; }
.nf-panel-h button { background:none; border:none; font-size: 22px; cursor:pointer; color:#78839b; }
.nf-panel-body { flex:1; overflow:auto; padding: 16px 16px; }
.nf-loading { color:#78839b; font-size: 13px; padding: 20px 0; text-align:center; }
.nf-progress { height:6px; background:#eef1f7; border-radius: 999px; margin-top: 8px; overflow:hidden; }
.nf-progress i { display:block; height:100%; background:#3D55D4; border-radius: 999px; transition: width 0.32s; }
.nf-empty { color:#78839b; font-size: 13px; padding: 20px 0; text-align:center; }
.nf-list { list-style:none; margin: 0; padding: 0; }
.nf-li { display:flex; gap: 8px; padding: 8px 0; border-bottom:1px dashed #eef1f7; }
.nf-tag { flex:0 0 auto; height:fit-content; padding: 4px 8px; border-radius: 999px; font-size: 12px; color:#1b2435; background:#F2F4FF; }
.nf-li-text { font-size: 13px; line-height:1.7; color:#1b2435; }
.nf-li-note { margin-top: 4px; font-size: 13px; color:#46506b; background:#F5F5F7; padding: 8px 8px; border-radius: 14px; }
.nf-day { margin-bottom: 16px; }
.nf-day-h { font-weight: 600; color:#2f66f0; font-size: 13px; margin: 8px 0; }
.nf-engine { font-weight: 400; font-size: 12px; color:#78839b; }
.nf-kw { display:flex; flex-wrap:wrap; gap: 8px; }
.nf-kw-item { background:#F2F4FF; color:#1d49c4; padding: 4px 8px; border-radius: 999px; font-size: 13px; cursor:pointer; }
.nf-kw-item:hover { background:#dde7ff; }
.nf-engine-note { margin-top: 12px; font-size: 12px; color:#78839b; }
.nf-bm-act { margin-top: 8px; display:flex; gap: 8px; }
.nf-bm-act button { background:#F2F4FF; color:#1d49c4; border:none; border-radius: 14px; padding: 4px 8px; font-size: 12px; cursor:pointer; }
.nf-bm-act .nf-del-bm { background:#fdecea; color:#c0392b; }
.nf-xpfly { position:fixed; left:50%; bottom:120px; transform:translateX(-50%); background:linear-gradient(135deg,#1d49c4,#3f6ef0); color:#fff; padding: 8px 16px; border-radius: 999px; font-size: 13px; font-weight: 600; opacity:0; z-index:99999; pointer-events:none; transition: all 0.32s ease; }
.nf-xpfly.nf-go { opacity:1; transform:translateX(-50%) translateY(-46px); }
