@charset "utf-8";
/* ----------------------------------------------------------------------------------------------
 *                 ORANGE-PMI PLATFORM  Version 2.0.0 - Last modified 2026-09-24
 *           Modular Web Architecture · Powered by Orangecommunication · www.oranc.net
 * ----------------------------------------------------------------------------------------------
 * 일반 공용 UI — 버튼 · 묶음 상자 · 빈 목록 안내.
 *
 * ui.css (public_html/<site>/asset/css) — 이 사이트의 base.php 가 `site::css/ui.css` 로 건다.
 *   앞에 `variables.css` 가 먼저 와야 한다.
 *   **이 사이트 소유**다 — 같은 파일이 사이트마다 한 벌씩 있다 (2026-09-21 사용자 결정:
 *   업그레이드가 덮어쓰는 `asset/core/` 에 두지 않는다). 모양을 바꿀 때는 이 파일을 직접 고친다.
 *   ⚠ **다른 사이트에도 같은 파일이 있다 — 한쪽만 고치면 갈라진다.** 공통 규칙을 손볼 때는
 *     `public_html/<site>/asset/css/` 아래 같은 이름을 **전부** 본다. 2026-09-21 이전에 이 복제로
 *     main 이 gwizard 의 수정을 3일간 못 받은 적이 있다. → global-template "공통 UI class"
 *
 *   ── 담는 것 ────────────────────────────────────────────────────────────────
 *     c-btn        버튼 — 크기·색은 modifier. 폼 밖(목록·표 안)에서도 쓰므로 form.css 가 아니다
 *     c-panel      화면 본문의 묶음 상자 + __title
 *     c-badge      목록의 색 표지 — 크기는 하나, 한 글자면 정사각
 *     c-empty      빈 목록 안내 — 표를 **대신**하는 <p> 라 c-table 의 내부 요소가 아니다
 *     c-paging     목록 아래 페이지 번호 — paging_nav() 가 낸다
 *   ✗ 탭메뉴 · 상태 라벨 · 정렬 화살표는 여기 없다 — 2026-09-21 에 그 CSS 가
 *     `asset/asset_reg/` 로 물러났다(레거시 보관). 되살릴 때는 이 체계로 다시 짠다.
 *
 *   ※ 값의 출처는 gwizard 의 레거시 관리자 CSS 다
 *     [구 .ab_m · .ab_blueline · .ab_redline · .ab_grayline · .ab_b2 · .ab_blue · .main_cont_box01 · h4 · .nolist]
 * ---------------------------------------------------------------------------------------------- */


/* ══════════════════════════════════════════════════════════════════════════════════════════════
   버튼  —  c-btn
   ══════════════════════════════════════════════════════════════════════════════════════════════

   ★ **기본이 작은 버튼이다** — 목록·표 안에서 가장 많이 쓰는 크기이므로 옵션 없이 `c-btn` 하나로
     쓸 수 있어야 한다(지침 5장). 폼 하단의 큰 버튼은 `c-btn--lg` 를 얹는다.
     2026-09-21 이전에는 둘이 `gf_btn` · `gf_btn_lg` 라는 **독립된 두 규칙**이어서 공통 속성이
     양쪽에 복제돼 있었다 — 지금은 `c-btn` 이 공통을 갖고 `--lg` 가 다른 것만 덮는다.

   ★ **색 이름 그대로다**(`--blue`·`--red`) — `--primary`·`--danger` 가 아니다(2026-09-21 사용자 결정).
     지금 파랑은 [보기][수정][이동][복사]에 두루 쓰이고 빨강도 뜻이 하나로 모이지 않아,
     의미 이름을 붙이면 이름이 사실보다 앞서간다. 뜻이 정리되면 그때 개명한다.

   ⚠ **hover 는 명시도로 이긴다 — `!important` 를 쓰지 않는다.**
     예전에는 `.gf_btn:hover {background:#444 !important}` 였는데, 그러면 위에 얹히는 `--lg` 의
     hover(#333)가 **영원히 지므로** 크기 modifier 구조 자체가 성립하지 않는다.
     그래서 modifier 의 hover 는 선택자를 한 단계 좁혀(`.c-btn.c-btn--…:hover`) 명시도로 이긴다 —
     파일 순서가 바뀌어도 결과가 같다. 지침 12장 "`!important` 는 가능한 한 피한다".  */

/*  기본 — 작은 버튼. height 가 없다: 줄 높이 + 테두리 1+1 이 곧 `--control-height` 다
    (form.css `.c-input` 절의 "넷이 한 줄에 선다" 참고).
    ★ **테두리는 글자와 같은 값**(`--color-ink`)이다 (2026-09-21 사용자 지시 "눈에 잘 안 들어와").
      예전에는 입력칸용 `--border-color`(#ccc)를 그대로 썼는데, 흰 바탕에 연회색 테두리라
      **목록에서 버튼인지 글자인지 갈리지 않았다.** 입력칸은 값을 담는 그릇이라 조용해도 되지만
      버튼은 누르라고 있는 것이라 윤곽이 서야 한다 — 그래서 둘이 같은 토큰을 읽지 않는다.
    ★ `overflow:hidden` + `text-overflow:ellipsis` 는 **폭을 못 박을 때**를 위한 것이다 —
      `style="width:…"` 로 버튼 폭을 맞추는 열에서 글자가 넘치면 **박스 밖으로 삐져나오지 않고**
      `등록해…` 로 줄어든다(배지와 같은 처리). 폭을 안 주면 아무 일도 하지 않는다.
      `display:inline-block` 이라 ellipsis 가 듣는다 — flex 로 바꾸면 안 듣는다(ui.css "배지" 절 ⚠).
    ★ **한 글자면 정사각**이다 (2026-09-21 사용자 지시, 배지와 같은 균형) — [+] [M] [C] [▲] [▼] 처럼
      한 글자인 버튼이 반듯한 네모로 떨어진다. `min-width` 가 **실제 높이와 같은 값**이어야 하는데,
      이 버튼은 `height` 가 없고 **줄 높이 + 테두리 1+1** 로 높이가 나오므로 그 합인
      `--control-height` 를 그대로 읽는다(`box-sizing:border-box` 라 padding·테두리가 이 안에 든다).
      ⚠ **목록 행 안에서는 높이가 한 단계 줄어든다** — 거기서는 `table.css` 가 `min-width` 도
        `--control-height-sm` 으로 같이 줄여 준다. **한쪽만 줄이면 그 자리만 정사각이 깨진다.**  */
