/* =========================================================
   PATCH 2026-05-22 / P46 INSIGHT MODULE CSS
   목적: Insight 독립형 목록/상세 페이지 기본 스타일
   보호: 기존 lp-main.bundle.css를 덮어쓰지 않고 모듈 전용 class만 사용
   ========================================================= */
.lp-insight-body{margin:0;background:#f7f4ef;color:#332b25;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Noto Sans KR",sans-serif;}
.lp-insight-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:18px clamp(18px,4vw,56px);background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(60,45,35,.08)}
.lp-insight-brand{font-weight:800;color:#8f4d5a;text-decoration:none}.lp-insight-header nav{display:flex;gap:14px;flex-wrap:wrap}.lp-insight-header a{color:#493b33;text-decoration:none;font-size:14px}.lp-insight-main{max-width:1120px;margin:0 auto;padding:64px 20px 90px}.lp-insight-badge{display:inline-flex;border:1px solid rgba(143,77,90,.22);border-radius:999px;padding:7px 12px;color:#8f4d5a;font-weight:800;font-size:12px;background:#fff}.lp-insight-list-head{text-align:center;margin-bottom:30px}.lp-insight-list-head h1,.lp-insight-detail-head h1{font-size:clamp(32px,5vw,54px);line-height:1.12;margin:16px 0 12px;letter-spacing:-.04em}.lp-insight-list-head p,.lp-insight-detail-head p{font-size:17px;line-height:1.8;color:#6e625c}.lp-insight-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lp-insight-list-card{background:#fff;border:1px solid rgba(60,45,35,.08);border-radius:24px;padding:24px;box-shadow:0 16px 50px rgba(40,30,20,.07)}.lp-insight-list-card span{font-size:12px;font-weight:800;color:#8f4d5a}.lp-insight-list-card h2{font-size:22px;line-height:1.35;margin:12px 0 10px}.lp-insight-list-card p{font-size:15px;line-height:1.7;color:#6d625c}.lp-insight-list-card a,.lp-insight-source a{display:inline-flex;margin-top:12px;border-radius:12px;padding:11px 14px;background:#8f4d5a;color:#fff;text-decoration:none;font-weight:800}.lp-insight-detail{background:#fff;border-radius:32px;padding:clamp(26px,5vw,64px);box-shadow:0 20px 70px rgba(40,30,20,.08)}.lp-insight-cover{width:100%;max-height:480px;object-fit:cover;border-radius:24px;margin:20px 0}.lp-insight-content{font-size:17px;line-height:1.9;color:#4c423c}.lp-insight-content h2{font-size:28px;line-height:1.35;margin-top:36px}.lp-insight-footer{text-align:center;padding:32px;color:#8a7d75;font-size:13px}@media(max-width:760px){.lp-insight-header{align-items:flex-start;gap:10px;flex-direction:column}.lp-insight-list-grid{grid-template-columns:1fr}.lp-insight-main{padding-top:40px}.lp-insight-detail{border-radius:22px;padding:24px}}

/* =========================================================
   PATCH 2026-05-22 / P46-11 INSIGHT ADMIN CSS
   목적: 고객 사이트 내부 Insight 관리자 화면 스타일 추가
   보호: 기존 프론트 .lp-insight-* 스타일은 유지하고 admin 전용 class만 추가
   ========================================================= */
.lp-insight-admin-body{margin:0;background:#f6f1eb;color:#2e2925;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Noto Sans KR",sans-serif}.lp-insight-admin-top{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 28px;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(65,50,38,.08);backdrop-filter:blur(14px)}.lp-insight-admin-top strong{display:block;font-size:22px;letter-spacing:-.04em}.lp-insight-admin-top small{display:block;color:#887a70;margin-top:4px}.lp-insight-admin-top nav{display:flex;gap:8px;flex-wrap:wrap}.lp-insight-admin-top nav a{border:1px solid #eaded2;background:#fff;border-radius:12px;padding:10px 12px;color:#5a433b;text-decoration:none;font-weight:800}.lp-insight-admin-main{display:grid;grid-template-columns:230px minmax(0,1fr);gap:22px;max-width:1480px;margin:0 auto;padding:24px}.lp-insight-admin-sidebar{position:sticky;top:88px;align-self:start;background:#fff;border:1px solid #eaded2;border-radius:22px;padding:12px;box-shadow:0 14px 45px rgba(40,30,20,.05)}.lp-insight-admin-sidebar a{display:block;padding:13px 14px;border-radius:14px;color:#5c5048;text-decoration:none;font-weight:800}.lp-insight-admin-sidebar a.is-active,.lp-insight-admin-sidebar a:hover{background:#8f4d5a;color:#fff}.lp-insight-admin-content{min-width:0}.lp-insight-admin-head{background:#fff;border:1px solid #eaded2;border-radius:24px;padding:28px;margin-bottom:18px;box-shadow:0 14px 45px rgba(40,30,20,.05)}.lp-insight-admin-head span{display:inline-flex;border:1px solid rgba(143,77,90,.22);background:#fff5f7;color:#8f4d5a;border-radius:999px;padding:7px 12px;font-weight:900;font-size:12px}.lp-insight-admin-head h1{font-size:34px;letter-spacing:-.05em;margin:14px 0 8px}.lp-insight-admin-head p{margin:0;color:#75695f;line-height:1.7}.lp-insight-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.lp-insight-admin-stats div,.lp-insight-admin-card{background:#fff;border:1px solid #eaded2;border-radius:22px;box-shadow:0 14px 45px rgba(40,30,20,.05)}.lp-insight-admin-stats div{padding:20px}.lp-insight-admin-stats small{display:block;color:#8c7e73;margin-bottom:8px}.lp-insight-admin-stats strong{font-size:28px;letter-spacing:-.04em}.lp-insight-admin-card{padding:22px;margin-bottom:18px}.lp-insight-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.lp-insight-card-head h2,.lp-insight-admin-card h2{margin:0 0 14px;font-size:21px;letter-spacing:-.04em}.lp-insight-btn,button.lp-insight-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:13px;background:#8f4d5a;color:#fff!important;padding:12px 15px;text-decoration:none;font-weight:900;cursor:pointer}.lp-insight-btn.ghost{background:#fff;color:#8f4d5a!important;border:1px solid #eaded2}.lp-insight-alert{border-radius:16px;padding:14px 16px;margin-bottom:16px;font-weight:800;background:#eafaf0;border:1px solid #bde9cb;color:#176333}.lp-insight-alert.bad{background:#fff2f2;border-color:#f0c5c5;color:#9b3030}.lp-insight-muted{color:#8b7c70;line-height:1.7}.lp-insight-table{width:100%;border-collapse:separate;border-spacing:0 8px}.lp-insight-table th{text-align:left;font-size:13px;color:#89786e;padding:8px}.lp-insight-table td{background:#fbf8f4;border-top:1px solid #eee3d8;border-bottom:1px solid #eee3d8;padding:12px;vertical-align:middle}.lp-insight-table td:first-child{border-left:1px solid #eee3d8;border-radius:14px 0 0 14px}.lp-insight-table td:last-child{border-right:1px solid #eee3d8;border-radius:0 14px 14px 0}.lp-insight-table small{color:#8c7e73;line-height:1.5}.lp-insight-table a{color:#8f4d5a;font-weight:900}.lp-insight-table input,.lp-insight-table select{width:100%;box-sizing:border-box;border:1px solid #eaded2;border-radius:10px;padding:9px 10px;background:#fff}.lp-insight-filter,.lp-insight-form-inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid #eaded2;border-radius:20px;padding:14px;margin-bottom:18px}.lp-insight-filter select,.lp-insight-filter input,.lp-insight-form-inline input{border:1px solid #eaded2;border-radius:12px;padding:11px 12px;background:#fff}.lp-insight-form label{display:block;font-weight:800;color:#4d4038;margin:0 0 14px}.lp-insight-form input,.lp-insight-form select,.lp-insight-form textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #eaded2;border-radius:13px;padding:12px 13px;background:#fff;color:#2e2925;margin-top:7px;font:inherit;font-weight:500}.lp-insight-form textarea{font-family:"Noto Sans KR",system-ui,sans-serif;line-height:1.7}.lp-insight-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lp-insight-checks{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:14px}.lp-insight-checks label{display:inline-flex;align-items:center;gap:8px;margin:0}.lp-insight-checks input{width:auto;margin:0}.lp-insight-submitbar{position:sticky;bottom:16px;z-index:40;display:flex;justify-content:flex-end;gap:10px;background:rgba(255,255,255,.9);border:1px solid #eaded2;border-radius:18px;padding:12px;backdrop-filter:blur(10px);box-shadow:0 14px 45px rgba(40,30,20,.08)}.lp-insight-actions-inline{display:flex;gap:6px;flex-wrap:wrap}.lp-insight-actions-inline form{display:inline}.lp-insight-actions-inline button{border:1px solid #eaded2;background:#fff;border-radius:10px;padding:8px 9px;color:#8f4d5a;font-weight:800;cursor:pointer}.lp-insight-admin-card pre{background:#2d2723;color:#fff;border-radius:16px;padding:18px;overflow:auto;line-height:1.6}.lp-insight-admin-footer{text-align:center;color:#8c7e73;padding:24px}.lp-insight-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}.lp-insight-gallery figure{margin:0;background:#f7f4ef;border-radius:16px;padding:8px}.lp-insight-gallery img{width:100%;display:block;border-radius:12px}.lp-insight-gallery figcaption{font-size:13px;color:#7c6e64;margin-top:6px}.lp-insight-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.lp-insight-actions a{display:inline-flex;border-radius:12px;padding:11px 14px;background:#8f4d5a;color:#fff;text-decoration:none;font-weight:800}.lp-insight-card-thumb{width:100%;aspect-ratio:5/3;object-fit:cover;border-radius:18px;margin-bottom:14px}.feedhome-insight-thumb{width:100%;aspect-ratio:5/3;object-fit:cover;border-radius:16px;margin-bottom:12px}@media(max-width:980px){.lp-insight-admin-main{grid-template-columns:1fr}.lp-insight-admin-sidebar{position:static;display:flex;overflow:auto}.lp-insight-admin-sidebar a{white-space:nowrap}.lp-insight-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-insight-form-grid{grid-template-columns:1fr}.lp-insight-gallery{grid-template-columns:1fr 1fr}}@media(max-width:620px){.lp-insight-admin-main{padding:14px}.lp-insight-admin-top{padding:14px;align-items:flex-start;flex-direction:column}.lp-insight-admin-stats{grid-template-columns:1fr}.lp-insight-table{display:block;overflow-x:auto}.lp-insight-gallery{grid-template-columns:1fr}}


/* PATCH 2026-05-22 / P46-11-2 DB diagnostic UI */
.lp-insight-admin-stats.compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));}
.lp-insight-alert a{font-weight:800;text-decoration:underline;color:inherit;}


