.fav-page,.fav-detail{position:relative;min-height:100%;background:#f5f6f8;color:#20242b;padding:12px 14px 28px;box-sizing:border-box}
.fav-local,.fav-detail-source{color:#69717d;font-size:calc(12px * var(--font-scale,1));line-height:1.5;margin:0 0 12px}
.fav-search input{width:100%;box-sizing:border-box;min-height:42px;padding:10px 12px;border:0;border-radius:7px;background:#fff;font:inherit;font-size:calc(15px * var(--font-scale,1));color:inherit}
.fav-filter{position:relative;z-index:3;margin:10px -14px 12px;background:#fff}
.fav-filter-bar{display:flex;align-items:center;min-height:48px;padding:0 8px}
.fav-filter-bar>button,.fav-type-heading button{border:0;background:transparent;color:#00876b;min-height:48px;padding:6px 10px;font-size:calc(14px * var(--font-scale,1))}
.fav-filter-bar>button[aria-current=true]{font-weight:700}
#fav-types{margin-left:auto;min-width:48px;font-size:calc(20px * var(--font-scale,1))}
.fav-shade{position:absolute;inset:0;width:100%;border:0;background:rgba(0,0,0,.54);z-index:2;cursor:pointer}
.fav-shade[hidden],.fav-type-panel[hidden]{display:none}
.fav-type-panel{position:absolute;top:100%;left:0;right:0;max-height:58vh;overflow:auto;padding:8px 10px 16px;background:#f5f6f8;border-radius:0 0 8px 8px;box-sizing:border-box}
.fav-type-heading{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding-left:10px;color:#69717d;font-size:calc(14px * var(--font-scale,1))}
.fav-type-heading button{min-width:48px;font-size:calc(20px * var(--font-scale,1))}
#fav-type-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#fav-type-options button{min-width:0;min-height:48px;padding:8px;border:0;border-radius:4px;background:#fff;color:#00876b;font-size:calc(14px * var(--font-scale,1));overflow-wrap:anywhere}
#fav-type-options button[aria-current=true]{outline:2px solid #00876b}
.fav-list{display:grid;gap:12px}
.fav-row{display:grid;width:100%;min-width:0;min-height:84px;text-align:left;gap:5px;padding:16px;background:#fff;border:0;border-radius:8px;color:inherit;cursor:pointer}
.fav-row:disabled{cursor:default;opacity:1}
.fav-row:focus-visible,.fav-action:focus-visible,.fav-remove:focus-visible{outline:2px solid #00876b;outline-offset:2px}
.fav-row-category,.fav-detail-category,.fav-confirm-kind{color:#687381;font-size:calc(12px * var(--font-scale,1))}
.fav-row-body{font-size:calc(15px * var(--font-scale,1));line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.fav-row small{color:#8a929c;font-size:calc(12px * var(--font-scale,1))}
.fav-empty{padding:36px 18px;text-align:center;color:#687381;font-size:calc(14px * var(--font-scale,1))}
.fav-empty strong{display:block;color:#333942;font-size:calc(16px * var(--font-scale,1))}
.fav-detail{background:#fff;padding:16px 22px 30px}
.fav-detail-source{text-align:center}
.fav-detail-category{margin:18px 0 6px}
.fav-text,.fav-confirm-preview{white-space:pre-wrap;overflow-wrap:anywhere;font-size:calc(16px * var(--font-scale,1));line-height:1.55}
.fav-media,.fav-audio{display:block;max-width:100%;height:auto;margin:16px 0;border-radius:6px}
.fav-action,.fav-remove{display:block;width:100%;min-height:48px;padding:10px 14px;margin-top:18px;border:0;border-radius:7px;font-size:calc(15px * var(--font-scale,1));cursor:pointer}
.fav-action{background:#00876b;color:#fff}.fav-remove{background:#f3f4f6;color:#39424d}
.fav-unavailable{color:#985431;font-size:calc(14px * var(--font-scale,1));line-height:1.5}
@media(min-width:560px){#fav-type-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