.c-btn						{position:relative; display:inline-block; cursor:pointer; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; vertical-align:middle; touch-action:manipulation; user-select:none; border-radius:var(--radius-sm); min-width:var(--control-height); padding:0 10px; line-height:calc(var(--control-height) - 2px); border:1px solid var(--color-ink); background:#fff; color:var(--color-ink); font-size:0.95em;}
/*  hover 바탕은 토큰이다 — 관리자는 #444, 사용자쪽은 레거시 게시판 버튼의 #101821 로 더 어둡다.
    테두리(#000)는 양쪽 같아 그대로 둔다.  */
.c-btn:hover				{border-color:#000; background:var(--bg-btn-hover); color:#fff;}
.c-btn i					{margin-right:6px;}
/*  버튼이 둘 이상 나란히 설 때의 간격 — **자기 오른쪽에 스스로 둔다** (2026-09-21 사용자 결정).
    ★ `+` 형제 선택자(`* + .c-btn`)나 부모의 `gap` 이 아니라 `margin-right` 인 이유는 **안 깨져서**다:
        `+` 는 사이에 다른 요소가 끼면 안 걸려 **붙어버린다** — `<a>수정</a><input type="hidden"><a>삭제</a>`
             가 실제로 있는 꼴이다(table.css "칸 안에서 나란히 서는 것들" 주석의 그 사정).
        `gap` 은 부모를 flex 로 바꿔야 하는데, 버튼이 놓이는 부모가 제각각이라 전부 잡을 수 없다.
      `margin-right` 는 **조건이 없다.** 어디에 놓이든 자기 여백을 갖고, 실패해도 붙지 않는다.
    ★ 마지막 것의 여백은 지운다 — 가운데·오른쪽 정렬에서 그만큼 치우쳐 보인다.
      뒤에 버튼이 아닌 것(텍스트 등)이 오면 `:last-child` 가 아니라 여백이 남는데, 그게 맞다.
    ※ 예전에는 폼 하단 버튼의 간격을 **태그 사이 공백**이 만들었다 — 누가 줄을 붙여 쓰면 조용히
      사라지는 방식이었다. 이제 그 의존이 없다.  */
.c-btn						{margin-right:var(--gap-inline);}
.c-btn:last-child			{margin-right:0;}

/*  색 — 라인 버튼. 테두리와 글자가 같은 값이다.
    ★ **목록 행 관리 버튼의 색 지침** (2026-09-21 사용자 결정. 관리 화면 전체를 이 꼴로 맞췄다):

        보기 · 상세        `c-btn--blue`     읽기만 — 눌러도 아무것도 안 바뀐다
        수정 · 편집        `c-btn--red`      값이 바뀐다 — 되돌리려면 다시 고쳐야 한다
        삭제 · 해제 · 회수  `c-btn--black`    되돌릴 수 없다
        삭제 **불가**      `c-btn--gray`     조건이 안 되어 막힌 자리 (아래)

      ★ 읽는 축은 **"되돌릴 수 있는가"** 다 — 파랑(안 바뀜) → 빨강(바뀜) → 검정(못 되돌림) 순으로
        무거워진다. 관례상 삭제가 빨강인 경우가 많지만, 여기서는 **빨강 위에 검정을 하나 더** 두어
        세 단계를 만든다(사용자 결정).
      ⚠ 그래서 **기본 `c-btn`(흰 것)은 목록 행의 보기·수정·삭제에 쓰지 않는다** — 셋 다 색이 있다.
        기본은 그 셋에 속하지 않는 동작의 자리다(등록·이동·상태 전이 등).
      ※ 이름은 **색 그대로**다(`--blue`·`--red`·`--black`). 뜻을 이름에 넣으면(`--danger` 등)
        위 배치가 바뀔 때 이름이 사실보다 앞서간다 — 색은 지침이 정하고 이름은 색만 말한다.
      ※ 이 셋에 안 드는 자리는 지금 이렇게 쓴다: 검색 `--blue` · 한 줄에서 먼저 누를 것 하나
        `--fill` · 폼 하단 `--lg`. **정렬 화살표(˄˅)는 기본 `c-btn`** 이다 — 한때 바탕 있는 초록
        (`--green`)을 뒀다가 "잘 안 보인다"는 이유로 되돌렸다(2026-09-21). 기본의 흰 바탕 +
        검게 변하는 hover 가 더 읽혔다.
      정본 예시는 app/guava/admin/menu.list.php 의 관리 칸.  */
.c-btn--blue				{border-color:var(--color-blue); color:var(--color-blue);}
/*  파랑의 hover 는 **채움 버튼과 같은 색**이다 (2026-09-21 사용자 지시 "M C 오버했을때 색은 + 하고 같이").
    한 줄에 [+](채움 파랑)와 [M][C](라인 파랑)가 나란히 서는데, 누르려고 올렸을 때 하나는 파래지고
    하나는 검어지면 **같은 계열인데 따로 노는 것으로 읽힌다.** 그래서 `--color-fill-hover` 를 같이 읽는다.
    ⚠ 선택자를 한 단계 좁히는 이유 — 위 `.c-btn:hover`(0,2,0)의 `background:#444` 를 이겨야 한다(0,3,0).  */
.c-btn.c-btn--blue:hover	{border-color:var(--color-fill-hover); background:var(--color-fill-hover); color:#fff;}
.c-btn--red					{border-color:var(--color-red); color:var(--color-red);}
.c-btn--black				{border-color:var(--color-black); color:var(--color-black);}
/*  어두운 채움 — **처음부터 바탕이 차 있고** hover 에서 순검정으로 간다
    (2026-09-21 사용자 지시 "배경이 어두운 회색으로 채워져 있다가 마우스 오버하면 아주 검정으로").
    지금 쓰는 자리: 목록의 정렬 화살표 [˄][˅].
    ★ 라인이 아닌 이유 — 화살표는 글자가 한 획뿐이라 라인으로 두면 흰 바탕에 가는 선 하나여서
      목록에서 눈에 걸리지 않는다. 바탕을 채우면 덩어리로 읽힌다(초록 라인도 같은 이유로 실패했다).
    ★ `--fill`(파란 채움)과 다른 자리다 — 그쪽은 "한 줄에서 가장 먼저 누를 것 하나"의 뜻이고,
      이건 **자주 누르지만 먼저 누를 것은 아닌** 조작이다. 그래서 무채색이다.
    ⚠ hover 가 선택자를 한 단계 좁히는 이유 — 위 `.c-btn:hover`(0,2,0)의 `background:#444` 를
      이겨야 한다(0,3,0). 그냥 `.c-btn--dark:hover` 로 쓰면 파일 순서에 끌려다닌다.  */
.c-btn--dark				{border-color:var(--color-dark); background:var(--color-dark); color:#fff;}
.c-btn.c-btn--dark:hover	{border-color:#000; background:#000; color:#fff;}
/*  회색은 "누를 수 없음"을 보이는 자리에 쓴다(하위 메뉴가 있어 못 지우는 행의 [삭제]).
    ⚠ 지금은 hover 가 살아 있어 올리면 눌리는 버튼처럼 검게 변한다 — 옛 화면 그대로다.
      막으려면 여기에 `.c-btn.c-btn--gray:hover` 를 더해 되돌린다(이번 전환에서 모양은 바꾸지 않았다).  */
.c-btn--gray				{border-color:var(--color-disabled); color:var(--color-disabled);}

/*  채움 — 한 줄에 버튼이 여럿일 때 **가장 먼저 누를 것 하나**에만 쓴다
    (메뉴 목록 한 줄의 [+] 추가 — 옆의 [M][C] 는 라인으로 둔다).
    라인 버튼만 나란히 서면 다 비슷해 보여 눈이 어디로 갈지 정하지 못한다. 하나만 채우면 그것이
    먼저 읽힌다 — 그래서 **여럿에 쓰면 뜻이 사라진다**(사용자 결정 2026-09-18).
    ★ 크기와 무관하다 — 작은 버튼이면 단색, `--lg` 와 같이 쓰면 그라데이션이다(아래).
      2026-09-21 이전에는 `gf_btn_fill_blue`(작은 것)와 `gf_btn_lg_blue`(큰 것)로 **이름이 둘**이었다.  */
.c-btn--fill				{border-color:var(--color-fill-border); background:var(--color-fill); color:#fff;}
.c-btn.c-btn--fill:hover	{border-color:var(--color-fill-hover); background:var(--color-fill-hover); color:#fff;}

/*  큰 버튼 — 폼 하단의 저장·목록. 화면을 끝내는 동작이라 눈에 걸려야 한다.
    <button> 과 <a> 에 똑같이 준다(둘 다 inline-block). 간격은 태그 사이 공백이 만든다.
    ★ 높이와 최소 폭은 **토큰**이다 (2026-09-22) — 레거시 사용자쪽의 폼 하단 버튼
      (게시판의 [등록하기]·[목록]·[삭제] = 구 `.bbs_btn01`·`.bbs_btn02`)이 이 자리이고,
      관리자(44)보다 훨씬 크다(54·최소폭 100). 사이트가 바꾸는 축이라 값만 갈린다.
      줄 높이는 기본 버튼과 같은 셈법이다 — 테두리 1+1 을 뺀다(높이에서 따라 나오는 수).
    ※ 그라데이션 두 색은 이 버튼에서만 쓴다 — 토큰으로 올리지 않았다.  */
.c-btn--lg					{padding:0 20px; min-width:var(--btn-lg-min-width); line-height:calc(var(--btn-lg-height) - 2px); border-color:#333; background:linear-gradient(0deg, #42464e, #4d525b); color:#fff; font-size:1.1em; border-radius:var(--radius-md); letter-spacing:-1px;}
.c-btn.c-btn--lg:hover		{border-color:#000; background:#333; color:#fff;}
/*  큰 채움 — 저장처럼 **그 화면의 주된 동작**. 위 `--fill` 의 단색을 그라데이션으로 덮는다.
    ⚠ **테두리색을 여기서 다시 준다** — `--fill` 에서 저절로 오지 않는다: `--fill`(0,1,0)과
      `--lg`(0,1,0)는 명시도가 같아 **파일에서 뒤에 있는 `--lg` 의 `border-color:#333` 이 이긴다.**
      그대로 두면 파란 저장 버튼에 검은 테두리가 둘린다(전환 중 실제로 그랬다 — 2026-09-21 검증에서 잡음).
    ⚠ **hover 를 여기서도 다시 준다.** 위 `.c-btn.c-btn--lg:hover` 와 이 규칙은 **명시도가 같아서**
      (둘 다 0,3,0) 파일에서 뒤인 이 규칙이 이긴다 — 그대로 두면 큰 채움 버튼만 **hover 해도 아무
      변화가 없다**(2026-09-21 검증에서 잡음). 한 단계 좁혀(0,4,0) 그 자리를 되돌린다.
    ★ 값은 `.c-btn--lg:hover` 와 **같은 검정**이다 — 옛 `.gf_btn_lg_blue` 에 hover 가 없어
      `.gf_btn_lg:hover` 가 먹고 있던 **전환 전 동작 그대로**다. 파란 버튼이 검게 변하는 게
      어색해 보이더라도 이번 전환의 목표는 이름 체계이지 모양이 아니다 — 바꾸려면 따로 결정한다.  */
.c-btn.c-btn--lg.c-btn--fill		{border-color:var(--color-fill-border); background:linear-gradient(0deg, #3f7dd4, #4282dd);}
.c-btn.c-btn--lg.c-btn--fill:hover	{border-color:#000; background:#333; color:#fff;}


/* ══════════════════════════════════════════════════════════════════════════════════════════════
   묶음 상자  —  c-panel
   ══════════════════════════════════════════════════════════════════════════════════════════════ */

/*  화면 본문의 경계(제목 + 표)  [구 .main_cont_box01]
    ★ **모양을 주지 않는다** (사용자 결정 2026-09-18). class 는 화면(마크업)이 계속 쓰고 — 지침
      global-template "★ 뼈대" 의 '한 화면에 c-panel 하나' 는 그대로다 — 그리는 일만 뺀 것이다.
      화면을 외부로 가져갈 때 이 상자가 그쪽 디자인과 겹쳐 어색해지기 때문이다. 다른 사이트가
      상자를 원하면 **이 파일에서** 이 선택자에 모양을 준다(화면은 손대지 않는다).
    ★ 규칙을 지우지 않고 **비워 둔 채 남긴다** — 지우면 "왜 없지" 를 다시 조사하게 되고, 다른
      CSS 가 이 자리를 차지했는지도 알 수 없다. 여기가 그 사이트의 상자 모양을 정하는 자리다.
    ※ 전에 있던 것: border·background·border-radius·overflow:hidden·margin-bottom·padding.
      overflow:hidden 이 안쪽 float 를 가두고 있었으므로, float 를 쓰는 화면은 뒤 요소가 밀릴 수 있다.
    ※ `:after {clear:both}` 도 같이 뺐다 — content 가 없어 의사요소가 생성되지 않았고, 따라서
      **처음부터 아무 일도 하지 않던 규칙**이다(float 정리는 overflow 쪽이 하고 있었다).  */
.c-panel					{}

/*  묶음 제목 — 왼쪽 파란 고리  [구 gwizard.css 의 전역 h4]
    태그에 기대지 않고 class 로 그린다 — 다른 사이트에 옮겨도 그 사이트 h4 모양에 끌려가지 않는다.
    ★ `__title` 인 이유 — 이 제목은 `c-panel` **안에서만** 뜻이 있다(단락의 머리). 밖에 홀로 쓰는
      제목은 그 사이트의 h2·h3 다. 그래서 독립 컴포넌트가 아니라 내부 요소다(지침 4장).  */
.c-panel__title				{position:relative; padding:0 0 15px 20px; font-size:1.4em; color:#000; letter-spacing:-1px; line-height:140%; font-weight:600;}
.c-panel__title:before		{position:absolute; top:6px; left:0; content:''; width:16px; height:16px; border:4px solid var(--color-primary); border-radius:100%; box-sizing:border-box;}


/* ══════════════════════════════════════════════════════════════════════════════════════════════
   글 한 편  —  c-doc      (게시판 글보기의 머리와 본문)
   ══════════════════════════════════════════════════════════════════════════════════════════════

   ★ **`c-panel__title` 을 글 제목에 쓰지 않는다** (2026-09-22). 그쪽은 관리 화면의 "묶음 머리" 라
     왼쪽에 파란 고리(`:before`)가 붙고 왼쪽 정렬이다 — 글 제목에 쓰면 제목 앞에 고리가 뜬다(실제로 그랬다).
     글은 **가운데 정렬 + 위아래 구분선**이 관례다.
   ★ 게시판 스킨 **공통**이다 — 레거시에서도 basic·gallery 의 `.board_view` 규칙이 같았다. 그래서
     스킨 CSS 가 아니라 여기(사이트 공통) 있다. 스킨이 갖는 것은 그 스킨에만 있는 구조뿐이다
     (갤러리 격자 = `c-gallery`, skin/bbs/gallery/asset/style.css).
   ※ 값의 출처는 레거시 `_skin/board/*/style.css` 의 `.board_view` 절 — 구조는 그대로다.  */

/*  머리 — 제목과 메타를 한 덩어리로 감싼다. 위는 굵게, 아래는 가늘게 그어 글의 시작을 만든다.  */
.c-doc__head				{text-align:center; padding:25px 10px; border-top:2px solid var(--color-ink); border-bottom:1px solid var(--border-color-cell);}
.c-doc__title				{font-size:1.5em; line-height:140%; font-weight:bold; letter-spacing:-1px;}
/*  메타 한 줄 — 작성자 · 날짜 · 조회. 각 조각을 <span> 으로 두면 **사이 구분선을 CSS 가 낸다**
    (마크업에 `|` 를 적지 않는다 — 조각이 늘거나 줄어도 선이 저절로 맞는다).
    마지막 조각의 선은 지운다 — 안 지우면 줄 끝에 선이 하나 남는다.  */
.c-doc__meta				{padding:15px 0 0 0; font-size:0.9em; color:var(--color-mute);}
.c-doc__meta span			{position:relative; padding-right:23px;}
.c-doc__meta span::after	{content:''; position:absolute; top:0; right:12px; bottom:0; width:1px; height:1em; margin:auto; background:var(--border-color);}
.c-doc__meta span:last-child		{padding-right:0;}
.c-doc__meta span:last-child::after	{display:none;}

/*  본문 — 글이 짧아도 읽는 자리가 있도록 최소 높이를 준다.
    ★ 안의 이미지는 **칸을 넘지 않는다** — 에디터로 넣은 큰 사진이 그대로 들어와 레이아웃을 밀어내는
      일이 흔하다. 높이는 비율대로 따라간다.  */
.c-doc__body				{overflow:hidden; padding:40px 10px; min-height:300px; border-bottom:1px solid var(--color-ink);}
.c-doc__body img			{max-width:100%; height:auto;}

/*  첨부 목록 — 제목 칸과 파일 칸이 **좌우 두 단**이다(레거시 `.file_wrap`). 좁아지면 위아래로 접힌다.
    ⚠ 2026-09-22 까지 `c-attach` 는 **마크업에만 있고 CSS 가 없었다** — 첨부가 맨 목록으로 보였다.
      (global-template "★ 뼈대": 정의 없는 class 를 남기지 않는다.)  */
.c-attach					{display:grid; grid-template-columns:160px auto; gap:0 10px; padding:20px;
							 margin:0; list-style:none; background:var(--bg-label); border-bottom:1px solid var(--border-color); font-size:0.95em;}
.c-attach__title			{font-weight:bold; color:var(--color-ink);}
.c-attach > li				{grid-column:2; padding:3px 0; line-height:1.3; font-size:0.9em;}
.c-attach > li a			{color:var(--color-mute);}
.c-attach > li a:hover		{color:var(--color-ink); text-decoration:underline;}
.c-attach__preview		{display:inline-block; margin-right:10px; padding:0 8px; line-height:26px; border-radius:var(--radius-sm);
							 background:var(--color-ink); color:#fff; font-size:0.9em; text-decoration:none;}   /* [미리보기] — 이미지·PDF 줄에만 (attach_links). 레거시 basic 의 검은 버튼 */
.c-attach__preview::after	{content:'\2197'; margin-left:6px; font-size:0.9em;}   /* ↗ 새 탭에서 연다는 표시 */
.c-attach__preview:hover	{background:var(--bg-btn-hover); color:#fff; text-decoration:none;}

/*  레이어(모달) — 배경 + 가운데 상자. **여닫기는 core/js/modal.js 하나**([data-modal] · [data-modal-close] · Esc · 배경 클릭).
    즉석 상자(modal({title, body, buttons}))가 이 마크업을 만든다 — 첨부 미리보기(attach-preview.js)가 첫 사용처.
    머리는 레거시 img_preview_layer 의 검은 띠(제목 왼쪽 · 버튼·× 오른쪽), 몸은 내용 크기대로(이미지 max-width 100% · PDF 는 70vh).
    ※ 메뉴 목록의 추가·이동·복사 모달은 여닫기만 같이 쓰고 모양은 아직 menu-modal.css(mm-*) 다.  */
.c-modal					{position:fixed; inset:0; z-index:100000; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(0,0,0,.5);}
.c-modal.is-open			{display:flex;}
.c-modal__box				{display:flex; flex-direction:column; width:100%; max-width:900px; max-height:100%; overflow:hidden;
							 background:#fff; border-radius:var(--radius-md); box-shadow:0 0 10px rgba(0,0,0,.2);}
.c-modal__head				{display:flex; align-items:center; gap:10px; padding:12px 16px; background:var(--color-black, #111); color:#fff;}
.c-modal__title				{flex:1 1 auto; font-size:1.1em; font-weight:500;}
.c-modal__btns				{display:flex; align-items:center; gap:8px;}
.c-modal__btns .c-btn		{margin:0;}
.c-modal__close				{width:28px; height:28px; padding:0; border:0; background:transparent; color:#fff; font-size:26px; line-height:1; cursor:pointer;}
.c-modal__body				{overflow:auto; text-align:center; background:#222;}
.c-modal__body img			{display:block; max-width:100%; height:auto; margin:0 auto;}
.c-modal__body iframe		{display:block; width:100%; height:70vh; border:0; background:#fff;}

/*  아래 칸 — modal() 에 footer 를 준 모달만 쓴다(안 주면 modal.js 가 hidden 을 단다). 지금은 플래시 알림뿐이라
    모양은 아래 변형이 갖는다. 여기서는 **자리만** 잡는다 — 기본 모달(뷰어)의 생김새를 바꾸지 않으려고.  */
.c-modal__foot				{display:flex; align-items:center; justify-content:flex-end; gap:8px;}
.c-modal__foot .c-btn		{margin:0; min-width:92px;}


/*  ══ 변형: 플래시 알림 (c-modal--alert · c-modal--error) ══════════════════════════════════════
    **플래시 알림에만** 쓰는 모양이다 — core/js/flash.js 가 플래시 배너의 줄을 이 모달로 올린다.
    기본 모달(사진·PDF 뷰어)은 위 그대로 두고 여기서만 갈아입힌다.
      상자  좁고(420) 얕게 둥근(8) 흰 상자
      글    제목·본문 **모두 가운데**  — 읽고 버튼 하나 누르는 짧은 알림이라 중심이 잡힌다
      닫기  × 를 상자 **오른쪽 위 모서리**로 띄운다 — 제목이 가운데라 머리 흐름에 두면 제목이 밀린다
      버튼  아래 **가운데**, 구분선 없음. 목록의 작은 버튼보다 크다(손이 가는 자리라)
    ※ 둥근 아이콘(i·!)을 두지 않는다 (사용자 지시 2026-09-27 — 참고 디자인). 종류는 **제목 문구**가 말하고
      (flash.js 가 '확인해 주세요' / '알림' 으로 넘긴다), 오류만 제목을 `--color-danger` 로 물들인다.
      상자·본문까지 빨갛게 하면 읽기가 나빠진다.
    ※ 버튼 색은 **이 사이트의 채움 버튼 색**(`c-btn--fill` → `--color-fill`)을 그대로 쓴다 — 여기서 색을
      따로 정하지 않는다(global-template "★ 버튼 — 색은 지침이 정하고 값은 사이트 토큰").  */
.c-modal--alert .c-modal__box,
.c-modal--error .c-modal__box
							{position:relative; max-width:420px; border-radius:8px; box-shadow:0 10px 40px rgba(0, 0, 0, .18);}
.c-modal--alert,
.c-modal--error				{background:rgba(0,0,0,.35); backdrop-filter:blur(2px);}

/*  머리 — 제목 한 줄뿐이다. flex(기본)를 풀어 가운데로 세운다.  */
.c-modal--alert .c-modal__head,
.c-modal--error .c-modal__head
							{display:block; padding:52px 32px 0; background:none; text-align:center;}
.c-modal--alert .c-modal__title,
.c-modal--error .c-modal__title
							{display:block; font-size:1.05em; font-weight:700; line-height:1.55; color:var(--color-ink);}
.c-modal--error .c-modal__title
							{color:var(--color-danger);}

/*  닫기 × — 상자 모서리에 띄운다(머리 흐름 밖). 누르는 자리는 글자보다 넓게 잡는다.  */
.c-modal--alert .c-modal__close,
.c-modal--error .c-modal__close
							{position:absolute; top:12px; right:12px; width:34px; height:34px;
							 color:var(--color-mute); font-size:24px;}
.c-modal--alert .c-modal__close:hover,
.c-modal--error .c-modal__close:hover
							{color:var(--color-ink);}

/*  몸 — 제목 아래 부연. 바탕이 희고 가운데 정렬이다.  */
.c-modal--alert .c-modal__body,
.c-modal--error .c-modal__body
							{padding:12px 32px 0; background:#fff; color:var(--color-ink);
							 text-align:center; line-height:1.7;}

/*  모달 안의 플래시 줄 — 배너일 때의 색 상자를 벗긴다. 무슨 종류인지는 **제목**이 이미 말하고,
    상자가 또 있으면 테두리가 이중으로 겹쳐 보인다.  */
.c-modal--alert .c-flash__item,
.c-modal--error .c-flash__item
							{margin:0 0 4px; padding:0; border:0; background:none; color:var(--color-ink); font-weight:400;}
.c-modal--alert .c-flash__item:last-child,
.c-modal--error .c-flash__item:last-child
							{margin-bottom:0;}

/*  아래 — 가운데 버튼. 구분선을 두지 않는다(상자가 좁고 글이 짧아 선이 없어도 칸이 읽힌다).
    높이·최소폭을 여기서 키운다 — `c-btn` 기본은 목록 행에 맞춘 한 줄짜리 크기다.
    버튼이 둘 이상이면 `c-btn` 자신의 margin-right 대신 이 칸의 gap 이 간격을 준다(table.css 와 같은 규칙).  */
.c-modal--alert .c-modal__foot,
.c-modal--error .c-modal__foot
							{justify-content:center; gap:8px; padding:26px 32px 30px; border-top:0;}
.c-modal--alert .c-modal__foot .c-btn,
.c-modal--error .c-modal__foot .c-btn
							{min-width:140px; padding:0 20px; line-height:40px; border-radius:4px; font-size:1em;}

@media screen and (max-width:480px) {
	.c-modal--alert,
	.c-modal--error			{padding:12px;}
	.c-modal--alert .c-modal__head,
	.c-modal--error .c-modal__head			{padding:44px 20px 0;}
	.c-modal--alert .c-modal__title,
	.c-modal--error .c-modal__title			{font-size:1em;}
	.c-modal--alert .c-modal__body,
	.c-modal--error .c-modal__body			{padding:10px 20px 0;}
	.c-modal--alert .c-modal__foot,
	.c-modal--error .c-modal__foot			{padding:22px 20px 24px;}
	/*  좁은 화면에서는 버튼이 칸을 나눠 갖는다 — 최소폭을 고집하면 두 개가 넘친다.  */
	.c-modal--alert .c-modal__foot .c-btn,
	.c-modal--error .c-modal__foot .c-btn	{flex:1 1 0; min-width:0;}
}

/*  대표 이미지 고르기 — 올린 그림이 **카드**로 늘어서고 하나를 고른다 (attach_imagepick, 폼에서 스킨이 부를 때만).
    첫 칸은 "고르지 않음"(= 첫 그림이 대표). 고른 칸은 파란 테두리와 오른쪽 위 체크로 표시한다.
    라디오 자체는 숨기고 **카드 전체**가 누르는 자리다 — name 이 없어 저장에는 안 실린다(값은 hidden 이 나른다).  */
.c-imagepick				{display:flex; flex-wrap:wrap; gap:9px;}
.c-imagepick__item			{position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center;
							 width:91px; height:67px; overflow:hidden; cursor:pointer; background:#fff;
							 border:2px solid var(--border-color-cell); border-radius:10px; transition:border-color .15s;}
.c-imagepick__item:hover	{border-color:var(--color-primary);}
.c-imagepick__item input	{position:absolute; width:1px; height:1px; opacity:0; pointer-events:none;}
.c-imagepick__item img		{width:100%; height:100%; object-fit:cover;}

/*  오른쪽 위 표시 — 늘 자리를 잡고 있다가(흰 동그라미) 고르면 파란 체크가 된다.
    항상 보이는 이유: 고를 수 있는 칸이라는 것이 한눈에 읽힌다.  */
.c-imagepick__item::after	{position:absolute; top:5px; right:5px; width:18px; height:18px; content:'';
							 border-radius:50%; background:#fff; box-shadow:0 1px 4px rgba(0,0,0,.25);}
.c-imagepick__item.is-on	{border-color:var(--color-primary);}
.c-imagepick__item.is-on::after	{content:'\2713'; background:var(--color-primary); color:#fff;
							 font-size:11px; line-height:18px; text-align:center; box-shadow:none;}

/*  "고르지 않음" 칸 — 그림 대신 아이콘과 글자.  */
.c-imagepick__none			{gap:5px;}
.c-imagepick__none.is-on	{background:var(--bg-label);}
.c-imagepick__icon			{width:20px; height:20px; color:var(--color-mute);}
.c-imagepick__none.is-on .c-imagepick__icon	{color:var(--color-primary);}
.c-imagepick__label			{color:var(--color-ink); font-size:0.75em; line-height:1.25; text-align:center; font-weight:600;}
.c-imagepick__label small	{color:var(--color-mute); font-weight:400;}
@media screen and (max-width:580px) {
	.c-attach				{grid-template-columns:1fr;}
	.c-attach > li			{grid-column:1;}
}

/*  이전글 / 다음글 — **좌우 두 칸**이 맞붙은 한 덩어리다(레거시 `.pn_wrap`). 표가 아니다.
    ★ 어느 쪽인지는 **차례로** 정한다(`:first-child`·`:last-child`) — 마크업에 prev·next class 를 두지 않는다.
      이전글이 첫째, 다음글이 둘째라는 것은 이 컴포넌트의 약속이다.
    ★ 동그라미와 화살표는 **CSS 도형**이다 — 이미지 파일을 쓰지 않는다(레거시도 그랬다).
    ※ 글이 없는 쪽은 <a> 가 아니라 <div> 라 커서가 안 바뀐다 — 마크업이 그렇게 낸다.  */
.c-doc__nav					{display:flex; padding-top:30px; margin:0; list-style:none;}
.c-doc__nav > li			{position:relative; flex:1; min-width:0;}
.c-doc__nav .inner			{display:flex; flex-direction:column; justify-content:center; height:90px; padding:0 20px;
							 border:1px solid var(--border-color); font-size:0.9em; color:inherit; text-decoration:none;}
.c-doc__nav > li:first-child .inner	{padding-left:90px; border-right-width:0; border-radius:0.7em 0 0 0.7em;}
.c-doc__nav > li:last-child .inner	{padding-right:90px; border-radius:0 0.7em 0.7em 0; text-align:right; align-items:flex-end;}
/*  동그라미 바탕 */
.c-doc__nav > li::before	{content:''; position:absolute; top:50%; transform:translateY(-50%);
							 width:50px; height:50px; border-radius:100%; background:var(--bg-label);}
.c-doc__nav > li:first-child::before	{left:20px;}
.c-doc__nav > li:last-child::before		{right:20px;}
/*  그 위의 꺾쇠 — 정사각형의 두 변만 남겨 돌린다 */
.c-doc__nav > li::after		{content:''; position:absolute; top:39px; padding:5px; border:solid var(--color-mute); border-width:1px 1px 0 0;}
.c-doc__nav > li:first-child::after	{left:42px; transform:rotate(-135deg);}
.c-doc__nav > li:last-child::after	{right:42px; transform:rotate(45deg);}
.c-doc__nav .tit			{display:block; padding-bottom:5px; font-weight:700; color:var(--color-ink);}
/*  제목은 **한 줄**까지만 — 길어도 칸 높이가 흔들리지 않는다 */
.c-doc__nav .txt			{margin:0; overflow:hidden; text-overflow:ellipsis; line-height:1.3; color:var(--color-mute);
							 display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical;}
.c-doc__nav a:hover .txt	{text-decoration:underline;}
@media screen and (max-width:580px) {
	.c-doc__nav				{flex-direction:column;}
	.c-doc__nav .inner,
	.c-doc__nav > li:first-child .inner,
	.c-doc__nav > li:last-child .inner	{height:auto; padding:15px 20px 15px 70px; text-align:left; align-items:flex-start; border-radius:0; border-width:1px;}
	.c-doc__nav > li:last-child .inner	{border-top-width:0;}
	.c-doc__nav > li::before	{left:15px; right:auto; width:36px; height:36px;}
	.c-doc__nav > li::after		{left:28px; right:auto; top:50%; margin-top:-5px;}
}

/*  글에 딸린 구역의 머리 — 지금은 댓글 수 한 줄이다(레거시 `.replyinfo .count`).
    ✗ `c-panel__title` 을 쓰지 않는다 — 관리 화면의 묶음 머리라 파란 고리가 붙는다(글 제목과 같은 사정).  */
.c-doc__subhead				{padding-bottom:15px; border-bottom:1px solid var(--border-color); font-size:0.9em; color:var(--color-mute);}
.c-doc__subhead b			{color:var(--color-ink); font-weight:500;}


/* ══════════════════════════════════════════════════════════════════════════════════════════════
   배지  —  c-badge
   ══════════════════════════════════════════════════════════════════════════════════════════════

   목록에서 **그 행이 무엇인가**를 색으로 가르는 작은 표지. 값 자체는 `title` 로 읽는다.
   [구 .menu_type · .menu_type_s · .mtype1~14 · .mtype_faint — 2026-09-21 에 하나로 합쳤다]

   ★ **크기는 하나뿐이다** (2026-09-21 사용자 지시). 예전에는 큰 것(70px 고정)과 곁배지(22px)가
     따로 있었는데, 같은 화면에서 둘이 따로 놀아 규격이 보이지 않았다. 지금은 `c-badge` 하나다 —
     **크거나 작은 것이 실제로 필요해지면 그때 `--sm`·`--lg` 를 더한다**(지침 6장).
   ★ **한 글자면 정사각**이다 — `min-width` 를 `height` 와 같은 값으로 두어 'a'·'u'·'m' 같은
     한 글자 배지가 반듯한 네모로 떨어진다. 글자가 길어지면 거기서부터 가로로 늘어난다.
     (`box-sizing:border-box` 라 좌우 padding 이 이 안에 든다 — base 리셋.)
   ★ **글자를 굵게 하지 않는다** (사용자 지시). 배지는 이미 색 면으로 눈에 걸린다 —
     굵기까지 더하면 옆의 본문 글자와 무게가 뒤집혀 목록이 시끄러워진다.
   ★ **폭을 고정하고 싶으면 그 자리에서 `style="width:…"`** 를 준다 (2026-09-21 사용자 결정).
     기본은 내용만큼 늘어나고, **끝선을 맞춰야 하는 열에서만** 폭을 못 박는다 — 지침 6장의
     크기 우선순위(기본 최소 → 내용 확장 → Size Modifier → **명시적 가로 크기**)의 마지막 자리다.
     modifier(`--w70` 같은)를 만들지 않는 이유는 폭이 그 **열의 사정**이지 배지의 종류가 아니어서다.
     쓰는 예 — menu.list.php 의 연계구분 배지(guava·dev·capstone 처럼 길이가 제각각인 열).
   ⚠ **`display` 를 flex 로 바꾸지 말 것.** `text-overflow:ellipsis` 는 **블록 컨테이너에만** 듣는다 —
     flex 로 두면 폭을 좁게 줬을 때 말줄임 없이 **그냥 잘린다**(2026-09-21 에 실제로 그렇게 만들었다가
     되돌렸다). 세로 가운데는 `line-height` 가 `height` 와 **같은 토큰**을 읽어서 맞춘다.
   ★ 빈 배지(`&nbsp;` 자리지기)도 `height` 로 높이를 갖는다 — 자리를 지키려고 일부러 두는 것이라
     마크업의 `&nbsp;` 는 그대로 둔다(menu.list.php 주석의 이유가 여전히 유효하다).  */
.c-badge					{display:inline-block; height:var(--badge-height); min-width:var(--badge-height); line-height:var(--badge-height); padding:0 5px; font-size:0.8em; font-weight:400; text-align:center; color:#fff; letter-spacing:-0.75px; border-radius:var(--radius-md); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; vertical-align:middle;}

/*  색 — `c-btn` 과 같은 결로 **색 이름 그대로**다. 번호(`mtype7`)로는 무엇을 뜻하는지 읽히지 않았다.
    ★ 어느 값에 어느 색을 줄지는 **그 화면이 정한다** — 여기 있는 건 팔레트일 뿐이다.
    ★ 계열이 겹치는 짝이 있다(blue/sky · violet/lilac · green/forest). 일부러다 —
      앞의 것은 **서로 다른 종류를 가르는** 자리에, 뒤의 것은 **한 칸에 여러 배지가 나란히 설 때**
      쓰라고 톤을 맞춰 뽑은 색이다(메뉴 관리의 속성 칸 c·p·s·a 가 그 경우).  */
.c-badge--orange			{background:#f2a057;}
.c-badge--green				{background:#4ca515;}
.c-badge--blue				{background:#4584d1;}
.c-badge--violet			{background:#6e62b5;}
.c-badge--red				{background:#f30000;}
.c-badge--gray				{background:#a6a6a6;}
.c-badge--black				{background:#000;}
.c-badge--purple			{background:#841f84;}
.c-badge--teal				{background:#0d9488;}	/* ↓ 넷은 나란히 서는 자리용 — 색상환에서 서로 멀다 */
.c-badge--sky				{background:#3b82f6;}
.c-badge--lilac				{background:#a855f7;}
.c-badge--amber				{background:#d97706;}	/* 흰 글자 대비 때문에 한 단계 어둡다 */
.c-badge--forest			{background:#15803d;}
/*  미설정 — 값이 없다는 것을 **자리를 지키며** 보인다. 배지를 아예 빼면 행마다 배지 수가 달라져
    칸이 들쭉날쭉해진다. 유일하게 글자색이 다르다(바탕이 밝아 흰 글자가 안 읽힌다).  */
.c-badge--none				{background:#f0f0f0; color:#999;}
/*  아주 옅게 — 두 값 중 하나가 압도적으로 흔할 때 **그 흔한 쪽**에 쓴다(메뉴 목록의 보통 cid = N).
    지우는 대신 색을 죽여 자리만 남긴다 — 있는 행과 없는 행의 글자 시작점이 어긋나지 않게.  */
.c-badge--faint				{background:#f7f7f7; color:#d5d5d5;}

/*  배지가 둘 이상 나란히 설 때의 간격 — 버튼과 **같은 방식**이다(자기 오른쪽에 스스로 둔다).
    배지는 묶음 부모가 없다: `<td class="u-text-center u-nowrap">` 안에 그냥 나열되는데 그건
    유틸 칸이라 flex 를 줄 수 없다. 그래서 더더욱 `margin-right` 가 맞다.
    버튼(6px)보다 좁은 3px 인 이유 — 배지는 한 칸 안에서 넷까지 붙어 서고(속성 칸 c·p·s·a),
    그 넷이 **한 덩어리로 읽혀야** 하기 때문이다. 넓히면 서로 다른 값처럼 흩어져 보인다.  */
.c-badge					{margin-right:var(--gap-inline);}
.c-badge:last-child			{margin-right:0;}


/* ══════════════════════════════════════════════════════════════════════════════════════════════
   빈 목록  —  c-empty
   ══════════════════════════════════════════════════════════════════════════════════════════════ */

/*  목록이 비었을 때 **표를 대신해** 나오는 안내  [구 .nolist]
    ★ `c-table__empty` 가 아니다 — 마크업이 `<table>` 안의 칸이 아니라 표와 **형제인 `<p>`** 다
      (`if 목록 있음: <table> else: <p class="c-empty">`). 표의 내부 요소가 아니므로 독립 컴포넌트다.  */
.c-empty					{padding:60px 0; text-align:center;}


/* ══════════════════════════════════════════════════════════════════════════════════════════════
   페이지 번호  —  c-paging
   ══════════════════════════════════════════════════════════════════════════════════════════════ */

/*  목록 아래 페이지 이동 — paging_nav() (system/lib/paging.lib.php) 가 낸다.
    표 **아래**에 서므로 `--control-height` 를 읽는다 — 행 안의 컨트롤이 아니라 작아질 이유가 없다.  */
.c-paging					{margin:20px 0 4px; text-align:center;}

/*  번호와 이동 버튼은 **같은 상자**다 — 높이·모서리가 갈리면 한 줄이 들쭉날쭉해진다.
    현재 쪽은 `<a>` 가 아니라 `<strong>` 인데(자기 자신으로 가는 링크는 두지 않는다) 그것까지
    같은 선택자로 묶어야 **현재 쪽만 크기가 달라지지** 않는다.
    한 자리수(1~9)가 대부분이라 `min-width` 를 높이와 같이 줘 정사각으로 세운다.  */
.c-paging__num,
.c-paging__btn				{display:inline-block; vertical-align:middle; margin:0 var(--gap-inline); min-width:var(--control-height); padding:0 8px; line-height:calc(var(--control-height) - 2px); border:1px solid var(--border-color); border-radius:var(--radius-sm); background:#fff; color:var(--color-ink); font-size:0.95em; text-align:center;}
.c-paging__num:hover,
.c-paging__btn:hover		{border-color:var(--color-ink);}

/*  현재 쪽 — 채움 버튼과 같은 색을 읽는다. 목록에서 "지금 여기" 를 가리키는 유일한 표시다.  */
.c-paging__num.is-current	{border-color:var(--color-fill-border); background:var(--color-fill); color:#fff; cursor:default;}


/* ══════════════════════════════════════════════════════════════════════════════════════════════
   플래시 알림  —  c-flash
   ══════════════════════════════════════════════════════════════════════════════════════════════ */

/*  process 가 flash() 로 담아 redirect 한 알림 — 셸(layouts/head.php)의 flash_out() 이 <body> 첫 줄에 낸다
    (system/lib/flash.lib.php). 화면 안이 아니라 **크롬 위**에 서므로 좌우 여백을 스스로 가진다 —
    본문 컨테이너 밖이라 기댈 패딩이 없다.
    ⚠ **이 사이트는 헤더가 position:fixed 다**(layout.css `.header`, z-index:999). flash 는 <body> 직계라
      문서 흐름의 맨 위(y=0)에 서는데, 그 자리를 고정 헤더가 그대로 덮는다 — 흐름에 있는 요소는 z-index 가
      안 먹으므로 **알림이 헤더 뒤에 완전히 가려졌다**(2026-09-24. 관리 사이트는 헤더가 고정이 아니라
      멀쩡했고, 로그인 화면은 layout('head') 라 크롬이 없어 역시 보였다 — 그래서 늦게 드러났다).
      그래서 여기서만 화면 상단에 **고정**으로 띄운다. 한 번 뜨고 사라지는 알림이라 헤더를 잠깐 덮어도 된다.
      z-index 는 스킵 네비(#skipNav, 9999001)보다 위 — 그 둘이 같은 자리에 선다.  */
.c-flash					{position:fixed; top:0; left:0; right:0; z-index:9999002; padding:16px 20px 0;}

/*  한 줄 = 한 메시지. 여러 번 flash() 하면 담은 순서대로 쌓인다.
    c-notice 와 모양이 닮았지만 **그 자리에 붙박인 안내문이 아니라 한 번 뜨고 사라지는 알림**이라
    따로 둔다 — 굵기와 강조선 색이 상태(is-error·is-done)에 따라 갈린다.  */
.c-flash__item				{margin:0 0 8px; padding:12px 16px; border:1px solid; border-left-width:4px; border-radius:4px; font-weight:600;}
.c-flash__item:last-child	{margin-bottom:0;}

/*  하려던 일이 안 됐다 — 입력 오류. abort(400) 에러 페이지를 대신하는 자리라 눈에 띄어야 한다.  */
.c-flash__item.is-error		{border-color:var(--color-danger); background:var(--color-danger-bg); color:var(--color-danger-ink);}

/*  됐다 — 저장·삭제 완료.  */
.c-flash__item.is-done		{border-color:var(--color-done); background:var(--color-done-bg); color:var(--color-done-ink);}