/* =========================================================
   PATCH 2026-05-22 / P46-12-1 INSIGHT OPS UI
   목적: 상태/액션 분리, 이미지 업로드 관리, SQL 적용 화면 보강
   ========================================================= */
.lp-insight-field-help{display:block;margin-top:6px;color:#8b7c70;font-size:12px;font-weight:600;line-height:1.5}.lp-insight-inline-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.lp-insight-btn.ghost.danger,.lp-insight-actions-inline button.danger{color:#a73d3d!important;border-color:#efc7c7;background:#fff8f8}.lp-insight-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.lp-insight-status.is-on{background:#eafaf0;color:#176333;border:1px solid #bde9cb}.lp-insight-status.is-off{background:#f4f0ec;color:#7b6d64;border:1px solid #e5d8ca}.lp-insight-status.is-featured{margin-top:5px;background:#fff5d9;color:#7a5700;border:1px solid #edd28b}.lp-insight-asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.lp-insight-asset-grid article{border:1px solid #eaded2;border-radius:18px;background:#fbf8f4;padding:12px}.lp-insight-asset-grid img{width:100%;aspect-ratio:5/3;object-fit:cover;border-radius:14px;background:#eee}.lp-insight-asset-grid strong{display:block;margin-top:10px}.lp-insight-asset-grid small{display:block;color:#89786e;margin-top:4px}.lp-insight-asset-grid p{color:#6f6259;line-height:1.5}.lp-insight-asset-grid form{display:flex;gap:8px;flex-wrap:wrap}.lp-insight-asset-grid button{border:1px solid #eaded2;background:#fff;border-radius:10px;padding:8px 9px;color:#8f4d5a;font-weight:800;cursor:pointer}.lp-insight-check-label{display:flex!important;align-items:center;gap:8px;margin-top:28px!important}.lp-insight-check-label input{width:auto!important;margin:0!important}@media(max-width:980px){.lp-insight-asset-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.lp-insight-asset-grid{grid-template-columns:1fr}}

/* =========================================================
   PATCH 2026-05-22 / P46-12-2 INSIGHT ADMIN UI GUIDE
   목적: 등록/수정/이미지/SQL 화면의 안내 구조와 시각적 흐름 정리
   보호: 기존 P46-12-1 기능 class 유지, 추가 class만 보강
   ========================================================= */
.lp-insight-editor-head{position:relative;overflow:hidden}.lp-insight-head-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.lp-insight-guide-card{background:linear-gradient(135deg,#fff 0%,#fff8f4 100%)}.lp-insight-guide-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}.lp-insight-guide-head h2{margin:0;font-size:21px;letter-spacing:-.04em}.lp-insight-guide-head p{margin:2px 0 0;color:#7d6e64;line-height:1.65}.lp-insight-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.lp-insight-guide-grid article{border:1px solid #eaded2;background:rgba(255,255,255,.86);border-radius:18px;padding:16px}.lp-insight-guide-grid strong{display:block;font-size:15px;color:#8f4d5a;margin-bottom:8px}.lp-insight-guide-grid p{margin:0;color:#6f6259;line-height:1.55;font-size:13px}.lp-insight-form-section{padding:24px}.lp-insight-section-intro{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f0e6dc}.lp-insight-section-intro h2{margin:0 0 4px!important}.lp-insight-section-intro p{margin:0;color:#817369;line-height:1.65}.lp-insight-step{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:34px;border-radius:999px;background:#8f4d5a;color:#fff;font-weight:900;font-size:13px}.lp-insight-editor-form label{position:relative}.lp-insight-cover-preview{display:grid;grid-template-columns:180px minmax(0,1fr);gap:14px;align-items:center;margin:8px 0 18px;padding:12px;border:1px solid #eaded2;background:#fbf8f4;border-radius:18px}.lp-insight-cover-preview img{width:180px;aspect-ratio:5/3;object-fit:cover;border-radius:14px;background:#eee}.lp-insight-cover-preview p{margin:0;color:#7d6e64;font-weight:800}.lp-insight-visibility-box{padding:14px 16px;border:1px solid #eaded2;background:#fbf8f4;border-radius:16px}.lp-insight-tool-card .lp-insight-card-head p{margin:6px 0 0}.lp-insight-actions-inline{align-items:flex-start}.lp-insight-actions-inline a{display:inline-flex;align-items:center;min-height:34px}.lp-insight-actions-inline button{min-height:34px}.lp-insight-form textarea::placeholder,.lp-insight-form input::placeholder{color:#b2a69e}.lp-insight-submitbar .lp-insight-btn{min-width:112px}@media(max-width:1100px){.lp-insight-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.lp-insight-guide-head{display:block}.lp-insight-guide-grid{grid-template-columns:1fr}.lp-insight-section-intro{display:block}.lp-insight-step{margin-bottom:10px}.lp-insight-cover-preview{grid-template-columns:1fr}.lp-insight-cover-preview img{width:100%}}

/* =========================================================
   PATCH 2026-05-22 / P46-12-3 INSIGHT GALLERY BOARD UI
   목적: 갤러리 게시판형 이미지/동영상 관리 UI, 다중 업로드, 드래그 정렬, 개별 제목/설명 입력
   보호: 기존 admin class 유지, gallery board 전용 class만 추가
   ========================================================= */
.lp-insight-gallery-head h1{letter-spacing:-.05em}.lp-insight-gallery-workspace{padding:0;overflow:hidden}.lp-insight-gallery-toolbar{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:12px 18px;border-bottom:1px solid #eaded2;background:#fff}.lp-insight-gallery-add-title{font-weight:900;color:#4d4038}.lp-insight-gallery-tabs{display:flex;justify-content:center}.lp-insight-gallery-tabs button{border:1px solid #d8dfea;background:#fff;padding:12px 34px;font-weight:900;color:#4e5863;cursor:default}.lp-insight-gallery-tabs button:first-child{border-radius:8px 0 0 8px}.lp-insight-gallery-tabs button:last-child{border-radius:0 8px 8px 0}.lp-insight-gallery-tabs button.is-active{background:#286bf0;border-color:#286bf0;color:#fff}.lp-insight-gallery-hint{text-align:right;color:#b0a59c;font-weight:700}.lp-insight-gallery-upload-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px;padding:20px;background:#fbf8f4;border-bottom:1px solid #eaded2}.lp-insight-gallery-dropzone,.lp-insight-gallery-video-form{background:#fff;border:1px dashed #d8c9bd;border-radius:18px;padding:18px;display:grid;gap:12px}.lp-insight-gallery-file-label{display:flex!important;align-items:center;justify-content:center;min-height:74px;border:1px dashed #bfaea0;border-radius:16px;background:#fffaf5;color:#8f4d5a;font-weight:900;cursor:pointer}.lp-insight-gallery-file-label input{display:none!important}.lp-insight-gallery-dropzone label,.lp-insight-gallery-video-form label{margin:0}.lp-insight-gallery-dropzone input,.lp-insight-gallery-video-form input,.lp-insight-gallery-video-form textarea{box-sizing:border-box;width:100%;border:1px solid #eaded2;border-radius:12px;padding:12px;background:#fff;font:inherit}.lp-insight-video-url-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px}.lp-insight-gallery-summary{display:flex;gap:10px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid #eaded2;background:#fff}.lp-insight-gallery-summary span{display:inline-flex;border:1px solid #eaded2;background:#fbf8f4;border-radius:999px;padding:8px 12px;font-weight:900;color:#6f6259}.lp-insight-gallery-empty{margin:24px;border:1px solid #eaded2;background:#fff;border-radius:18px;padding:24px;text-align:center}.lp-insight-gallery-empty strong{display:block;font-size:18px}.lp-insight-gallery-empty p{color:#7d6e64}.lp-insight-gallery-edit-form{padding:0}.lp-insight-gallery-board{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:2px;background:#f3eee8;padding:2px}.lp-insight-gallery-tile{background:#fff;border:1px solid transparent;min-width:0;cursor:grab;transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease}.lp-insight-gallery-tile.is-dragging{opacity:.45;transform:scale(.98);box-shadow:0 12px 30px rgba(0,0,0,.18)}.lp-insight-gallery-thumb{position:relative;background:#ddd;aspect-ratio:1/1;overflow:hidden}.lp-insight-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.lp-insight-cover-radio{position:absolute;left:8px;top:8px;display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,.92);border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900;color:#513f38}.lp-insight-cover-radio input{margin:0}.lp-insight-delete-floating{position:absolute;right:8px;top:8px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(40,35,32,.72);color:#fff;font-size:18px;font-weight:900;line-height:1;cursor:pointer}.lp-insight-video-card{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,#2d2723,#8f4d5a);color:#fff;padding:16px}.lp-insight-video-card span{display:inline-flex;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900;letter-spacing:.08em}.lp-insight-video-card strong{display:block;margin-top:8px;font-size:15px;word-break:break-all}.lp-insight-gallery-meta{padding:10px;display:grid;gap:8px}.lp-insight-gallery-meta input,.lp-insight-gallery-meta textarea{box-sizing:border-box;width:100%;border:0;border-bottom:1px solid #ded4c9;border-radius:0;background:transparent;padding:8px 4px;font:inherit}.lp-insight-gallery-meta textarea{resize:vertical;line-height:1.5;min-height:58px}.lp-insight-gallery-meta-grid{display:grid;grid-template-columns:minmax(0,1fr) 74px;gap:8px}.lp-insight-gallery-url{font-size:12px;color:#8f4d5a;font-weight:900;word-break:break-all}.lp-insight-gallery-board + .lp-insight-submitbar{margin:16px}.lp-insight-admin-sidebar a[href*="assets.php"]{display:none}@media(max-width:1280px){.lp-insight-gallery-board{grid-template-columns:repeat(4,minmax(150px,1fr))}.lp-insight-gallery-upload-panel{grid-template-columns:1fr}}@media(max-width:860px){.lp-insight-gallery-toolbar{grid-template-columns:1fr}.lp-insight-gallery-hint{text-align:left}.lp-insight-gallery-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.lp-insight-gallery-board{grid-template-columns:1fr}.lp-insight-video-url-row{grid-template-columns:1fr}.lp-insight-gallery-tabs button{padding:10px 18px}}


/* =========================================================
   PATCH 2026-05-22 / P46-12-4 GALLERY COVER + VIDEO THUMB FIX
   목적: 동영상 썸네일 표시, 대표 이미지 즉시 지정 버튼, 드래그/체크 충돌 완화
   보호: 기존 P46-12-3 갤러리 레이아웃 유지, gallery board 전용 class만 추가
   ========================================================= */
.lp-insight-gallery-thumb .lp-insight-video-thumb{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background-size:cover;background-position:center;color:#fff;position:relative;padding:16px;isolation:isolate}
.lp-insight-gallery-thumb .lp-insight-video-thumb:before{content:"";position:absolute;inset:0;background:rgba(20,15,13,.48);z-index:-1}
.lp-insight-gallery-thumb .lp-insight-video-thumb span{display:inline-flex;border:1px solid rgba(255,255,255,.72);border-radius:999px;padding:4px 9px;font-size:11px;font-weight:900;letter-spacing:.08em;background:rgba(0,0,0,.18)}
.lp-insight-gallery-thumb .lp-insight-video-thumb strong{display:block;margin-top:8px;font-size:15px;word-break:break-all;text-shadow:0 1px 8px rgba(0,0,0,.45)}
.lp-insight-cover-action{position:absolute;left:8px;bottom:8px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:#8f4d5a;font-weight:900;padding:7px 10px;font-size:12px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.14)}
.lp-insight-cover-action.is-cover{background:#8f4d5a;color:#fff}
.lp-insight-gallery-tile:has(.lp-insight-cover-action.is-cover){border-color:#8f4d5a;box-shadow:0 0 0 2px rgba(143,77,90,.16)}
.lp-insight-cover-radio{z-index:3}.lp-insight-cover-action{z-index:3}.lp-insight-delete-floating{z-index:4}
.lp-insight-gallery-tile input,.lp-insight-gallery-tile textarea,.lp-insight-gallery-tile button,.lp-insight-gallery-tile a,.lp-insight-gallery-tile label{cursor:auto}


/* =========================================================
   PATCH 2026-05-22 / P46-12-5 GALLERY SINGLE REPLACE + THUMB REFRESH
   목적: 갤러리 항목별 이미지 교체 버튼, 동영상 썸네일 재계산 버튼 UI
   보호: 기존 P46-12-4 갤러리 카드 레이아웃 유지
   ========================================================= */
.lp-insight-replace-action{position:absolute;right:8px;bottom:8px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:#4c4039;font-weight:900;padding:7px 10px;font-size:12px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.14);z-index:3}
.lp-insight-replace-action:hover{background:#fff;color:#8f4d5a}
.lp-insight-inline-form{display:inline-flex;margin:0}
.lp-insight-mini-btn{border:1px solid #eaded2;background:#fff;color:#8f4d5a;border-radius:999px;padding:8px 12px;font-weight:900;cursor:pointer}
.lp-insight-mini-btn:hover{background:#fff5f7}
.lp-insight-gallery-thumb .lp-insight-video-thumb{background-color:#6f3f49}

/* =========================================================
   PATCH 2026-05-22 / P46-12-6 INSIGHT PORTFOLIO BOARD UI
   목적: 포트폴리오/유형별 샘플 카드형 게시판 관리 UI, 드래그 정렬, 대표 이미지 기반 카드 관리
   보호: 기존 gallery board class 유지, portfolio board 전용 class만 추가
   ========================================================= */
.lp-insight-portfolio-head .lp-insight-head-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.lp-insight-portfolio-meta-card textarea{line-height:1.7}.lp-insight-portfolio-edit-card details{margin-top:16px;border:1px solid #eaded2;border-radius:16px;background:#fbf8f4;padding:14px}.lp-insight-portfolio-edit-card details summary{font-weight:900;color:#8f4d5a;cursor:pointer}.lp-insight-portfolio-seo label{margin-top:12px}.lp-insight-portfolio-board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:16px}.lp-insight-portfolio-card{position:relative;background:#fff;border:1px solid #eaded2;border-radius:22px;overflow:hidden;box-shadow:0 12px 36px rgba(40,30,20,.06);cursor:grab;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.lp-insight-portfolio-card.is-dragging{opacity:.45;transform:scale(.98)}.lp-insight-portfolio-thumb{position:relative;aspect-ratio:5/3;background:#efe7df;overflow:hidden}.lp-insight-portfolio-thumb img{width:100%;height:100%;object-fit:cover;display:block}.lp-insight-portfolio-thumb span{position:absolute;left:14px;top:14px;display:inline-flex;background:#fff;border:1px solid rgba(70,55,45,.08);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;color:#322b26;box-shadow:0 8px 18px rgba(0,0,0,.08)}.lp-insight-portfolio-noimage{height:100%;display:flex;align-items:center;justify-content:center;color:#9b8f86;font-weight:900;background:linear-gradient(135deg,#f6f1eb,#e8ddd2)}.lp-insight-portfolio-card-body{padding:18px}.lp-insight-portfolio-card-body small{display:block;color:#8b7b70;font-weight:800;margin-bottom:8px}.lp-insight-portfolio-card-body h3{margin:0 0 10px;font-size:22px;letter-spacing:-.04em}.lp-insight-portfolio-card-body p{margin:0;color:#6f6259;line-height:1.65;min-height:52px}.lp-insight-portfolio-url{margin-top:12px;color:#8f4d5a;font-size:12px;font-weight:900;word-break:break-all}.lp-insight-portfolio-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.lp-insight-portfolio-card-actions a{display:inline-flex;border:1px solid #eaded2;border-radius:999px;padding:8px 11px;background:#fff;color:#8f4d5a;text-decoration:none;font-weight:900;font-size:12px}.lp-insight-portfolio-row-actions{display:flex;gap:8px;padding:0 18px 18px}.lp-insight-portfolio-row-actions form{margin:0}.lp-insight-portfolio-row-actions button{border:1px solid #eaded2;border-radius:999px;background:#fff;color:#8f4d5a;padding:8px 11px;font-weight:900;cursor:pointer}.lp-insight-portfolio-row-actions button.danger{color:#a83434}.lp-insight-portfolio-state{position:absolute;right:12px;top:12px;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.12)}.lp-insight-portfolio-state.is-on{background:#8f4d5a}.lp-insight-portfolio-state.is-off{background:#81766f}/* PATCH P46-12-7: 포트폴리오 액션은 손가락 커서, 입력칸은 텍스트 커서로 분리 */
.lp-insight-portfolio-card a,.lp-insight-portfolio-card button{cursor:pointer}.lp-insight-portfolio-card input,.lp-insight-portfolio-card textarea,.lp-insight-portfolio-card select{cursor:text}.lp-insight-portfolio-card .lp-insight-portfolio-thumb,.lp-insight-portfolio-card .lp-insight-portfolio-card-body{cursor:grab}.lp-insight-portfolio-card.is-dragging .lp-insight-portfolio-thumb,.lp-insight-portfolio-card.is-dragging .lp-insight-portfolio-card-body{cursor:grabbing}@media(max-width:1280px){.lp-insight-portfolio-board{grid-template-columns:repeat(3,minmax(220px,1fr))}}@media(max-width:900px){.lp-insight-portfolio-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.lp-insight-portfolio-board{grid-template-columns:1fr}}

/* PATCH 2026-05-22 / P46-12-7 PORTFOLIO ORDER/CURSOR FIX */
.lp-insight-portfolio-row-actions button,.lp-insight-portfolio-card-actions a,.lp-insight-submitbar button{cursor:pointer!important}.lp-insight-portfolio-card.is-dragging{box-shadow:0 18px 42px rgba(40,30,20,.16)}


/* =========================================================
   PATCH 2026-05-22 / P46-12-8 GALLERY MENU + PLANNING NOTE BOARD
   목적: 갤러리 메뉴 화면과 기획노트 전용 게시판 UI 정리
   보호: 기존 gallery/portfolio board 스타일 유지, 신규 notes/gallery list class만 추가
   ========================================================= */
.lp-insight-gallery-list,.lp-insight-notes-list{display:grid;gap:12px}.lp-insight-note-row{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid #eaded2;background:#fbf8f4;border-radius:18px;padding:12px}.lp-insight-note-row.is-hidden{opacity:.65}.lp-insight-note-thumb{position:relative;aspect-ratio:5/3;border-radius:14px;overflow:hidden;background:#efe7df}.lp-insight-note-thumb img{width:100%;height:100%;object-fit:cover;display:block}.lp-insight-note-main strong{display:block;font-size:20px;letter-spacing:-.04em;margin-bottom:8px}.lp-insight-note-main p{margin:0 0 8px;color:#6f6259;line-height:1.6}.lp-insight-note-main small{color:#8c7e73;font-weight:800}.lp-insight-note-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:300px}.lp-insight-mini-btn.danger{color:#a83434}.lp-insight-basic-editor{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.lp-insight-sql-textarea{box-sizing:border-box;width:100%;border:1px solid #eaded2;border-radius:16px;background:#171615;color:#f7efe7;padding:16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.6}.lp-insight-note-cover-form{position:absolute;left:8px;bottom:8px}.lp-insight-note-cover-form label{display:inline-flex;cursor:pointer;border-radius:999px;background:rgba(255,255,255,.94);color:#8f4d5a;font-weight:900;font-size:12px;padding:7px 10px;box-shadow:0 8px 18px rgba(0,0,0,.12)}.lp-insight-note-cover-form input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.lp-insight-gallery-create-card textarea,.lp-insight-note-form-card textarea{line-height:1.7}.lp-insight-notes-head .lp-insight-head-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}@media(max-width:900px){.lp-insight-note-row{grid-template-columns:1fr}.lp-insight-note-actions{justify-content:flex-start;max-width:none}.lp-insight-note-thumb{max-width:360px}}


/* =========================================================
   PATCH 2026-05-22 / P46-12-9 NOTES/GALLERY FORM UI FIX
   목적: 기획노트·갤러리 등록 화면의 입력폼 산만함 보정, OG 이미지 자동 대체 안내 UI 정리
   보호: 기존 포트폴리오·갤러리 자산관리 기능과 DB 구조 변경 없음
   ========================================================= */
.lp-insight-guide-card{padding:24px 26px}.lp-insight-guide-head{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start;margin-bottom:18px}.lp-insight-guide-head h2{margin:0;font-size:23px;letter-spacing:-.04em}.lp-insight-guide-head p{margin:0;color:#75695f;line-height:1.75}.lp-insight-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.lp-insight-guide-grid article{border:1px solid #eaded2;background:#fff;border-radius:18px;padding:18px;min-height:96px}.lp-insight-guide-grid strong{display:block;color:#8f4d5a;margin-bottom:8px}.lp-insight-guide-grid p{margin:0;color:#6f6259;line-height:1.65;font-size:14px}
.lp-insight-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;align-items:start}.lp-insight-form-grid label{display:flex;flex-direction:column;gap:7px;font-weight:900;color:#433832;line-height:1.35}.lp-insight-form-grid label small{font-weight:700;color:#9a8b80}.lp-insight-form-grid .wide{grid-column:1/-1}.lp-insight-form-grid input,.lp-insight-form-grid select,.lp-insight-form-grid textarea{box-sizing:border-box;width:100%;border:1px solid #eaded2;border-radius:14px;background:#fff;padding:12px 13px;color:#2e2925;font:inherit;font-weight:500;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.lp-insight-form-grid textarea{resize:vertical;min-height:96px;line-height:1.72}.lp-insight-form-grid input:focus,.lp-insight-form-grid select:focus,.lp-insight-form-grid textarea:focus{border-color:#8f4d5a;box-shadow:0 0 0 3px rgba(143,77,90,.09)}.lp-insight-form-grid input[type="file"]{padding:10px;background:#fbf8f4}.lp-insight-form-grid input[type="checkbox"]{width:auto;accent-color:#8f4d5a}.lp-insight-check{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:8px;border:1px solid #eaded2;border-radius:14px;background:#fbf8f4;padding:12px 13px}.lp-insight-note-form-card,.lp-insight-gallery-create-card{padding:26px}.lp-insight-note-form-card h2,.lp-insight-gallery-create-card h2{margin-bottom:8px}.lp-insight-note-form-card .lp-insight-muted,.lp-insight-gallery-create-card .lp-insight-muted{margin:0 0 20px}.lp-insight-basic-editor{min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Noto Sans KR",monospace!important;background:#fff}.lp-insight-sql-textarea{min-height:210px}.lp-insight-submitbar.wide{grid-column:1/-1}.lp-insight-submitbar{margin-top:6px}.lp-insight-note-sql-card code{background:#f4ece5;border:1px solid #eaded2;border-radius:8px;padding:2px 6px;color:#8f4d5a;font-weight:900}.lp-insight-note-row{transition:box-shadow .14s ease,transform .14s ease}.lp-insight-note-row:hover{box-shadow:0 12px 30px rgba(40,30,20,.06);transform:translateY(-1px)}.lp-insight-mini-btn,.lp-insight-note-cover-form label{cursor:pointer!important}.lp-insight-gallery-create-card .lp-insight-form-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
@media(max-width:980px){.lp-insight-guide-head{grid-template-columns:1fr}.lp-insight-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-insight-form-grid,.lp-insight-gallery-create-card .lp-insight-form-grid{grid-template-columns:1fr}}@media(max-width:620px){.lp-insight-guide-grid{grid-template-columns:1fr}.lp-insight-note-form-card,.lp-insight-gallery-create-card{padding:20px}}


/* =========================================================
   PATCH 2026-05-22 / P46-12-11 ADMIN FORM UI CACHE FIX
   목적: notes/gallery 등록폼이 브라우저 기본 UI처럼 보이는 문제 보정
   범위: modules/insight 관리자 화면 전용, 메인 사이트/런타임 디자인 미수정
   보호: /sonya/index.php, .htaccess, site-seo, 기존 DB 구조 미수정
   ========================================================= */
.lp-insight-admin-content .lp-insight-form-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px 22px !important;
  align-items:start !important;
}
.lp-insight-admin-content .lp-insight-form-grid > label{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  margin:0 !important;
  font-weight:900 !important;
  color:#433832 !important;
  line-height:1.35 !important;
}
.lp-insight-admin-content .lp-insight-form-grid > label.wide,
.lp-insight-admin-content .lp-insight-form-grid > .wide{
  grid-column:1 / -1 !important;
}
.lp-insight-admin-content .lp-insight-form-grid input:not([type="checkbox"]):not([type="radio"]),
.lp-insight-admin-content .lp-insight-form-grid select,
.lp-insight-admin-content .lp-insight-form-grid textarea,
.lp-insight-admin-content .lp-insight-admin-card form textarea.lp-insight-sql-textarea{
  appearance:none !important;
  -webkit-appearance:none !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:100% !important;
  border:1px solid #eaded2 !important;
  border-radius:14px !important;
  background:#fff !important;
  padding:12px 13px !important;
  color:#2e2925 !important;
  font:inherit !important;
  font-weight:500 !important;
  line-height:1.55 !important;
  outline:none !important;
  box-shadow:none !important;
  transition:border-color .16s ease, box-shadow .16s ease !important;
}
.lp-insight-admin-content .lp-insight-form-grid textarea{
  resize:vertical !important;
  min-height:104px !important;
  line-height:1.72 !important;
}
.lp-insight-admin-content .lp-insight-form-grid .lp-insight-basic-editor{
  min-height:300px !important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Noto Sans KR",monospace !important;
}
.lp-insight-admin-content .lp-insight-form-grid input:focus,
.lp-insight-admin-content .lp-insight-form-grid select:focus,
.lp-insight-admin-content .lp-insight-form-grid textarea:focus,
.lp-insight-admin-content .lp-insight-admin-card form textarea.lp-insight-sql-textarea:focus{
  border-color:#8f4d5a !important;
  box-shadow:0 0 0 3px rgba(143,77,90,.10) !important;
}
.lp-insight-admin-content .lp-insight-form-grid input[type="file"]{
  background:#fbf8f4 !important;
  cursor:pointer !important;
}
.lp-insight-admin-content .lp-insight-form-grid input[type="checkbox"],
.lp-insight-admin-content .lp-insight-form-grid input[type="radio"]{
  width:auto !important;
  margin:0 !important;
  accent-color:#8f4d5a !important;
}
.lp-insight-admin-content .lp-insight-form-grid .lp-insight-check{
  display:inline-flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:9px !important;
  border:1px solid #eaded2 !important;
  border-radius:14px !important;
  background:#fbf8f4 !important;
  padding:12px 13px !important;
  min-height:48px !important;
}
.lp-insight-admin-content .lp-insight-note-form-card,
.lp-insight-admin-content .lp-insight-gallery-create-card{
  padding:28px !important;
}
.lp-insight-admin-content .lp-insight-note-form-card h2,
.lp-insight-admin-content .lp-insight-gallery-create-card h2{
  margin:0 0 8px !important;
}
.lp-insight-admin-content .lp-insight-note-form-card .lp-insight-muted,
.lp-insight-admin-content .lp-insight-gallery-create-card .lp-insight-muted{
  margin:0 0 22px !important;
}
.lp-insight-admin-content .lp-insight-submitbar.wide{
  grid-column:1 / -1 !important;
}
.lp-insight-admin-content .lp-insight-sql-textarea{
  min-height:230px !important;
  background:#211d1b !important;
  color:#fff !important;
  border-color:#211d1b !important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace !important;
}
@media(max-width:980px){
  .lp-insight-admin-content .lp-insight-form-grid,
  .lp-insight-admin-content .lp-insight-gallery-create-card .lp-insight-form-grid{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   PATCH 2026-05-22 / P46-12-12 NOTES ORDER UI
   목적: 기획노트 적용 확인 화면에서 드래그 순서 변경 + 저장 버튼 UX 보강
   보호: 기존 기획노트 수정/삭제/이미지 교체 form 구조 유지
   ========================================================= */
.lp-insight-note-order-card .lp-insight-card-head{align-items:flex-start}.lp-insight-order-form{display:none}.lp-insight-notes-sortable .lp-insight-note-row{cursor:grab;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.lp-insight-notes-sortable .lp-insight-note-row.is-dragging{opacity:.45;transform:scale(.99);box-shadow:0 18px 42px rgba(40,30,20,.14);cursor:grabbing}.lp-insight-note-row a,.lp-insight-note-row button,.lp-insight-note-row label{cursor:pointer!important}.lp-insight-note-row input,.lp-insight-note-row textarea,.lp-insight-note-row select{cursor:text}.lp-insight-note-main,.lp-insight-note-thumb{cursor:grab}.lp-insight-note-row.is-dragging .lp-insight-note-main,.lp-insight-note-row.is-dragging .lp-insight-note-thumb{cursor:grabbing}.lp-note-sort-view{display:inline-flex;min-width:24px;justify-content:center;border-radius:999px;background:#f2e8df;color:#8f4d5a;padding:2px 7px;font-weight:900}.lp-insight-note-order-card .lp-insight-submitbar{margin-top:18px;border-top:1px solid #eaded2;padding-top:16px}.lp-insight-note-order-card .lp-insight-btn{cursor:pointer!important}


/* =========================================================
   PATCH 2026-05-22 / P46-12-14 NOTES ORDER STABLE BASE
   목적: P46-12-12 안정 UI 기준 유지, 기획노트 카드 드래그 정렬 표시 보강
   보호: 12-13 핸들 구조는 사용하지 않고 기존 카드 행 드래그 방식을 유지
   ========================================================= */
.lp-insight-note-order-card .lp-insight-card-head p::after{content:"  · 카드의 이미지/제목 영역을 잡고 위아래로 이동할 수 있습니다.";color:#8f4d5a;font-weight:800}
.lp-insight-notes-sortable .lp-insight-note-row{cursor:grab!important}
.lp-insight-notes-sortable .lp-insight-note-row::before{content:"↕";display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:#fff;border:1px solid #eaded2;color:#8f4d5a;font-weight:900;box-shadow:0 6px 14px rgba(40,30,20,.06)}
.lp-insight-notes-sortable .lp-insight-note-row{grid-template-columns:32px 170px minmax(0,1fr) auto}
.lp-insight-note-row.is-dragging{opacity:.5!important}
@media(max-width:900px){.lp-insight-notes-sortable .lp-insight-note-row{grid-template-columns:32px 1fr}.lp-insight-notes-sortable .lp-insight-note-thumb,.lp-insight-notes-sortable .lp-insight-note-main,.lp-insight-notes-sortable .lp-insight-note-actions{grid-column:1 / -1}}


/* =========================================================
   PATCH 2026-05-22 / P46-12-16 NOTE NUMERIC ORDER STABLE
   목적: 기획노트 정렬은 드래그 대신 숫자 입력 방식으로 안정화
   보호: 기존 갤러리/포트폴리오 정렬 기능 영향 없음
   ========================================================= */
.lp-insight-notes-numeric .lp-insight-note-row{
  cursor:default!important;
  grid-template-columns:170px minmax(0,1fr) 130px auto!important;
}
.lp-insight-notes-numeric .lp-insight-note-row::before{content:none!important;display:none!important}
.lp-insight-notes-numeric .lp-insight-note-thumb,
.lp-insight-notes-numeric .lp-insight-note-main{cursor:default!important}
.lp-insight-note-order-input label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:#8c7e73;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.lp-insight-note-order-input input{
  box-sizing:border-box;
  width:96px;
  height:40px;
  border:1px solid #eaded2;
  border-radius:12px;
  background:#fff;
  color:#2e2925;
  padding:8px 10px;
  font-weight:900;
  font-size:15px;
  text-align:center;
}
.lp-insight-note-order-input input:focus{
  outline:none;
  border-color:#8f4d5a;
  box-shadow:0 0 0 3px rgba(143,77,90,.10);
}
.lp-insight-note-order-card .lp-insight-card-head p::after{
  content:"  · 숫자가 낮을수록 먼저 노출됩니다."!important;
  color:#8f4d5a;
  font-weight:800;
}
@media(max-width:900px){
  .lp-insight-notes-numeric .lp-insight-note-row{grid-template-columns:1fr!important}
  .lp-insight-note-order-input input{width:140px}
}

/* =========================================================
   PATCH 2026-05-22 / P46-12-18 NOTES WYSIWYG + APPLY PREVIEW
   목적: 기획노트 본문을 위지윅 편집 화면으로 제공하고, 적용 보기 버튼 UX 보강
   보호: P46-12-16 숫자 정렬 안정 구조 유지, DB 구조 변경 없음
   ========================================================= */
.lp-insight-wysiwyg-field{display:block!important}
.lp-insight-field-title{display:block!important;margin:0 0 8px!important;color:#2e2925!important;font-weight:900!important;font-size:15px!important}
.lp-insight-field-help{margin:0 0 12px!important;color:#8c7e73!important;font-size:14px!important;line-height:1.7!important}
.lp-insight-wysiwyg{border:1px solid #eaded2!important;border-radius:18px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 10px 26px rgba(40,30,20,.04)!important}
.lp-insight-wysiwyg-toolbar{display:flex!important;flex-wrap:wrap!important;gap:8px!important;padding:12px!important;background:#fbf8f4!important;border-bottom:1px solid #eaded2!important}
.lp-insight-wysiwyg-toolbar button{appearance:none!important;border:1px solid #eaded2!important;background:#fff!important;color:#8f4d5a!important;border-radius:999px!important;padding:8px 12px!important;font-weight:900!important;font-size:13px!important;cursor:pointer!important;line-height:1!important}
.lp-insight-wysiwyg-toolbar button:hover{background:#8f4d5a!important;border-color:#8f4d5a!important;color:#fff!important}
.lp-insight-wysiwyg-editor{box-sizing:border-box!important;width:100%!important;min-height:360px!important;padding:22px!important;background:#fff!important;color:#2e2925!important;line-height:1.85!important;font-size:16px!important;outline:none!important}
.lp-insight-wysiwyg-editor:empty:before{content:attr(data-placeholder);color:#aaa099!important}
.lp-insight-wysiwyg-editor h2{font-size:25px!important;line-height:1.35!important;margin:24px 0 12px!important;color:#2e2925!important;font-weight:900!important}
.lp-insight-wysiwyg-editor h3{font-size:20px!important;line-height:1.45!important;margin:20px 0 10px!important;color:#2e2925!important;font-weight:900!important}
.lp-insight-wysiwyg-editor p{margin:0 0 14px!important}
.lp-insight-wysiwyg-editor ul,.lp-insight-wysiwyg-editor ol{margin:8px 0 16px 24px!important;padding:0!important}
.lp-insight-wysiwyg-editor img{max-width:100%!important;height:auto!important;border-radius:16px!important;display:block!important;margin:18px 0!important}
.lp-insight-wysiwyg-source{display:none!important;box-sizing:border-box!important;width:100%!important;min-height:260px!important;border:0!important;border-top:1px solid #eaded2!important;border-radius:0!important;background:#211d1b!important;color:#fff!important;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;font-size:13px!important;line-height:1.7!important;padding:18px!important}
.lp-insight-wysiwyg.is-source-open .lp-insight-wysiwyg-editor{display:none!important}
.lp-insight-wysiwyg.is-source-open .lp-insight-wysiwyg-source{display:block!important}
.lp-insight-note-actions .lp-insight-mini-btn[target="_blank"]::after{content:" ↗";font-weight:900}

/* PATCH 2026-05-22 / P46-12-19 NOTE WYSIWYG FORCE MARKER */

/* =========================================================
   PATCH 2026-05-22 / P46-13 BLOG RSS UI
   목적: 블로그 RSS 소스 관리, 후보 확인, 선택 저장 화면 정리
   보호: modules/insight 관리자 화면에만 적용
   ========================================================= */
.lp-insight-source-list{display:grid;gap:14px}
.lp-insight-source-card{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,.5fr) auto;gap:16px;align-items:center;padding:18px;border:1px solid #eadbd0;border-radius:18px;background:#fffdfb}
.lp-insight-source-card p{margin:6px 0;color:#6f625b;word-break:break-all}
.lp-insight-source-card small{color:#8b7b73}
.lp-insight-rss-candidate-list{display:grid;gap:14px;margin-top:16px}
.lp-insight-rss-candidate{display:grid;grid-template-columns:82px 150px minmax(0,1fr);gap:16px;align-items:center;padding:16px;border:1px solid #eadbd0;border-radius:18px;background:#fffdfb}
.lp-insight-rss-check{display:flex;align-items:center;gap:8px;font-weight:800;color:#9a4d61;cursor:pointer}
.lp-insight-rss-check input{width:18px;height:18px;accent-color:#9a4d61}
.lp-insight-rss-thumb{width:150px;height:96px;border-radius:14px;overflow:hidden;background:#f3ece5;display:flex;align-items:center;justify-content:center;color:#9c8d85;font-size:12px;font-weight:800}
.lp-insight-rss-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lp-insight-rss-body strong{display:block;font-size:18px;margin-bottom:6px;color:#211b17}
.lp-insight-rss-body p{margin:0 0 8px;color:#6f625b;line-height:1.6}
.lp-insight-rss-body small{color:#9c8d85}
.lp-insight-rss-body a{color:#9a4d61;text-decoration:underline;font-weight:700}
.lp-insight-guide-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:16px}
.lp-insight-inline-form{margin-top:12px;text-align:right}
@media(max-width:900px){.lp-insight-source-card{grid-template-columns:1fr}.lp-insight-rss-candidate{grid-template-columns:1fr}.lp-insight-rss-thumb{width:100%;height:180px}.lp-insight-guide-grid.compact{grid-template-columns:1fr}}

/* PATCH 2026-05-22 / P46-13-1 BLOG EXTERNAL IMAGE RENDER FIX */
.lp-insight-rss-thumb.is-broken::after{content:"이미지 URL 확인";display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:12px;font-weight:800;color:#9b4f63;background:#f8eee9;text-align:center}
.lp-insight-rss-thumb img[referrerpolicy="no-referrer"],.lp-insight-card-thumb[referrerpolicy="no-referrer"],.lp-insight-cover[referrerpolicy="no-referrer"]{background:#f3ece5}


/* =========================================================
   PATCH 2026-05-22 / P46-13-2 BLOG CATEGORY + HASHTAG RULE UI
   목적: 블로그 소스별 카테고리/해시태그 매칭 설정 및 후보 매칭 상태 표시
   보호: Insight 관리자 화면 전용 스타일
   ========================================================= */
.lp-insight-rule-grid{margin-top:18px;padding-top:18px;border-top:1px solid #eadbd2;}
.lp-insight-rule-grid textarea{min-height:120px;font-family:inherit;line-height:1.6;}
.lp-insight-rule-grid small{display:block;margin-top:7px;color:#8b7a70;font-size:12px;line-height:1.45;}
.lp-insight-rule-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.lp-insight-rule-summary>div{border:1px solid #eadbd2;border-radius:16px;background:#fffaf6;padding:16px;}
.lp-insight-rule-summary strong{display:block;color:#9b4d62;margin-bottom:8px;}
.lp-insight-rule-summary p{margin:0;color:#4f453f;line-height:1.55;word-break:keep-all;}
.lp-insight-candidate-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px;font-size:12px;color:#7d6d63;}
.lp-insight-candidate-badges span{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;border:1px solid #eadbd2;background:#fffaf6;}
.lp-insight-match-badge{font-weight:800;}
.lp-insight-match-badge.category{background:#e9fff4!important;border-color:#b9ebd4!important;color:#137245!important;}
.lp-insight-match-badge.hashtag{background:#fff7df!important;border-color:#f0d797!important;color:#8b6200!important;}
.lp-insight-match-badge.excluded{background:#fff1f1!important;border-color:#f1b6b6!important;color:#a63434!important;}
.lp-insight-match-badge.unmatched{background:#f5f5f5!important;border-color:#ddd!important;color:#777!important;}
.lp-insight-rss-candidate.match-category{border-color:#b9ebd4;}
.lp-insight-rss-candidate.match-hashtag{border-color:#f0d797;}
.lp-insight-rss-candidate.match-excluded,.lp-insight-rss-candidate.match-unmatched{opacity:.78;}
@media (max-width:900px){.lp-insight-rule-summary{grid-template-columns:1fr 1fr;}}
@media (max-width:640px){.lp-insight-rule-summary{grid-template-columns:1fr;}}

/* PATCH 2026-05-25 / P49-32 WORKPACK EFFECTIVE MODE UI */
.lp-insight-workpack-effective-mode{margin:10px 0 12px;padding:10px 12px;border:1px solid #ead8c7;border-radius:14px;background:#fffaf4;color:#4f3f36;font-size:13px;line-height:1.6}
.lp-insight-workpack-effective-mode strong{color:#9b4f63}
.lp-insight-workpack-effective-mode small{display:inline;color:#7a6658}
.lp-insight-detail.has-workpack{background:transparent;box-shadow:none;padding-left:0;padding-right:0}
.lp-insight-detail.has-workpack .lp-insight-content{max-width:none}
