@font-face{font-family:SoreNutsTableHeading;src:url('zen-maru-table-headers.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
.snag{--snag-ink:#34434c;--snag-muted:#667078;--snag-line:#e4dfd9;--snag-color:#7b6057;--snag-soft:#f8f3ee;font-family:inherit;font-size:14px;line-height:1.7;color:var(--snag-ink);margin:1.5em 0 2.2em;max-width:100%;position:relative}
.snag *,.snag *::before,.snag *::after{box-sizing:border-box}
.snag [hidden]{display:none!important}
.snag .snag-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 1.5em;padding:0}
.snag .snag-nav a{display:flex;align-items:center;gap:8px;padding:12px 10px;background:var(--snag-soft);border:1px solid var(--snag-line);border-radius:7px;box-shadow:0 1px 2px #34281c08;color:var(--snag-color);text-decoration:none!important;min-width:0;transition:background .12s}
.snag .snag-nav a:hover{background:#fff;border-color:var(--snag-color);box-shadow:0 2px 7px #34281c10}
.snag .snag-nav strong{display:block;font-size:14px;line-height:1.4;font-weight:700}
.snag .snag-nav small{display:block;font-size:12px;line-height:1.55;margin-top:4px;color:#626b72}
.snag .snag-nav-icon{font-size:20px;line-height:1;flex-shrink:0}
.snag .snag-controls{position:static;top:calc(var(--wp-admin--admin-bar--height,0px) + 8px);z-index:15;border:1px solid #ddd5cd;border-radius:8px;background:#faf8f5;padding:16px;margin:0 0 12px;box-shadow:0 2px 7px #4b3d2b06}
.snag .snag-search-line{display:flex;gap:12px;align-items:flex-end}
.snag .snag-search-line label{display:flex;flex-direction:column;gap:5px;margin:0;font-size:12px;line-height:1.5;font-weight:600}
.snag .snag-search-label{flex:1;min-width:0}
.snag .snag-purpose-label{flex:0 0 200px}
.snag input[type=search],.snag select,.snag textarea{font-family:inherit;font-size:14px;line-height:1.5;color:var(--snag-ink);border:1px solid #cfc8bf;border-radius:5px;background:#fff;box-shadow:none;margin:0;padding:9px 11px;min-height:40px;max-width:100%;width:100%}
.snag .snag-search{appearance:auto}
.snag .snag-search-field{position:relative;display:block;width:100%;font-weight:400}
.snag .snag-search-field .snag-search{padding-left:36px;min-height:43px;font-size:15px}
.snag .snag-search-icon{position:absolute;left:13px;top:13px;width:13px;height:13px;border:1.7px solid #918173;border-radius:50%;pointer-events:none}
.snag .snag-search-icon::after{content:"";position:absolute;width:6px;height:1.7px;background:#918173;transform:rotate(45deg);right:-5px;bottom:-2px}
.snag .snag-purpose-label select{min-height:43px}
.snag input[type=search]:focus,.snag select:focus{border-color:#8e7262;box-shadow:0 0 0 3px #8e726215}
.snag .snag-families{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.snag button{font-family:inherit}
.snag .snag-family{appearance:none;font-size:12px;line-height:1.4;color:#625b55;background:#fff;border:1px solid #d8d1c8;border-radius:5px;padding:6px 9px;margin:0;box-shadow:none;cursor:pointer;white-space:nowrap;min-height:31px}
.snag .snag-family[aria-pressed=true]{background:#72574d;border-color:#72574d;color:#fff;font-weight:600;box-shadow:inset 0 1px 1px #ffffff15}
.snag .snag-family:hover{border-color:#7b6057}
.snag .snag-filter-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:11px;font-size:12px;min-height:20px}
.snag .snag-result-count{font-variant-numeric:tabular-nums;font-weight:600;margin-right:auto;color:#6c5d51;background:#f0ebe5;border-radius:4px;padding:3px 7px;line-height:1.5}
.snag .snag-only-label:has(input:disabled){color:#8a8580}
.snag .snag-only-label{display:inline-flex;align-items:center;gap:5px;line-height:1.3;font-size:12px;margin:0}
.snag .snag-only-selected{appearance:auto;accent-color:#7b6057;width:14px;height:14px;margin:0}
.snag .snag-clear-selection{appearance:none;font:inherit;font-size:12px;color:#6d6157;padding:2px 0;margin:0;background:transparent;border:0;box-shadow:none;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.snag .snag-reset{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;min-height:34px;padding:6px 10px;margin:0;border:1px solid #d8c9ba;border-radius:7px;background:#fffdf9;box-shadow:0 1px 3px #7152350a;font-family:inherit;font-size:11px;font-weight:600;line-height:1.4;color:#795d48;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .16s,border-color .16s}
.snag .snag-reset:hover:not(:disabled){border-color:#ad8b70;background:#f5ece1}
.snag .snag-reset:disabled{color:#a2988b;border-color:#e3ddd5;background:#f5f2ed;box-shadow:none;cursor:default}
.snag .snag-reset-icon{display:inline-flex;align-items:center;flex:none}
.snag .snag-reset-icon svg{display:block}
.snag .snag-selection{position:static;top:calc(var(--wp-admin--admin-bar--height,0px) + var(--snag-controls-height,180px) + 16px);z-index:12;margin:16px 0 10px;padding:11px 14px;border:1px solid #cbbdb0;border-radius:7px;background:#fffdf9;box-shadow:0 3px 12px #4b3d2b18;max-width:100%;max-height:max(112px,calc(100svh - var(--wp-admin--admin-bar--height,0px) - var(--snag-controls-height,180px) - 24px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.snag .snag-selection-top{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:12px;line-height:1.5}
.snag .snag-selection-top>strong{color:#725448;font-size:14px;white-space:nowrap}
.snag .snag-hidden-count{font-size:11px;color:var(--snag-muted);margin-right:auto}
.snag .snag-button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:5px;font:inherit;font-size:12px;line-height:1.4;font-weight:600;min-height:34px;margin:0;padding:7px 10px;border:1px solid #cfc5ba;border-radius:5px;color:#665449;background:#fff;box-shadow:none;text-decoration:none;cursor:pointer}
.snag .snag-button:hover{background:#f5eee6}
.snag .snag-primary{background:#7b6057;color:#fff;border-color:#7b6057}
.snag .snag-primary:hover{background:#624b43}
.snag .snag-selection-body{padding-top:12px}
.snag .snag-selection-body{max-height:min(48vh,360px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c7b9ac transparent;padding-right:3px}
.snag .snag-selected-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;max-height:110px;overflow:auto;scrollbar-width:thin}
.snag .snag-selected-tag{font:inherit;font-size:12px;line-height:1.5;max-width:100%;overflow-wrap:anywhere;border:1px solid #ddd0c4;border-radius:5px;background:#f8f1e8;color:#725447;padding:4px 8px;cursor:pointer;box-shadow:none}
.snag .snag-format-label{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12px;line-height:1.5;margin-bottom:9px}
.snag .snag-format{width:auto;max-width:100%;font-size:12px;min-height:32px;padding:5px 8px}
.snag .snag-copy-preferences{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:11px;padding-top:11px;border-top:1px solid #e6ddd3}
.snag .snag-copy-preferences .snag-format-label{margin:0;font-weight:600;color:#795f4c}
.snag .snag-format-hint{font-size:11px;line-height:1.5;color:#8b7b6b}
.snag .snag-format-control{position:relative;display:inline-block;min-width:196px;max-width:100%;font-weight:400}
.snag .snag-format-trigger{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:35px;margin:0;padding:7px 11px;border:1px solid #cdbdaf;border-radius:7px;background:linear-gradient(#fffefa,#f8f2eb);color:#705746;box-shadow:0 1px 2px #4b3d2b08;font:inherit;font-size:12px;font-weight:600;line-height:1.5;text-align:left;cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s}
.snag .snag-format-trigger:hover,.snag .snag-format-trigger[aria-expanded=true]{border-color:#a1846b;background:#fffaf2;box-shadow:0 0 0 3px #a88b7314}
.snag .snag-format-trigger:focus-visible{outline:2px solid #9b7b66;outline-offset:2px}
.snag .snag-format-menu{position:absolute;display:block;z-index:41;top:calc(100% + 7px);left:0;width:290px;max-width:calc(100vw - 58px);max-height:var(--snag-format-height,260px);padding:5px;border:1px solid #dacdc0;border-radius:10px;background:#fffefa;box-shadow:0 9px 28px #49372a24;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.snag .snag-format-menu[data-placement=up]{top:auto;bottom:calc(100% + 7px)}
.snag .snag-format-option{appearance:none;position:relative;display:flex;flex-direction:column;gap:3px;align-items:flex-start;width:100%;min-height:58px;margin:0;padding:9px 33px 9px 11px;border:0;border-radius:6px;background:transparent;color:#685547;text-align:left;font:inherit;font-size:12px;line-height:1.5;box-shadow:none;cursor:pointer;transition:background .16s,color .16s}
.snag .snag-format-option>span:first-child{font-weight:600}
.snag .snag-format-option:hover,.snag .snag-format-option:focus,.snag .snag-format-option[aria-selected=true]{background:#f3ece2;color:#71533e;outline:none}
.snag .snag-format-option:focus-visible{outline:2px solid #a18870;outline-offset:-2px}
.snag .snag-format-option[aria-selected=true]::after{content:"";position:absolute;right:12px;top:50%;width:14px;height:14px;transform:translateY(-50%);border:1.3px solid currentColor;border-radius:50%;background:radial-gradient(circle,currentColor 0 3px,transparent 3.4px)}
.snag .snag-format-example{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:400;line-height:1.5;color:#93816e}
.snag .snag-preview-label{display:block;font-size:12px;color:var(--snag-muted)}
.snag .snag-preview{display:block;margin-top:5px;resize:vertical;background:#fff;font-family:inherit;font-size:13px;line-height:1.6;min-height:64px}
.snag .snag-combination-note{font-size:12px;line-height:1.7;color:#92672d;margin:7px 0 0}
.snag .snag-combination-note:empty{display:none}
.snag .snag-feedback{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);z-index:100001;display:flex;align-items:center;gap:11px;width:max-content;min-width:min(260px,calc(100vw - 32px));max-width:min(420px,calc(100vw - 32px));margin:0;padding:13px 18px 15px 14px;overflow:hidden;border:1px solid #d9cfc2;border-radius:12px;background:#fffdf8;color:#51483f;box-shadow:0 8px 30px #49392a24,0 2px 6px #49392a0d;font-size:13px;line-height:1.5;pointer-events:none}
.snag .snag-notice-icon{display:grid;place-items:center;flex:none;width:33px;height:33px;border:1px solid #d5dfd1;border-radius:50%;background:#edf2e8;color:#6d8360}
.snag .snag-notice-icon svg{display:block}
.snag .snag-notice-icon path{stroke-dasharray:24;stroke-dashoffset:0}
.snag .snag-notice-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.snag .snag-notice-title{font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.025em;color:#6b5848}
.snag .snag-notice-detail{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:13px;line-height:1.55;color:#736a60}
.snag .snag-empty{padding:24px 14px;background:#faf7f2;border:1px solid #e6ddd3;border-radius:7px;line-height:1.8;font-size:14px;margin:20px 0}
.snag .snag-empty .snag-reset{display:flex;width:max-content;max-width:100%;margin-top:10px}
.snag .snag-purpose{margin:34px 0 0;scroll-margin-top:70px}
.snag .snag-purpose>h2{display:flex;align-items:center;gap:9px;font-size:19px;line-height:1.6;margin:0 0 22px;padding:12px 15px;border:0;border-radius:6px;background:var(--snag-soft);color:var(--snag-color);box-shadow:none}
.snag .snag-purpose>h2::before,.snag .snag-purpose>h2::after{display:none}
.snag .snag-purpose-heading{display:flex;align-items:center;gap:10px;justify-content:space-between;margin:0 0 20px;padding:12px 15px;border-radius:6px;background:var(--snag-soft);color:var(--snag-color)}
.snag .snag-purpose-heading h2{display:flex;align-items:center;gap:9px;margin:0;padding:0;border:0;background:none;box-shadow:none;font-size:19px;line-height:1.6;color:inherit;min-width:0}
.snag .snag-purpose-heading h2::before,.snag .snag-purpose-heading h2::after{display:none}
.snag .snag-purpose-count{margin-left:auto;font-size:12px;font-weight:400;white-space:nowrap;color:var(--snag-muted)}
.snag .snag-group{margin:24px 0;scroll-margin-top:70px}
.snag .snag-group>h3{display:flex;align-items:center;gap:10px;line-height:1.6;font-size:15px;padding:0;margin:0 0 12px;border:0;background:none;box-shadow:none;color:var(--snag-color)}
.snag .snag-group>h3::before,.snag .snag-group>h3::after{display:none}
.snag .snag-group-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.snag .snag-group-heading h3{font-size:15px;line-height:1.6;margin:0;padding:0;border:0;background:none;box-shadow:none;color:var(--snag-color)}
.snag .snag-group-heading h3::before,.snag .snag-group-heading h3::after{display:none}
.snag .snag-group .swl-format-2{display:inline-block;padding:.2em .7em .15em;line-height:1.4;border-radius:6px;background:#fff;box-shadow:0 1px 4px #0002;color:var(--snag-color);font-weight:600}
.snag .snag-group-count{font-size:11px;font-weight:400;color:var(--snag-muted)}
.snag .snag-table-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--snag-line);border-radius:7px;overflow:hidden;align-items:start;background:#fff}
.snag .snag-table{width:100%;table-layout:fixed;border-collapse:collapse;border:0!important;margin:0!important;background:#fff;font-size:14px;line-height:1.65}
.snag .snag-table+table{border-left:1px solid var(--snag-line)!important}
.snag .snag-table th,.snag .snag-table td{text-align:left;vertical-align:top;border:0!important;border-bottom:1px solid var(--snag-line)!important;padding:9px 11px!important;color:var(--snag-ink);word-break:normal;overflow-wrap:anywhere}
.snag .snag-table th{width:50%;padding:8px 11px!important;background:var(--snag-color)!important;color:#fff!important;font-family:SoreNutsTableHeading,"Yu Gothic",sans-serif;font-size:15px;font-weight:700;line-height:1.4;letter-spacing:.02em}
.post_content .snag .snag-table th{font-family:SoreNutsTableHeading,"Yu Gothic",sans-serif!important;font-size:15px!important}
.snag .snag-table tr:last-child td{border-bottom:0!important}
.snag .snag-label-cell{background:var(--snag-soft)!important}
.snag .snag-pick-label{display:flex;align-items:flex-start;gap:7px;line-height:1.65;margin:0;font-size:14px;cursor:pointer}
.snag .snag-pick{appearance:auto;accent-color:var(--snag-color);width:15px;height:15px;min-width:15px;margin:4px 0 0;padding:0;border-radius:3px;flex-shrink:0;cursor:pointer}
.snag .snag-note{display:block;font-size:12px;line-height:1.7;color:#58616a;margin-top:3px}
.snag .snag-copy-tag{appearance:none;display:flex;align-items:flex-start;justify-content:space-between;gap:6px;width:100%;font-family:inherit;font-size:14px;line-height:1.65;font-weight:400;text-align:left;color:var(--snag-ink);border:0;border-radius:3px;background:transparent;box-shadow:none;padding:0;margin:0;cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.snag .snag-copy-tag svg{fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0;margin-top:5px;opacity:.35}
.snag .snag-copy-tag:hover{color:var(--snag-color)}
.snag .snag-copy-tag:hover svg{opacity:1}
.snag .snag-copy-icon{position:relative;display:inline-block;width:14px;height:14px;flex-shrink:0;margin-top:5px;opacity:.4;color:currentColor}
.snag .snag-copy-icon::before,.snag .snag-copy-icon::after{content:"";position:absolute;width:9px;height:10px;border:1.3px solid currentColor;border-radius:2px;background:var(--snag-copy-bg,#fff)}
.snag .snag-copy-icon::before{left:0;top:0}
.snag .snag-copy-icon::after{left:4px;top:4px;background:var(--snag-copy-bg,#fff)}
.snag .snag-copy-tag:hover .snag-copy-icon{opacity:1}
.snag .snag-table tr[data-tag]:hover .snag-tag-cell{background:#fcfaf7;--snag-copy-bg:#fcfaf7}
.snag .snag-copy-tag[data-copied=true]{color:#337154}
.snag .snag-copy-tag[data-copied=true] .snag-copy-icon{opacity:1}
.snag .snag-table tr[data-selected=true] .snag-tag-cell{background:var(--snag-soft);--snag-copy-bg:var(--snag-soft)}
.snag .snag-copy-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:22px;border:1px solid #cfc5ba;border-radius:9px;color:var(--snag-ink);background:#fff}
.snag .snag-copy-dialog::backdrop{background:#242b334d}
.snag .snag-copy-dialog h3{font-size:18px;margin:0 0 10px;border:0;background:none;padding:0}
.snag .snag-copy-dialog p{font-size:13px;line-height:1.7;margin:0 0 10px}
.snag .snag-copy-dialog textarea{font-size:14px;resize:vertical;margin-bottom:12px}
.snag .snag-copy-dialog form{margin:0}
.snag :is(button,input,select,textarea,a,summary):focus-visible{outline:2px solid #9b7b66;outline-offset:2px}
.snag .snag-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.snag:not(.snag-ready) .snag-js{display:none!important}
.snag:not(.snag-ready) .snag-copy-tag{pointer-events:none;user-select:text}
.snag:not(.snag-ready) .snag-copy-tag svg,.snag:not(.snag-ready) .snag-copy-icon{display:none}
@media(max-width:760px){
 .snag .snag-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
 .snag .snag-nav a{padding:10px;gap:7px}
 .snag .snag-nav strong{font-size:13px}
 .snag .snag-nav small{font-size:10px}
 .snag .snag-table-pair{grid-template-columns:minmax(0,1fr)}
 .snag .snag-table+table{border-left:0!important;border-top:1px solid var(--snag-line)!important}
 .snag .snag-table+table thead{display:none}
}
@media(max-width:480px){
 .snag{font-size:14px}
 .snag .snag-controls{padding:12px}
 .snag .snag-search-line{flex-wrap:wrap;gap:9px}
 .snag .snag-search-label{flex-basis:100%}
 .snag .snag-purpose-label{flex-basis:100%}
 .snag .snag-families{gap:5px}
 .snag .snag-family{font-size:11px;padding:6px 8px}
 .snag .snag-filter-status{gap:9px}
 .snag .snag-only-label{font-size:11px}
 .snag .snag-selection{padding:9px;top:calc(var(--wp-admin--admin-bar--height,0px) + var(--snag-controls-height,180px) + 12px)}
 .snag .snag-selection-top{gap:7px}
 .snag .snag-hidden-count{display:none}
 .snag .snag-button{font-size:11px;padding:7px 8px}
 .snag .snag-table th,.snag .snag-table td{padding:9px!important}
 .snag .snag-purpose>h2{font-size:17px;padding:10px 12px}
 .snag .snag-purpose-heading{padding:10px 12px}
 .snag .snag-purpose-heading h2{font-size:17px}
 .snag .snag-nav small{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.snag *{scroll-behavior:auto;transition:none!important}}

/* Keep chapter targets clear of both following panels. */
.snag :is(.snag-purpose,.snag-group,.snag-purpose-heading h2,.snag-group-heading h3){scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + var(--snag-controls-height,180px) + var(--snag-selection-height,0px) + 32px)}

/* Purpose menu: scoped, keyboard operable, native select retained as fallback. */
.snag .snag-search-line .snag-purpose-label{display:flex;flex-direction:column;gap:5px;min-width:0}
.snag .snag-purpose-label>label{font-size:12px;font-weight:600;line-height:1.5}
.snag .snag-purpose-control{position:relative}
.snag .snag-purpose-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:43px;padding:9px 13px;border:1px solid #c6b5a8;border-radius:6px;background:linear-gradient(#fffdf9,#f6f0e9);color:#655044;font-family:inherit;font-size:14px;line-height:1.5;font-weight:600;box-shadow:0 1px 2px #4b3d2b08;cursor:pointer;text-align:left}
.snag .snag-purpose-trigger:hover,.snag .snag-purpose-trigger[aria-expanded=true]{border-color:#93725f;background:#fffaf3}
.snag .snag-purpose-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;width:18px;height:18px;margin:0 0 0 3px;color:#8d7969;pointer-events:none}
.snag .snag-purpose-arrow svg{display:block;flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.snag .snag-chevron-up{display:none}
.snag :is(.snag-purpose-trigger,.snag-format-trigger):hover .snag-purpose-arrow,.snag :is(.snag-purpose-trigger,.snag-format-trigger)[aria-expanded=true] .snag-purpose-arrow{color:#6f503d}
.snag :is(.snag-purpose-trigger,.snag-format-trigger)[aria-expanded=true] .snag-chevron-down{display:none}
.snag :is(.snag-purpose-trigger,.snag-format-trigger)[aria-expanded=true] .snag-chevron-up{display:block}
.snag .snag-purpose-menu{position:absolute;z-index:40;top:calc(100% + 7px);right:0;width:max(100%,240px);max-width:calc(100vw - 40px);padding:6px;border:1px solid #dacdc0;border-radius:9px;background:#fffefa;box-shadow:0 10px 30px #49372a22;overflow-y:auto;scrollbar-width:thin}
.snag .snag-purpose-menu[data-placement=up]{top:auto;bottom:calc(100% + 7px)}
.snag .snag-purpose-option{display:flex;align-items:center;gap:9px;width:100%;padding:9px 28px 9px 10px;min-height:39px;border:0;border-radius:5px;background:transparent;color:#5f574f;text-align:left;font:inherit;font-size:13px;line-height:1.5;position:relative;cursor:pointer;box-shadow:none}
.snag .snag-purpose-option:hover,.snag .snag-purpose-option:focus,.snag .snag-purpose-option[aria-selected=true]{background:var(--snag-option-soft,#f3ede6);color:var(--snag-option-color,#72574d);outline:none}
.snag .snag-purpose-option:focus-visible{outline:2px solid #9c8270;outline-offset:-2px}
.snag .snag-purpose-option[aria-selected=true]::after{content:"";position:absolute;right:11px;top:50%;transform:translateY(-50%);width:14px;height:14px;border:1.3px solid currentColor;border-radius:50%;background:radial-gradient(circle,currentColor 0 3px,transparent 3.4px)}
.snag .snag-option-icon{font-size:16px;width:22px;flex-shrink:0;text-align:center}

/* One flow of tag records: paired heights, no short column left in a box. */
.snag .snag-table-pair{display:block}
.snag .snag-table{display:block;width:100%;table-layout:auto}
.snag .snag-table thead{display:block}
.snag .snag-table thead>tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.snag .snag-table thead th{display:block;width:auto}
.snag .snag-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.snag .snag-table tbody>tr[data-tag]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;align-items:stretch}
.snag .snag-table tbody>tr[data-tag]>td{display:block;min-width:0}
.snag .snag-table tbody:has(>tr[data-unpaired=true])::after{content:"";display:block;min-width:0;background:linear-gradient(90deg,var(--snag-soft) 50%,#fff 50%)}
@media(max-width:760px){
 .snag .snag-table thead>tr{grid-template-columns:repeat(2,minmax(0,1fr))}
 .snag .snag-table thead th:nth-child(n+3){display:none}
 .snag .snag-table tbody{grid-template-columns:minmax(0,1fr)}
 .snag .snag-table tbody:has(>tr[data-unpaired=true])::after{display:none}
 .snag .snag-purpose-menu{width:100%;max-width:100%}
}

/* Interaction polish: quiet at rest, responsive to selection and focus. */
.snag{--snag-ease:cubic-bezier(.22,.75,.25,1)}
.snag [data-motion-open=false]{pointer-events:none}
.snag .snag-nav a{transition:transform .2s var(--snag-ease),background .2s,border-color .2s,box-shadow .2s}
.snag .snag-nav a:hover{transform:translateY(-2px);box-shadow:0 5px 13px #49372a12}
.snag :is(.snag-family,.snag-button,.snag-purpose-trigger,.snag-purpose-option){transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s var(--snag-ease)}
.snag :is(.snag-family,.snag-button,.snag-purpose-trigger):active{transform:scale(.975)}
.snag .snag-settings-arrow{transition:transform .22s var(--snag-ease)}
.snag .snag-purpose-trigger[aria-expanded=true]{box-shadow:0 0 0 3px #a88b7318}
.snag .snag-purpose-option:hover{transform:translateX(2px)}
.snag .snag-purpose-menu{overflow:visible;padding:6px 17px 6px 6px;max-height:none;transform-origin:top right;border-radius:11px;box-shadow:0 12px 32px #49372a24,0 2px 6px #49372a0a}
.snag .snag-purpose-menu[data-placement=up]{transform-origin:bottom right}
.snag .snag-purpose-scroll{max-height:max(0px,calc(var(--snag-menu-height,340px) - 14px));overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;border-radius:6px}
.snag .snag-purpose-scroll::-webkit-scrollbar{display:none}
.snag .snag-menu-track{position:absolute;right:6px;top:10px;bottom:10px;width:7px;border-radius:10px;background:#efe7df;cursor:pointer;touch-action:none}
.snag .snag-menu-thumb{position:absolute;top:0;left:0;width:7px;min-height:30px;border-radius:10px;background:#b59c87;cursor:grab;touch-action:none;transition:background .16s;user-select:none}
.snag .snag-menu-thumb:hover,.snag .snag-menu-track[data-dragging] .snag-menu-thumb{background:#826656}
.snag .snag-menu-track[data-dragging] .snag-menu-thumb{cursor:grabbing}

.snag .snag-selection{padding:13px 15px 11px;border:1px solid #d7c5b4;border-radius:11px;background:linear-gradient(125deg,#fffdf9,#fdf8f1);box-shadow:0 5px 20px #53402a16,0 1px 3px #53402a0a;isolation:isolate}
.snag .snag-selection-top{justify-content:space-between;gap:10px;align-items:center}
.snag .snag-selection-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}
.snag .snag-selection-heading>strong{display:inline-flex;align-items:center;gap:8px;color:#6b5143;font-size:13px;line-height:1.5;white-space:nowrap}
.snag .snag-selected-count{display:inline-grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border:1px solid #d7c2ae;border-radius:7px;background:#efe3d5;color:#6b4c36;font-size:13px;font-variant-numeric:tabular-nums}
.snag .snag-hidden-count{font-size:11px;margin:0;line-height:1.5;color:#877565}
.snag .snag-selection-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.snag .snag-selection .snag-button{min-height:34px;border-radius:7px;font-size:12px;line-height:1.4;padding:8px 10px}
.snag .snag-copy-selection{gap:7px;box-shadow:0 2px 5px #5f423420;font-weight:600}
.snag .snag-copy-selection .snag-copy-icon{margin-top:0;opacity:.95;color:#fff;--snag-copy-bg:#7b6057;transform:scale(.85)}
.snag .snag-copy-selection:hover{box-shadow:0 3px 8px #5f423430}
.snag .snag-copy-selection[data-copied=true]{background:#3e725b;border-color:#3e725b;--snag-copy-bg:#3e725b}
.snag .snag-copy-selection[data-copied=true] .snag-copy-icon{--snag-copy-bg:#3e725b}
.snag .snag-review{gap:8px;color:#7a6557;border-color:#e3d7ca;background:#fffaf4}
.snag .snag-settings-arrow{display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.snag .snag-review[aria-expanded=true] .snag-settings-arrow{transform:translateY(1px) rotate(225deg)}
.snag .snag-clear-selection{font-size:11px;color:#8c7869;text-decoration:none;padding:7px 5px;border-radius:5px;transition:background .18s,color .18s}
.snag .snag-clear-selection:hover{background:#f3e6dc;color:#895b46}
.snag .snag-selected-tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:1px 3px 2px 1px;max-height:76px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bfa48d #f1e8de}
.snag .snag-selected-tag{display:inline-flex;align-items:center;gap:8px;flex:none;max-width:100%;min-height:28px;padding:4px 7px 4px 9px;font-size:12px;line-height:1.4;background:#fff;border:1px solid #dfcdbb;border-radius:6px;color:#695345;box-shadow:0 1px 2px #674e3210;transition:background .16s,border-color .16s,box-shadow .16s}
.snag .snag-selected-tag>span:first-child{min-width:0;overflow-wrap:anywhere;text-align:left}
.snag .snag-chip-remove{display:inline-grid;place-items:center;flex:none;width:15px;height:15px;border-radius:4px;background:#f3ece4;color:#9a7f69;font:16px/1 sans-serif;transition:background .16s,color .16s}
.snag .snag-selected-tag:hover{background:#fff8f1;border-color:#b99376;box-shadow:0 2px 5px #674e3218}
.snag .snag-selected-tag:hover .snag-chip-remove{background:#9b7158;color:white}
.snag .snag-selected-tag:disabled{pointer-events:none}
.snag .snag-selection-body{margin-top:11px;padding-top:11px;border-top:1px solid #e6d8ca;max-height:min(36vh,250px);scrollbar-color:#bfa48d #f1e8de}
.snag .snag-selection .snag-preview{border-radius:7px;background:#fff;font-size:12px;min-height:58px}
.snag .snag-selection>.snag-combination-note:not(:empty){font-size:11px;line-height:1.6;margin:8px 0 0;padding:5px 8px;border:1px solid #ebd7b8;border-radius:5px;background:#fff6e7;color:#8c6937}
.snag .snag-format-label{color:#86705e}
.snag .snag-format{border-color:#dfd1c2;background:#fffdf9;border-radius:6px}

/* Real inputs retain keyboard/label behavior; their visual treatment is custom. */
.snag :is(.snag-pick,.snag-only-selected){appearance:none;-webkit-appearance:none;position:relative;display:inline-block;flex:none;width:17px;height:17px;min-width:17px;min-height:17px;padding:0;border:1.5px solid #c4b4a5;border-radius:5px;background:#fff;box-shadow:0 1px 2px #67513d0a;cursor:pointer;vertical-align:middle;transition:background .16s,border-color .16s,box-shadow .16s,transform .18s var(--snag-ease)}
.snag .snag-pick{margin:3px 0 0}
.snag .snag-only-selected{margin:0}
.snag :is(.snag-pick,.snag-only-selected)::after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 1.8px 1.8px 0;transform:rotate(45deg) scale(.35);opacity:0;transition:transform .2s var(--snag-ease),opacity .12s}
.snag :is(.snag-pick,.snag-only-selected):checked{background:var(--snag-color);border-color:var(--snag-color);box-shadow:0 2px 5px #7b60572a}
.snag :is(.snag-pick,.snag-only-selected):checked::after{transform:rotate(45deg) scale(1);opacity:1}
.snag :is(.snag-pick,.snag-only-selected):hover:not(:disabled){border-color:var(--snag-color);box-shadow:0 0 0 3px #9e7f6212}
.snag :is(.snag-pick,.snag-only-selected):active:not(:disabled){transform:scale(.9)}
.snag :is(.snag-pick,.snag-only-selected):disabled{background:#f3f0ec;border-color:#ded8d0;box-shadow:none;cursor:default;opacity:.65}
.snag .snag-table tr[data-selected=true] .snag-label-cell{background:color-mix(in srgb,var(--snag-soft),var(--snag-color) 9%)!important}
.snag .snag-copy-tag{transition:color .16s}
.snag .snag-copy-tag .snag-copy-icon{transition:opacity .16s,transform .18s}
.snag .snag-copy-tag[data-copied=true] .snag-copy-icon{transform:scale(1.12)}
@media(max-width:760px){
 .snag .snag-selection-heading{gap:7px}
 .snag .snag-selection-actions{gap:5px}
 .snag .snag-selection{padding:10px;border-radius:9px}
 .snag .snag-selected-tags{max-height:69px;margin-top:8px}
}
@media(max-width:480px){
 .snag .snag-selection-top{gap:8px}
 .snag .snag-selection-heading{flex-basis:100%}
 .snag .snag-selection-actions{width:100%}
 .snag .snag-copy-selection{flex:1}
 .snag .snag-selection .snag-button{font-size:11px;padding:7px 8px}
 .snag .snag-hidden-count{display:inline;font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .snag *,.snag *::before,.snag *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
 .snag .snag-nav a:hover,.snag .snag-purpose-option:hover{transform:none}
}
@media(forced-colors:active){
 .snag :is(.snag-pick,.snag-only-selected){appearance:auto;border:revert;background:revert}
 .snag :is(.snag-pick,.snag-only-selected)::after{display:none}
 .snag .snag-menu-thumb{background:ButtonText}
 .snag .snag-menu-track{background:Canvas;border:1px solid ButtonText}
 .snag .snag-purpose-arrow{color:ButtonText}
}

/* A compact following bar; the original filter layout remains at its start. */
.snag .snag-sticky-start{display:block;width:1px;height:1px;margin-bottom:-1px;pointer-events:none}
.snag .snag-controls-space{height:0;pointer-events:none}
.snag .snag-compact-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0;flex:none}
.snag .snag-compact-actions>:is(.snag-compact-count,.snag-filter-toggle){display:none}
.snag[data-search-compact=true] .snag-compact-actions>:is(.snag-compact-count,.snag-filter-toggle){display:inline-flex}
.snag[data-follow-enabled=true] :is(.snag-controls,.snag-selection){position:sticky}
.snag .snag-follow-toggle{appearance:none;display:inline-flex;align-items:center;gap:8px;flex:none;width:220px;max-width:100%;min-height:45px;margin:0;padding:6px 9px;border:1px solid #d8c9ba;border-radius:8px;background:linear-gradient(140deg,#fffefa,#f7f0e8);box-shadow:0 2px 5px #61472b0b,inset 0 1px #fff;font-family:inherit;font-size:12px;line-height:1.4;font-weight:500;color:#745d4c;cursor:pointer;text-align:left;transition:border-color .16s,box-shadow .16s,background .16s}
.snag .snag-follow-toggle:hover{border-color:#ad8b70;box-shadow:0 3px 9px #61472b15,inset 0 1px #fff}
.snag .snag-follow-toggle[aria-pressed=true]{border-color:#b08f71;background:linear-gradient(140deg,#fcf8f1,#f0e4d5);color:#6a4c36}
.snag .snag-follow-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;border:1px solid #dfcfbd;border-radius:7px;background:#efe6d9;color:#92704f}
.snag .snag-follow-icon svg{display:block}
.snag .snag-follow-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}
.snag .snag-follow-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}
.snag .snag-follow-title{font-size:12px;font-weight:700;line-height:1.4;white-space:nowrap}
.snag .snag-follow-status{font-size:9px;line-height:1.4;padding:1px 4px;border-radius:3px;background:#e9e3da;color:#82786c;white-space:nowrap}
.snag .snag-follow-toggle[aria-pressed=true] .snag-follow-status{background:#85644d;color:#fff}
.snag .snag-follow-caption{font-size:10px;line-height:1.4;color:#8c7a69;white-space:nowrap}
.snag .snag-follow-switch{display:block;flex:none;position:relative;width:29px;height:17px;border:1px solid #cbbdad;border-radius:20px;background:#ded5c9;transition:background .18s,border-color .18s}
.snag .snag-follow-switch::before{content:"";position:absolute;width:11px;height:11px;top:2px;left:2px;border-radius:50%;background:#fffdf9;box-shadow:0 1px 3px #634c3433;transition:transform .18s}
.snag .snag-follow-toggle[aria-pressed=true] .snag-follow-switch{border-color:#85644d;background:#947154}
.snag .snag-follow-toggle[aria-pressed=true] .snag-follow-switch::before{transform:translateX(12px)}
.snag[data-search-compact=true] .snag-follow-toggle{width:auto;min-height:34px;padding:4px 7px;gap:6px;border-radius:5px}
.snag[data-search-compact=true] .snag-follow-icon{width:19px;height:19px;border:0;border-radius:0;background:transparent}
.snag[data-search-compact=true] .snag-follow-title{font-size:11px}
.snag[data-search-compact=true] :is(.snag-follow-status,.snag-follow-caption){display:none}
.snag[data-search-compact=true] .snag-follow-switch{width:25px;height:15px}
.snag[data-search-compact=true] .snag-follow-switch::before{width:9px;height:9px}
.snag[data-search-compact=true] .snag-follow-toggle[aria-pressed=true] .snag-follow-switch::before{transform:translateX(10px)}
.snag .snag-view-control{display:flex;align-items:center;flex-wrap:wrap;gap:7px;max-width:100%}
.snag .snag-view-label{font-size:11px;font-weight:600;color:#837265;white-space:nowrap}
.snag .snag-view-modes{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid #ded2c5;border-radius:7px;background:#f0eae2}
.snag .snag-view-modes button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:28px;margin:0;padding:4px 9px;border:0;border-radius:4px;background:transparent;box-shadow:none;font:inherit;font-size:11px;line-height:1.4;font-weight:600;color:#887869;cursor:pointer;white-space:nowrap}
.snag .snag-view-modes button[aria-pressed=true]{background:#fffdf9;color:#6c503d;box-shadow:0 1px 4px #71523514}
.snag .snag-view-modes .snag-view-picked[aria-pressed=true]{background:#7b6050;color:#fff}
.snag .snag-view-modes button:disabled{opacity:.5;cursor:not-allowed}
.snag .snag-view-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:4px;background:#e5d9cb;color:#806448;font-size:10px;line-height:1;font-variant-numeric:tabular-nums}
.snag .snag-view-picked[aria-pressed=true] .snag-view-count{background:#ffffff24;color:#fff}
.snag .snag-view-hint{font-size:10px;line-height:1.5;color:#8b7b6b}
.snag .snag-compact-count{color:#7a6c61;font-size:11px;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums}
.snag .snag-filter-toggle{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 9px;border:1px solid #d4c7bb;border-radius:5px;background:#fffdf9;color:#715a4d;font-family:inherit;font-size:12px;line-height:1.4;font-weight:600;white-space:nowrap;cursor:pointer;box-shadow:none;margin:0}
.snag .snag-filter-toggle::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.snag .snag-filter-toggle[aria-expanded=true]::after{transform:translateY(1px) rotate(225deg)}
.snag .snag-filter-toggle[data-active=true]{background:#f0e6db;border-color:#b79a84;color:#6b4d3a}
.snag[data-search-compact=true] .snag-controls{padding:6px 9px;border-radius:6px;box-shadow:0 3px 10px #49392a14}
.snag[data-search-compact=true] .snag-search-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.snag[data-search-compact=true] .snag-search-label{grid-column:1;min-width:0}
.snag[data-search-compact=true] .snag-search-label>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.snag[data-search-compact=true] .snag-search-field .snag-search{height:34px;min-height:34px;padding:6px 9px 6px 31px;font-size:13px}
.snag[data-search-compact=true] .snag-search-icon{left:11px;top:10px;width:11px;height:11px}
.snag[data-search-compact=true] .snag-compact-actions{display:flex;grid-column:2}
.snag[data-search-compact=true] .snag-purpose-label{grid-column:1/-1;width:100%;margin-top:3px}
.snag[data-search-compact=true][data-filters-open=false] :is(.snag-purpose-label,.snag-families,.snag-filter-status,.snag-copy-preferences){display:none}
.snag[data-search-compact=true] .snag-selection{padding:6px 9px;border-radius:6px}
.snag[data-search-compact=true] .snag-selection-top{flex-wrap:nowrap;gap:9px}
.snag[data-search-compact=true] .snag-selection-heading{flex-basis:auto;flex-wrap:nowrap;gap:6px}
.snag[data-search-compact=true] .snag-selection-heading>strong{gap:6px;font-size:12px}
.snag[data-search-compact=true] .snag-selected-count{min-width:21px;height:21px;font-size:11px;padding:0 5px;border-radius:5px}
.snag[data-search-compact=true] .snag-selection-actions{width:auto;flex-wrap:nowrap;gap:6px}
.snag[data-search-compact=true] .snag-selection .snag-button{min-height:28px;padding:5px 7px;font-size:11px}
.snag[data-search-compact=true] .snag-copy-selection{flex:none;gap:4px}
.snag[data-search-compact=true] .snag-clear-selection{font-size:10px;padding:4px}
.snag[data-search-compact=true] .snag-selection:has(.snag-review[aria-expanded=false]) :is(.snag-selected-tags,.snag-hidden-count){display:none}
.snag[data-follow-enabled=true]:not([data-search-compact=true]) :is(.snag-purpose,.snag-group,.snag-purpose-heading h2,.snag-group-heading h3){scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + 50px + min(var(--snag-selection-height,0px),44px) + 32px)}
.snag:not([data-follow-enabled=true]) :is(.snag-purpose,.snag-group,.snag-purpose-heading h2,.snag-group-heading h3){scroll-margin-top:70px}
.snag :is(input[type=search],textarea,select):is(:focus,:focus-visible){outline:none;border-color:#9b7b66;box-shadow:0 0 0 2px #a3826c22}
@media(max-width:480px){
 .snag[data-search-compact=true] .snag-compact-actions{gap:6px}
 .snag[data-search-compact=true] .snag-filter-toggle{padding:5px 7px;font-size:11px}
 .snag[data-search-compact=true] .snag-search-field .snag-search{font-size:13px}
 .snag:not([data-search-compact=true]) .snag-purpose-label{flex:1 1 160px}
 .snag:not([data-search-compact=true]) .snag-compact-actions{flex-basis:100%;justify-content:stretch}
 .snag:not([data-search-compact=true]) .snag-follow-toggle{width:100%}
 .snag .snag-view-hint{flex-basis:100%;padding-left:31px}
}
@media(forced-colors:active){.snag :is(input[type=search],textarea,select):is(:focus,:focus-visible){outline:2px solid Highlight;outline-offset:2px;box-shadow:none}}
