.bookmark-dialog{width:min(900px,94vw);max-height:90dvh;padding:0;border:0;border-radius:20px;color:var(--text,#292b32);background:var(--card,#fff);box-shadow:0 24px 100px #17203430}.bookmark-dialog::backdrop,.bookmark-errors::backdrop{background:#16202b70;backdrop-filter:blur(5px)}.bookmark-header{padding:26px 30px 20px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #8882}.bookmark-header h2{font-size:24px;margin:8px 0}.bookmark-header p{margin:0;color:#81838c}.bookmark-eyebrow{font-size:12px;color:#0088ff;letter-spacing:.05em}.bookmark-header>button{border:0;background:transparent;font-size:28px;align-self:flex-start;color:inherit;cursor:pointer}.bookmark-body{padding:24px 30px;overflow:auto;max-height:calc(90dvh - 215px);overscroll-behavior:contain}.bookmark-body h3{font-size:17px;margin:22px 0 12px}.bookmark-body [hidden],.bookmark-actions [hidden]{display:none!important}.bookmark-file{display:block;border:1px dashed #0088ff66;background:#0088ff08;border-radius:12px;padding:18px;font-size:14px;font-weight:600}.bookmark-file input{display:block;max-width:100%;margin-top:12px}.bookmark-source{padding:12px 15px;background:#0088ff0c;border-radius:10px;font-size:14px}.bookmark-modes{border:0;padding:0;margin:24px 0 18px}.bookmark-modes legend{font-size:17px;font-weight:600;margin-bottom:12px}.bookmark-modes label{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #8883;border-radius:12px;cursor:pointer;margin-top:10px}.bookmark-modes label:has(input:checked){border-color:#0088ff;background:#0088ff08}.bookmark-modes input{width:18px;height:18px;accent-color:#0088ff;flex-shrink:0;margin:2px 0 0}.bookmark-modes strong,.bookmark-modes small{display:block}.bookmark-modes strong{font-size:14px}.bookmark-modes small{font-size:12px;color:#81838c;margin-top:6px;line-height:1.7}#bm-folder-name{border:1px solid #8884;border-radius:9px;padding:12px;width:100%;box-sizing:border-box;color:inherit;background:transparent}#bm-folder-name:disabled{opacity:.45}.bookmark-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 30px;border-top:1px solid #8882}.bookmark-actions button{cursor:pointer;min-height:40px;border-radius:9px;padding:9px 22px}.bookmark-actions button:disabled{cursor:wait;opacity:.5}.bookmark-review-heading{display:flex;align-items:center;justify-content:space-between}.bookmark-review-heading h3{margin:0}.bookmark-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.bookmark-summary>div{border:1px solid #8882;border-radius:12px;padding:16px}.bookmark-summary strong{display:block;font-size:27px;color:#0088ff}.bookmark-summary span{font-size:12px;color:#81838c;display:block;margin-top:5px}.bookmark-duplicate-heading{background:#ff8d2810;padding:14px 18px;border-radius:12px 12px 0 0}.bookmark-duplicate-heading h3{color:#c56a1a;margin:0 0 8px}.bookmark-duplicate-heading p{font-size:13px;line-height:1.7;margin:0 0 10px}.bookmark-duplicate-heading button,.bookmark-pagination button{font-size:12px;border:1px solid #8883;border-radius:6px;background:transparent;color:inherit;padding:6px 10px;cursor:pointer;margin-right:6px}.bookmark-duplicate-list{max-height:300px;overflow:auto;border:1px solid #ff8d2833;border-radius:0 0 12px 12px}.bookmark-duplicate-list label{display:flex;gap:12px;padding:14px 18px;border-bottom:1px solid #8882;cursor:pointer}.bookmark-duplicate-list input{width:17px;height:17px;accent-color:#0088ff;margin-top:3px;flex-shrink:0}.bookmark-duplicate-list strong{font-size:14px}.bookmark-duplicate-list small,.bookmark-duplicate-list b{display:block;word-break:break-all;font-size:12px;line-height:1.7}.bookmark-duplicate-list small{color:#81838c}.bookmark-duplicate-list b{font-weight:500;color:#0088ff;margin-top:5px}.bookmark-no-duplicates{color:#27a04b;background:#34c7590d;padding:13px;border-radius:10px;font-size:14px}.bookmark-preview article{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #8882}.bookmark-preview article>img,.bookmark-letter{width:36px;height:36px;object-fit:contain;border-radius:8px;flex-shrink:0}.bookmark-letter{display:grid;place-items:center;background:#0088ff12;color:#0088ff;font-weight:600}.bookmark-preview article>div{min-width:0}.bookmark-preview strong{display:block;font-size:14px}.bookmark-preview a{display:block;word-break:break-all;font-size:12px;color:#81838c;margin:5px 0}.bookmark-preview p{font-size:12px;margin:5px 0;color:#81838c}.bookmark-preview small{font-size:12px;color:#0088ff}.bookmark-pagination{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:14px;font-size:12px}.bookmark-pagination button:disabled{opacity:.35;cursor:default}.bookmark-warning{color:#c56a1a;font-size:13px}.bookmark-error{font-size:13px;color:#ff383c;white-space:pre-wrap}.bookmark-errors{border:0;border-radius:15px;width:min(560px,86vw);background:var(--card,#fff);color:var(--text,#292b32)}.bookmark-errors [data-bm-error-details]{white-space:pre-wrap;font-size:14px;line-height:1.8;max-height:50vh;overflow:auto}.bookmark-errors h2{font-size:18px}.bookmark-spinner{display:block;width:26px;height:26px;border:3px solid #0088ff22;border-top-color:#0088ff;border-radius:50%;animation:bookmark-spin .8s linear infinite;margin:20px auto}.bookmark-busy [data-bm-progress]{text-align:center;padding:16px;font-size:14px;color:#0088ff}@keyframes bookmark-spin{to{transform:rotate(360deg)}}@media(max-width:600px){.bookmark-header,.bookmark-body{padding:20px}.bookmark-actions{padding:15px 20px}.bookmark-summary{gap:6px}.bookmark-summary>div{padding:12px 9px}.bookmark-summary strong{font-size:23px}.bookmark-header h2{font-size:20px}}@media(prefers-reduced-motion:reduce){.bookmark-spinner{animation:none}}
.bookmark-dialog[open]{display:flex;flex-direction:column;overflow:hidden}.bookmark-header,.bookmark-actions{flex-shrink:0}.bookmark-body{min-height:0;max-height:none;flex:1;overflow:auto}.bookmark-dialog button,.bookmark-errors button{font:inherit}.bookmark-actions .secondary-button{border:1px solid #8884;background:transparent;color:inherit}.bookmark-actions .primary-button,.bookmark-errors .primary-button{border:1px solid #0088ff;background:#0088ff;color:white}.bookmark-dialog .text-button{border:0;background:transparent;color:#0088ff;padding:6px;font-size:12px;cursor:pointer}
.bookmark-dialog,.bookmark-errors{text-align:left}.bookmark-preview a{padding:0;border-radius:0;background:transparent;color:#81838c;margin:5px 0;display:block}
