/* 레이아웃 즐겨찾기 창(layout_fav.js, 서브 페이지 목록 화면) */
.lfav-dlg{border:0;border-radius:18px;padding:0;width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 32px);color:#1d1d1f;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.28);font:15px/1.55 "Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;word-break:keep-all;overflow:auto}
.lfav-dlg[open]{position:fixed;inset:0;margin:auto} /* 사이트 공통 CSS 가 dialog 여백을 0 으로 지워 왼쪽 위에 붙던 것 */
.lfav-dlg::backdrop{background:rgba(0,0,0,.42)}
.lfav-dlg *{box-sizing:border-box}
.lfav-dlg.is-list{width:min(1040px,calc(100vw - 32px));padding:0 0 24px}
.lfav-form{padding:24px}
.lfav-h{margin:0 0 14px;font-size:19px;font-weight:700;letter-spacing:-.01em}
.lfav-p{margin:0 0 14px;color:#515154;font-size:14px}
.lfav-lbl{display:block;margin:14px 0 6px;font-size:13px;font-weight:600;color:#515154}
.lfav-in{width:100%;height:44px;padding:0 14px;border:1px solid #d2d2d7;border-radius:10px;font:inherit;color:#1d1d1f;background:#fff}
.lfav-in:focus{outline:2px solid #0066cc;outline-offset:1px;border-color:#0066cc}
.lfav-help{margin:6px 0 0;font-size:12.5px;color:#6e6e73}
.lfav-modes{margin:4px 0 0;padding:0;border:0}
.lfav-mode{display:flex;gap:10px;align-items:flex-start;margin:0 0 8px;padding:12px 14px;border:1px solid #d2d2d7;border-radius:12px;cursor:pointer}
.lfav-mode:has(input:checked){border-color:#0066cc;background:#f5f9ff}
.lfav-mode input{margin:4px 0 0;flex:none}
.lfav-mode span{font-size:13.5px;color:#515154}
.lfav-mode strong{display:block;font-size:15px;color:#1d1d1f}
.lfav-say{min-height:1.2em;margin:12px 0 0;font-size:14px;color:#0066cc}
.lfav-acts{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.lfav-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin:0;padding:0 16px;border:1px solid #d2d2d7;border-radius:999px;background:#fff;color:#1d1d1f;font:600 13.5px/1.2 inherit;font-family:inherit;text-decoration:none;cursor:pointer;white-space:nowrap}
.lfav-btn:hover{background:#f5f5f7}
.lfav-btn.is-pri{border-color:#0066cc;background:#0066cc;color:#fff}
.lfav-btn.is-pri:hover{background:#0058b0}
.lfav-btn.is-del{color:#d70015}
.lfav-btn:disabled{opacity:.5;cursor:not-allowed}
.lfav-btn:focus-visible{outline:2px solid #0066cc;outline-offset:2px}
.lfav-top{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:12px;padding:18px 24px;background:#fff;border-bottom:1px solid #e5e5ea}
.lfav-top .lfav-h{margin:0;flex:1}
.lfav-sort{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#515154}
.lfav-sort select{height:36px;padding:0 10px;border:1px solid #d2d2d7;border-radius:8px;font:inherit;background:#fff}
.lfav-hint{margin:16px 24px 0}
.is-list .lfav-say{margin:8px 24px 0}
.lfav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:12px 24px 0;padding:0;list-style:none}
.lfav-card{display:flex;flex-direction:column;border:1px solid #e5e5ea;border-radius:14px;overflow:hidden;background:#fff}
.lfav-thumb{aspect-ratio:16/9;background:#f5f5f7;display:flex;align-items:center;justify-content:center;overflow:hidden}
.lfav-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lfav-thumb-tx{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;padding:12px}
.lfav-chip{display:inline-block;padding:3px 10px;border-radius:999px;background:#fff;border:1px solid #d2d2d7;font-size:12.5px;color:#515154}
.lfav-body{display:flex;flex-direction:column;flex:1;padding:14px 16px 16px}
.lfav-name{margin:0 0 4px;font-size:16px;font-weight:700}
.lfav-meta{margin:0 0 12px;font-size:12.5px;color:#6e6e73}
.lfav-card-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.lfav-card-acts .lfav-btn{min-height:34px;padding:0 12px;font-size:13px}
.lfav-empty{grid-column:1/-1;padding:40px 0;text-align:center;color:#6e6e73}
@media (max-width:767px){
  .lfav-top{flex-wrap:wrap;padding:14px 16px}
  .lfav-hint,.is-list .lfav-say{margin-left:16px;margin-right:16px}
  .lfav-grid{margin:12px 16px 0;grid-template-columns:1fr}
}
@supports not selector(:has(*)){.lfav-mode input:checked+span strong{color:#0066cc}}
