/* 한로그북 전용 페이지(/intro/ /donation/ /rule/ /privacy/) — 모든 선택자는 .hlbp- 범위 (2026-10-28)
   색·반지름·글꼴은 hlb-2026.css 의 변수(--hlb-*)를 따름.
   아래 "AA:" 줄은 글자 대비(WCAG AA 4.5:1) 점검표이며 시험(test_pages.py)이 읽어 계산함 */
/* AA: #ffffff on #0b1d33 */
/* AA: #d5e3f0 on #0b1d33 */
/* AA: #7fdbe6 on #0b1d33 */
/* AA: #0b1d33 on #3ddc84 */
/* AA: #3ddc84 on #0b1d33 */
/* AA: #0a6e79 on #ffffff */
/* AA: #0a6e79 on #e6f4f6 */
/* AA: #5b6b7d on #ffffff */
/* AA: #5b6b7d on #f3f8fb */
/* AA: #0b1d33 on #e6f4f6 */
/* AA: #0b1d33 on #e9fbf1 */
/* AA: #5c4200 on #fff3cd */

.hlbp-page{font-family:var(--hlb-font);color:var(--hlb-ink);font-size:16px;line-height:1.75;word-break:keep-all;overflow-wrap:break-word;background:#fff}
.hlbp-page *,.hlbp-page *::before,.hlbp-page *::after{box-sizing:border-box}
.hlbp-page a{color:var(--hlb-teal);text-decoration:underline;text-underline-offset:3px}
.hlbp-page a:hover{color:var(--hlb-navy)}
/* 기존 default.css 의 p{word-break:break-all} 를 덮어씀 */
.hlbp-page p,.hlbp-page li,.hlbp-page dt,.hlbp-page dd{word-break:keep-all;overflow-wrap:break-word}
.hlbp-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- 히어로 / 문서 머리 ---------- */
.hlbp-hero,.hlbp-dochead{position:relative;overflow:hidden;color:#fff;background:radial-gradient(ellipse at 85% 15%,rgba(61,220,132,.2),transparent 55%),linear-gradient(135deg,var(--hlb-navy-3),var(--hlb-navy) 55%,var(--hlb-navy-2))}
.hlbp-hero{padding:76px 0 104px}
.hlbp-dochead{padding:52px 0 60px}
.hlbp-hero::before{content:"";position:absolute;top:-30%;right:-12%;width:640px;height:640px;border-radius:50%;background:repeating-radial-gradient(circle at center,rgba(127,219,230,.16) 0 2px,transparent 2px 48px);pointer-events:none}
.hlbp-hero-in,.hlbp-dochead .container{position:relative;z-index:1}
.hlbp-eyebrow{margin:0 0 10px;color:var(--hlb-cyan);font-size:13px;font-weight:700;letter-spacing:.14em}
.hlbp-h1{margin:0 0 16px;color:#fff;font-size:clamp(30px,5vw,52px);font-weight:900;line-height:1.2;letter-spacing:-.01em}
.hlbp-lead{max-width:40em;margin:0 0 28px;color:#d5e3f0;font-size:clamp(16px,2vw,19px);line-height:1.7}
.hlbp-docmeta{margin:0 0 22px;color:#d5e3f0;font-size:15px}
.hlbp-docmeta time{color:#fff;font-weight:700}
.hlbp-actions{display:flex;flex-wrap:wrap;gap:12px}
.hlbp-page .hlbp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border:1px solid transparent;border-radius:999px;font-family:inherit;font-size:15px;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.hlbp-page .hlbp-btn-primary{background:var(--hlb-signal);color:var(--hlb-navy)}
.hlbp-page .hlbp-btn-primary:hover{background:#fff;color:var(--hlb-navy)}
.hlbp-page .hlbp-btn-ghost{border-color:rgba(255,255,255,.55);background:transparent;color:#fff}
.hlbp-page .hlbp-btn-ghost:hover{background:#fff;color:var(--hlb-navy)}

/* ---------- 본문 ---------- */
.hlbp-body{padding-bottom:24px}
.hlbp-sec{margin-top:56px}
.hlbp-stats-sec{margin-top:0}
.hlbp-sec p{margin:0 0 .8em;max-width:46em}
.hlbp-h2{margin:0 0 20px;padding-left:16px;border-left:5px solid var(--hlb-signal);font-size:clamp(22px,3vw,30px);font-weight:800;line-height:1.35}
.hlbp-h3{margin:0 0 12px;font-size:clamp(17px,2.2vw,20px);font-weight:800;line-height:1.4}
.hlbp-note{margin-top:14px;color:var(--hlb-muted);font-size:13.5px}
.hlbp-prose p{font-size:17px}
.hlbp-since{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;max-width:none!important;margin-top:20px!important;padding:14px 18px;border-radius:var(--hlb-radius);background:var(--hlb-teal-soft);color:var(--hlb-navy);font-weight:700}
.hlbp-since-date{color:var(--hlb-teal)}
.hlbp-links{margin-top:14px}

/* 숫자 카운터 */
.hlbp-stats{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:-56px 0 0;padding:0;list-style:none}
.hlbp-stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hlbp-stat{display:flex;flex-direction:column;gap:4px;min-width:0;padding:22px 20px;border:1px solid var(--hlb-line);border-top:4px solid var(--hlb-signal);border-radius:var(--hlb-radius);background:#fff;box-shadow:0 10px 28px rgba(11,29,51,.1)}
.hlbp-stat-num{color:var(--hlb-teal);font-size:clamp(28px,3.6vw,42px);font-weight:900;line-height:1.1;font-variant-numeric:tabular-nums}
.hlbp-stat-num small{margin-left:4px;font-size:.45em;font-weight:700;color:var(--hlb-muted)}
.hlbp-stat-label{color:var(--hlb-muted);font-size:14px;line-height:1.4}

/* 기능 카드 */
.hlbp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.hlbp-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid var(--hlb-line);border-radius:var(--hlb-radius);background:#fff;box-shadow:0 6px 20px rgba(11,29,51,.06);transition:transform .2s,box-shadow .2s,border-color .2s}
.hlbp-card:hover{transform:translateY(-4px);border-color:var(--hlb-teal);box-shadow:0 14px 30px rgba(11,29,51,.12)}
.hlbp-card-ico{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-width:54px;height:54px;margin-bottom:14px;padding:0 10px;border-radius:14px;background:var(--hlb-navy);color:var(--hlb-signal);font-size:13px;font-weight:900;letter-spacing:.06em}
.hlbp-card-title{margin:0 0 8px;font-size:19px;font-weight:800;line-height:1.35}
.hlbp-card-text{flex:1 1 auto;margin:0 0 12px;color:#2c3e52;font-size:15px}
.hlbp-card-src{margin:0;color:var(--hlb-muted);font-size:13px}
.hlbp-page .hlbp-card-link{display:inline-flex;align-items:center;align-self:flex-start;min-height:44px;font-weight:700;text-decoration:none}
.hlbp-page .hlbp-card-link::after{content:"\2192";margin-left:6px;transition:transform .2s}
.hlbp-page .hlbp-card-link:hover::after{transform:translateX(4px)}

/* 가입 단계 */
.hlbp-steps{counter-reset:hlbp-step;display:grid;gap:12px;margin:18px 0;padding:0;list-style:none}
.hlbp-steps li{counter-increment:hlbp-step;position:relative;padding:16px 18px 16px 64px;border:1px solid var(--hlb-line);border-radius:var(--hlb-radius);background:#fff}
.hlbp-steps li::before{content:counter(hlbp-step);position:absolute;top:14px;left:16px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--hlb-navy);color:var(--hlb-signal);font-weight:900}
.hlbp-steps b{display:block;color:var(--hlb-teal)}
.hlbp-notes{margin:0;padding:14px 18px;list-style:none;border-left:5px solid var(--hlb-teal);border-radius:0 12px 12px 0;background:var(--hlb-teal-soft);color:var(--hlb-navy);font-size:15px}
.hlbp-notes li+li{margin-top:6px}

/* 감사·후원 명단 */
.hlbp-thanks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:0 0 16px;padding:0;list-style:none}
.hlbp-thanks li{padding:10px 14px;border-bottom:1px dashed var(--hlb-line)}
.hlbp-thanks b{color:var(--hlb-teal)}
.hlbp-donors{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px;padding:0;list-style:none}
.hlbp-donors li{padding:8px 16px;border:1px solid var(--hlb-line);border-radius:999px;background:var(--hlb-bg);font-size:15px}

/* 후원 안내 */
.hlbp-letter{max-width:46em;padding:26px 28px;border-left:5px solid var(--hlb-signal);border-radius:0 var(--hlb-radius) var(--hlb-radius) 0;background:var(--hlb-bg);font-size:17px}
.hlbp-letter p{margin:0 0 .7em}
.hlbp-acct{max-width:46em;margin:0 0 20px;padding:28px;border:2px solid var(--hlb-teal);border-radius:var(--hlb-radius);background:#fff;box-shadow:0 12px 30px rgba(10,110,121,.14)}
.hlbp-acct p{margin:0 0 12px}
.hlbp-acct-title{color:var(--hlb-teal);font-size:13px;font-weight:800;letter-spacing:.14em}
.hlbp-acct-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}
.hlbp-acct-no{color:var(--hlb-navy);font-size:clamp(24px,5.2vw,42px);font-weight:900;letter-spacing:.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.hlbp-acct-bank,.hlbp-acct-owner{font-size:18px;font-weight:700}
.hlbp-acct-en{color:var(--hlb-muted);font-size:14px}
.hlbp-copy-msg{margin-left:10px;color:var(--hlb-teal);font-size:14px;font-weight:700}
.hlbp-callsign{padding:14px 16px;border-left:5px solid var(--hlb-signal);border-radius:0 10px 10px 0;background:#e9fbf1;color:var(--hlb-navy);font-weight:700}
.hlbp-acct .hlbp-btn-primary{border-color:var(--hlb-navy)}

.hlbp-cta{padding:32px;border-radius:var(--hlb-radius);background:linear-gradient(135deg,var(--hlb-navy),var(--hlb-navy-2));color:#fff}
.hlbp-cta .hlbp-h2{color:#fff}
.hlbp-cta p{color:#d5e3f0}
.hlbp-owner{padding:22px 24px;border:1px dashed var(--hlb-line);border-radius:var(--hlb-radius);background:var(--hlb-bg);color:#2c3e52;font-size:14.5px}
.hlbp-owner p:last-child{margin-bottom:0}

/* ---------- 문서형(약관·개인정보) ---------- */
.hlbp-docgrid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:32px}
.hlbp-toc-box{border:1px solid var(--hlb-line);border-radius:var(--hlb-radius);background:#fff;box-shadow:0 4px 14px rgba(11,29,51,.05)}
.hlbp-toc-sum{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;color:var(--hlb-navy);font-weight:800;list-style:none;cursor:pointer}
.hlbp-toc-sum::-webkit-details-marker{display:none}
.hlbp-toc-sum::after{content:"";width:9px;height:9px;margin-top:-4px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.hlbp-toc-box[open]>.hlbp-toc-sum::after{margin-top:4px;transform:rotate(-135deg)}
.hlbp-toc-list{margin:0;padding:0 8px 10px;list-style:none}
.hlbp-page .hlbp-toc-list a{display:block;padding:8px 12px;border-left:3px solid transparent;border-radius:0 8px 8px 0;color:var(--hlb-ink);font-size:14.5px;line-height:1.45;text-decoration:none}
.hlbp-page .hlbp-toc-list a:hover{background:var(--hlb-bg);color:var(--hlb-teal)}
.hlbp-page .hlbp-toc-list a[aria-current="true"]{border-left-color:var(--hlb-teal);background:var(--hlb-teal-soft);color:var(--hlb-navy);font-weight:700}
.hlbp-doc{min-width:0;max-width:860px;font-size:16.5px;line-height:1.85}
.hlbp-doc p{margin:0 0 .85em}
.hlbp-art{padding:30px 0 22px;border-bottom:1px solid var(--hlb-line);scroll-margin-top:92px}
.hlbp-art:first-of-type{padding-top:8px}
.hlbp-art-supp{border-bottom:0}
.hlbp-art-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:0 0 14px;font-size:clamp(19px,2.4vw,23px);font-weight:800;line-height:1.4}
.hlbp-art-no{display:inline-block;padding:1px 12px;border-radius:8px;background:var(--hlb-teal-soft);color:var(--hlb-teal);font-size:.78em;font-weight:800}
.hlbp-art-sub{margin:24px 0 8px;font-size:17.5px;font-weight:800}
.hlbp-clauses,.hlbp-levels,.hlbp-contact{margin:0 0 .85em;padding:0;list-style:none}
.hlbp-clauses li,.hlbp-levels li,.hlbp-contact li{padding:7px 14px;border-left:3px solid var(--hlb-line)}
.hlbp-clauses li+li,.hlbp-levels li+li,.hlbp-contact li+li{margin-top:4px}
.hlbp-dl{display:grid;grid-template-columns:minmax(120px,210px) minmax(0,1fr);margin:10px 0 16px;border:1px solid var(--hlb-line);border-radius:12px;overflow:hidden}
.hlbp-dl dt,.hlbp-dl dd{margin:0;padding:11px 16px;border-top:1px solid var(--hlb-line)}
.hlbp-dl dt{background:var(--hlb-bg);font-weight:700}
.hlbp-dl dt:first-of-type,.hlbp-dl dt:first-of-type+dd{border-top:0}
.hlbp-callout{margin:0 0 8px;padding:14px 18px;border-left:5px solid var(--hlb-teal);border-radius:0 12px 12px 0;background:var(--hlb-teal-soft);color:var(--hlb-navy);font-size:15px}
.hlbp-todo{padding:1px 7px;border-radius:5px;background:#fff3cd;color:#5c4200;font-size:.92em;font-weight:700}
.hlbp-todo-note{color:var(--hlb-muted);font-size:.9em}
.hlbp-tag-new{display:inline-block;margin-right:4px;padding:1px 9px;border-radius:999px;background:var(--hlb-signal);color:var(--hlb-navy);font-size:11.5px;font-weight:800;vertical-align:middle}
.hlbp-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:40px}
.hlbp-page .hlbp-pager-link{display:block;padding:16px 20px;border:1px solid var(--hlb-line);border-radius:var(--hlb-radius);background:#fff;color:var(--hlb-navy);font-weight:800;text-decoration:none}
.hlbp-page .hlbp-pager-link:hover{border-color:var(--hlb-teal);color:var(--hlb-teal)}
.hlbp-pager-dir{display:block;color:var(--hlb-muted);font-size:12.5px;font-weight:600}

/* 맨 위로 */
.hlbp-top{position:fixed;right:18px;bottom:18px;z-index:1020;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--hlb-navy);color:var(--hlb-signal);font-size:22px;font-weight:900;line-height:1;text-decoration:none;box-shadow:0 8px 20px rgba(11,29,51,.3);transition:opacity .2s,visibility .2s}
.hlbp-top:hover{background:var(--hlb-teal);color:#fff}
.hlbp-top.is-hidden{opacity:0;visibility:hidden}

/* 포커스 */
.hlbp-page a:focus-visible,.hlbp-page button:focus-visible,.hlbp-page .hlbp-toc-sum:focus-visible,.hlbp-top:focus-visible{outline:3px solid var(--hlb-teal);outline-offset:3px}
.hlbp-hero a:focus-visible,.hlbp-dochead a:focus-visible,.hlbp-dochead button:focus-visible,.hlbp-cta a:focus-visible,.hlbp-top:focus-visible{outline-color:var(--hlb-signal)}

/* 스크롤 등장 (JS 가 html.hlbp-js 를 붙인 경우에만 숨김 → JS 없으면 그대로 보임) */
.hlbp-js .hlbp-reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.hlbp-js .hlbp-reveal.is-in{opacity:1;transform:none}
.hlbp-js .hlbp-cards .hlbp-reveal:nth-child(3n+2){transition-delay:.08s}
.hlbp-js .hlbp-cards .hlbp-reveal:nth-child(3n+3){transition-delay:.16s}
.hlbp-js .hlbp-stats .hlbp-reveal:nth-child(2){transition-delay:.07s}
.hlbp-js .hlbp-stats .hlbp-reveal:nth-child(3){transition-delay:.14s}
.hlbp-js .hlbp-stats .hlbp-reveal:nth-child(4){transition-delay:.21s}
@media (prefers-reduced-motion:no-preference){
	.hlbp-hero::before{animation:hlbp-pulse 9s ease-in-out infinite alternate}
}
@keyframes hlbp-pulse{from{transform:scale(1);opacity:.7}to{transform:scale(1.12);opacity:1}}
@media (prefers-reduced-motion:reduce){
	.hlbp-js .hlbp-reveal{opacity:1;transform:none;transition:none}
	.hlbp-card,.hlbp-page .hlbp-btn,.hlbp-top,.hlbp-page .hlbp-card-link::after,.hlbp-toc-sum::after{transition:none}
	.hlbp-card:hover{transform:none}
}

/* ---------- 반응형 ---------- */
@media (min-width:992px){
	.hlbp-docgrid{grid-template-columns:240px minmax(0,860px);justify-content:center;gap:48px;align-items:start}
	.hlbp-toc-box{position:sticky;top:92px;max-height:calc(100vh - 116px);overflow-y:auto}
	.hlbp-toc-sum{pointer-events:none;cursor:default}
	.hlbp-toc-sum::after{display:none}
}
@media (max-width:992px){
	.hlbp-hero{padding:60px 0 92px}
	.hlbp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
	.hlbp-stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}
	.hlbp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
	.hlbp-toc-box{position:static}
}
@media (max-width:768px){
	.hlbp-sec{margin-top:44px}
	.hlbp-cards-3{grid-template-columns:minmax(0,1fr)}
	.hlbp-thanks{grid-template-columns:minmax(0,1fr)}
	.hlbp-stats-3{grid-template-columns:minmax(0,1fr)}
	.hlbp-letter{padding:20px}
	.hlbp-cta{padding:24px}
}
@media (max-width:480px){
	.hlbp-hero{padding:44px 0 80px}
	.hlbp-dochead{padding:36px 0 40px}
	.hlbp-cards{grid-template-columns:minmax(0,1fr)}
	.hlbp-actions .hlbp-btn{flex:1 1 100%}
	.hlbp-stat{padding:16px 14px}
	.hlbp-acct{padding:20px 16px}
	.hlbp-pager{grid-template-columns:minmax(0,1fr)}
	.hlbp-dl{grid-template-columns:minmax(0,1fr)}
	.hlbp-dl dd{border-top:0;padding-top:0}
	.hlbp-doc{font-size:16px}
	.hlbp-steps li{padding-left:58px}
}
@media (max-width:380px){
	.hlbp-stats{grid-template-columns:minmax(0,1fr)}
	.hlbp-h1{font-size:28px}
	.hlbp-top{right:12px;bottom:12px;width:44px;height:44px}
	.hlbp-card{padding:20px 18px}
}

/* ---------- 인쇄 ---------- */
@media print{
	html body:has(.hlbp-page) .hlb-topbar,html body:has(.hlbp-page) .hlb-header,html body:has(.hlbp-page) .hlb-footer,html body:has(.hlbp-page) .hlb-copy,html body:has(.hlbp-page) #hd_login_msg,
	.hlbp-toc-box,.hlbp-top,.hlbp-actions,.hlbp-pager{display:none!important}
	.hlbp-dochead,.hlbp-hero{padding:0 0 12px;background:none!important;color:#000}
	.hlbp-dochead .hlbp-h1,.hlbp-dochead .hlbp-docmeta,.hlbp-dochead .hlbp-docmeta time,.hlbp-dochead .hlbp-eyebrow{color:#000}
	.hlbp-docgrid{display:block;margin-top:12px}
	.hlbp-doc{max-width:none;font-size:11pt}
	.hlbp-art{break-inside:avoid;padding:14px 0;border-color:#999}
	.hlbp-doc a[href^="http"]::after{content:" (" attr(href) ")";font-size:.85em}
	.hlbp-js .hlbp-reveal{opacity:1;transform:none}
}
/* 2026-10-28 개인정보처리방침 한눈에 보기 요약 */
.hlbp-summary{margin:0 0 28px;padding:20px 22px;border-radius:14px;background:linear-gradient(135deg,#f0f7fb,#eefaf3);border:1px solid #d5e7ef}
.hlbp-summary-h{margin:0 0 10px;font-size:18px;font-weight:800;color:#0b1d33}
.hlbp-summary ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.hlbp-summary li{line-height:1.6;color:#22313f}
.hlbp-summary li b{display:inline-block;min-width:76px;color:#0d3350}
@media (max-width:600px){.hlbp-summary{padding:16px}.hlbp-summary li b{display:block;min-width:0}}
/* 2026-10-29 후원자 명단 관리 화면(/donation/admin.php) 및 /donation/ 의 관리 버튼 */
.hlbp-admin-entry{margin:18px 0 0}
.hlbp-page .hlbp-admin-entry .hlbp-btn-ghost,.hlbp-page .hlbp-admin-btn.hlbp-btn-ghost{border-color:var(--hlb-teal);background:#fff;color:var(--hlb-teal)}
.hlbp-page .hlbp-admin-entry .hlbp-btn-ghost:hover,.hlbp-page .hlbp-admin-btn.hlbp-btn-ghost:hover{background:var(--hlb-teal);color:#fff}
.hlbp-admin-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.hlbp-admin-row{display:grid;gap:10px;min-width:0;padding:16px 18px;border:1px solid var(--hlb-line);border-left:5px solid var(--hlb-signal);border-radius:var(--hlb-radius);background:#fff}
.hlbp-admin-row.is-off{border-left-color:var(--hlb-muted);background:var(--hlb-bg)}
.hlbp-admin-main{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0}
.hlbp-admin-no{min-width:2.4em;padding:2px 8px;border-radius:8px;background:var(--hlb-navy);color:var(--hlb-signal);font-weight:800;text-align:center;font-variant-numeric:tabular-nums}
.hlbp-admin-label{flex:1 1 200px;min-width:0;font-size:17px;font-weight:800;overflow-wrap:anywhere}
.hlbp-admin-state{padding:2px 10px;border-radius:999px;background:var(--hlb-teal-soft);color:var(--hlb-navy);font-size:13px;font-weight:700}
.hlbp-admin-row.is-off .hlbp-admin-state{background:#fff;color:var(--hlb-muted);border:1px solid var(--hlb-line)}
.hlbp-admin-memo{margin:0;color:var(--hlb-muted);font-size:14px}
.hlbp-admin-acts{display:flex;flex-wrap:wrap;gap:8px}
.hlbp-admin-form{margin:0}
.hlbp-page .hlbp-admin-btn{min-height:40px;padding:0 16px;font-size:14px}
.hlbp-page .hlbp-admin-btn[disabled]{opacity:.45;cursor:not-allowed}
.hlbp-admin-edit{margin-top:2px}
.hlbp-admin-edit>summary{display:inline-block;padding:6px 0;color:var(--hlb-teal);font-weight:700;cursor:pointer}
.hlbp-admin-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:8px 0 0;padding:16px;border:1px dashed #6b8399;border-radius:12px;background:var(--hlb-bg)}
.hlbp-admin-fields label{display:grid;gap:4px;min-width:0;color:var(--hlb-navy);font-size:14px;font-weight:700}
.hlbp-admin-fields input[type=text]{width:100%;min-height:42px;padding:8px 12px;border:1px solid #6b8399;border-radius:10px;background:#fff;color:var(--hlb-ink);font:inherit;font-weight:400}
.hlbp-admin-fields input[type=text]:focus-visible,.hlbp-admin-fields input[type=checkbox]:focus-visible{outline:3px solid var(--hlb-teal);outline-offset:2px}
.hlbp-admin-fields .hlbp-admin-check{display:flex;align-items:center;gap:8px;min-height:42px}
.hlbp-admin-fields .hlbp-admin-btn{justify-self:start;grid-column:1/-1}
.hlbp-admin-msg{margin:0 0 20px}
.hlbp-admin-add{margin-top:0}
@media (max-width:600px){
	.hlbp-admin-fields{grid-template-columns:minmax(0,1fr)}
	.hlbp-admin-row{padding:14px}
	.hlbp-admin-acts .hlbp-admin-form{flex:1 1 calc(50% - 8px)}
	.hlbp-admin-acts .hlbp-admin-btn{width:100%}
}
