@charset "utf-8";
/* ============================================================
   mp_page_v1.css — 라이브몰프로 myadmin 공통 "본문 컨텐츠" 스킨
   2026-07-31
   ------------------------------------------------------------
   목적 : /myadmin/board/cashreceipt_list.asp (crv2) 처럼
          제목·안내·본문 블록을 전부 라운딩 박스로 구성한다.
          레거시 페이지(수백 개)를 고치지 않고 CSS 만으로 입히기 위해
          기존 클래스(.page_title / .page_noti / .admin_sub_title /
          .admin_style_01 / .admin_style_02 / .paging / 버튼류)에만 건다.

   ★이미 새 디자인으로 다시 만든 블록(.crv2 / .gsv2 / .adv2 / .madv2-*)은
     자기 클래스만 쓰므로 이 파일의 셀렉터에 걸리지 않는다.
     (그래서 일반 input/select/button 전역 규칙은 일부러 넣지 않았다.)

   스코프 : html.mpv2 .rightmenuWrap  (클래스 부여는 _include/header.asp)
   ============================================================ */

html.mpv2 .rightmenuWrap {
	/* ★2026-08-08 : 색상 복원(사용자 지정) — 잠깐 썼던 3단 컬러 체계(#FF9308/#FFB85C/#FFE7C7) 폐기, 기존 파랑으로 되돌림 */
	--mv-primary: #3b82f6;
	--mv-primary-d: #2f6fe0;
	--mv-text: #262626;
	--mv-sub: #64748b;
	--mv-muted: #a4adb2;
	--mv-line: #ebeef2;
	--mv-bg: #f8fafc;
	--mv-card: #ffffff;
	--mv-danger: #ef4444;
	--mv-r-card: 12px;
	--mv-r-ctrl: 8px;
	--mv-font: 'Pretendard Variable', Pretendard, system-ui, -apple-system, 'Malgun Gothic', sans-serif;
}

/* ---------- 제목 : 박스 없이 타이틀만 (★2026-08-08 사용자 지정, 이전엔 라운딩 박스+좌측 포인트바) ---------- */
html.mpv2 .rightmenuWrap .page_title {
	box-sizing: border-box;
	display: block;
	clear: both;
	margin: 0 0 14px 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--mv-text);
	font-family: var(--mv-font);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
}
html.mpv2 .rightmenuWrap .page_title b { font-weight: 700; }
/* 제목을 감싸고 있는 레거시 래퍼 table 의 여백 제거 */
html.mpv2 .rightmenuWrap table > tbody > tr > td > .page_title { margin-bottom: 0; }
html.mpv2 .rightmenuWrap tr[height="45"] > td { padding-top: 0 !important; }

/* ---------- 안내(헬프박스) : 라운딩 박스 ---------- */
html.mpv2 .rightmenuWrap .page_noti {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 14px 0 !important;
	padding: 16px 20px !important;
	border: 1px solid var(--mv-line);
	border-radius: var(--mv-r-card);
	background: var(--mv-card);
	color: var(--mv-sub);
	font-family: var(--mv-font);
	font-size: 12.5px;
	line-height: 1.75;
}
html.mpv2 .rightmenuWrap .page_noti td { color: var(--mv-sub); font-size: 12.5px; line-height: 1.75; padding: 1px 0 !important; }
html.mpv2 .rightmenuWrap .page_noti td[width="15"] { color: var(--mv-primary); font-weight: 700; }

/* ---------- 섹션 제목 ---------- */
html.mpv2 .rightmenuWrap .admin_sub_title,
html.mpv2 .rightmenuWrap table.admin_sub_title {
	clear: both;
	height: auto;
	margin: 22px 0 10px 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--mv-text);
	font-family: var(--mv-font);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
}
html.mpv2 .rightmenuWrap table.admin_sub_title td { color: var(--mv-text); font-size: 15px; font-weight: 700; }
html.mpv2 .rightmenuWrap .admin_sub_title span { font-size: 12px; font-weight: 400; color: var(--mv-muted); }
html.mpv2 .rightmenuWrap .admin_sub_title font { font-family: var(--mv-font); }

/* ---------- 본문 표 : 라운딩 박스 ---------- */
html.mpv2 .rightmenuWrap table.admin_style_01,
html.mpv2 .rightmenuWrap table.admin_style_02 {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--mv-line);
	border-top: 1px solid var(--mv-line);
	border-radius: var(--mv-r-card);
	background: var(--mv-card);
	font-family: var(--mv-font);
	margin-bottom: 14px;
}
/* ★ overflow:hidden 으로 자르지 않는다 — 셀 안에서 position:absolute 로 띄우는
   레이어(옵션 선택창·달력·툴팁 등)가 잘려 사라진다. 모서리는 셀에 직접 준다. */
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr:first-child > *:first-child,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr:first-child > *:first-child { border-top-left-radius: var(--mv-r-card); }
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr:first-child > *:last-child,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr:first-child > *:last-child { border-top-right-radius: var(--mv-r-card); }
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr:last-child > *:first-child,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr:last-child > *:first-child { border-bottom-left-radius: var(--mv-r-card); }
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr:last-child > *:last-child,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr:last-child > *:last-child { border-bottom-right-radius: var(--mv-r-card); }
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr > th,
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr > td,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr > th,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr > td {
	border: 0;
	border-bottom: 1px solid var(--mv-line);
	padding: 11px 12px;
	font-size: 13px;
	line-height: 1.6;
	color: var(--mv-text);
	background-clip: padding-box;
}
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr:last-child > th,
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr:last-child > td,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr:last-child > th,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr:last-child > td { border-bottom: 0; }

html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr > th,
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr > th {
	background: var(--mv-bg);
	color: var(--mv-sub);
	font-weight: 600;
}
/* 폼형 표(좌측 라벨열)는 라벨/값 사이 세로선 */
html.mpv2 .rightmenuWrap table.admin_style_01 > tbody > tr > th { border-right: 1px solid var(--mv-line); text-align: left; }
/* 목록형 표는 헤더 아래를 조금 더 또렷하게 */
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr > th { border-bottom-color: #e2e6ec; white-space: nowrap; }
html.mpv2 .rightmenuWrap table.admin_style_02 > tbody > tr:hover > td { background: #fbfcfd; }

/* 표 안에 다시 들어있는 레이아웃용 표는 건드리지 않는다 */
html.mpv2 .rightmenuWrap table.admin_style_01 table,
html.mpv2 .rightmenuWrap table.admin_style_02 table {
	border: 0; border-radius: 0; overflow: visible; background: none; margin-bottom: 0;
}
html.mpv2 .rightmenuWrap table.admin_style_01 table > tbody > tr > td,
html.mpv2 .rightmenuWrap table.admin_style_01 table > tbody > tr > th,
html.mpv2 .rightmenuWrap table.admin_style_02 table > tbody > tr > td,
html.mpv2 .rightmenuWrap table.admin_style_02 table > tbody > tr > th {
	border: 0; padding: 3px 4px; background: none;
}

/* ---------- 표 안의 입력 컨트롤 ---------- */
html.mpv2 .rightmenuWrap table.admin_style_01 input[type='text'],
html.mpv2 .rightmenuWrap table.admin_style_01 input[type='password'],
html.mpv2 .rightmenuWrap table.admin_style_01 input.box,
html.mpv2 .rightmenuWrap table.admin_style_01 select,
html.mpv2 .rightmenuWrap table.admin_style_01 textarea,
html.mpv2 .rightmenuWrap table.admin_style_02 input[type='text'],
html.mpv2 .rightmenuWrap table.admin_style_02 input[type='password'],
html.mpv2 .rightmenuWrap table.admin_style_02 input.box,
html.mpv2 .rightmenuWrap table.admin_style_02 select,
html.mpv2 .rightmenuWrap table.admin_style_02 textarea,
html.mpv2 .rightmenuWrap .page_noti input[type='text'],
html.mpv2 .rightmenuWrap .page_noti select {
	border: 1px solid var(--mv-line);
	border-radius: var(--mv-r-ctrl);
	background-color: #fff;
	color: var(--mv-text);
	font-family: var(--mv-font);
	font-size: 13px;
	box-sizing: border-box;
	outline: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}
html.mpv2 .rightmenuWrap table.admin_style_01 input[type='text'],
html.mpv2 .rightmenuWrap table.admin_style_01 input[type='password'],
html.mpv2 .rightmenuWrap table.admin_style_01 input.box,
html.mpv2 .rightmenuWrap table.admin_style_01 select,
html.mpv2 .rightmenuWrap table.admin_style_02 input[type='text'],
html.mpv2 .rightmenuWrap table.admin_style_02 input[type='password'],
html.mpv2 .rightmenuWrap table.admin_style_02 input.box,
html.mpv2 .rightmenuWrap table.admin_style_02 select { height: 34px; padding: 0 10px; }
html.mpv2 .rightmenuWrap table.admin_style_01 textarea,
html.mpv2 .rightmenuWrap table.admin_style_02 textarea { padding: 9px 10px; line-height: 1.6; }
html.mpv2 .rightmenuWrap table.admin_style_01 input:focus,
html.mpv2 .rightmenuWrap table.admin_style_01 select:focus,
html.mpv2 .rightmenuWrap table.admin_style_01 textarea:focus,
html.mpv2 .rightmenuWrap table.admin_style_02 input:focus,
html.mpv2 .rightmenuWrap table.admin_style_02 select:focus,
html.mpv2 .rightmenuWrap table.admin_style_02 textarea:focus {
	border-color: var(--mv-primary);
	box-shadow: 0 0 0 3px rgba(59, 130, 246, .12);
}

/* ---------- 버튼 : 라운딩 + 음영 ---------- */
html.mpv2 .rightmenuWrap .btn,
html.mpv2 .rightmenuWrap .btns,
html.mpv2 .rightmenuWrap .btnxs,
html.mpv2 .rightmenuWrap .btnb,
html.mpv2 .rightmenuWrap .btnActive,
html.mpv2 .rightmenuWrap .btnNew2,
html.mpv2 .rightmenuWrap .btnNew3,
html.mpv2 .rightmenuWrap .btnNew4,
html.mpv2 .rightmenuWrap .submitBtn02,
html.mpv2 .rightmenuWrap .cancleBtn02,
html.mpv2 .rightmenuWrap .btnSubmit,
html.mpv2 .rightmenuWrap .btnCancel {
	border-radius: var(--mv-r-ctrl);
	font-family: var(--mv-font);
	font-weight: 600;
	letter-spacing: -0.01em;
	box-shadow: 0 1px 2px rgba(16, 24, 40, .06);
	transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease, border-color .12s ease, color .12s ease;
}
html.mpv2 .rightmenuWrap .btn:hover,
html.mpv2 .rightmenuWrap .btns:hover,
html.mpv2 .rightmenuWrap .btnxs:hover,
html.mpv2 .rightmenuWrap .btnb:hover,
html.mpv2 .rightmenuWrap .btnActive:hover,
html.mpv2 .rightmenuWrap .btnNew2:hover,
html.mpv2 .rightmenuWrap .btnNew3:hover,
html.mpv2 .rightmenuWrap .btnNew4:hover,
html.mpv2 .rightmenuWrap .submitBtn02:hover,
html.mpv2 .rightmenuWrap .cancleBtn02:hover,
html.mpv2 .rightmenuWrap .btnSubmit:hover,
html.mpv2 .rightmenuWrap .btnCancel:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(16, 24, 40, .12);
}
html.mpv2 .rightmenuWrap .btnxs { line-height: 26px; height: 28px; padding: 0 12px; font-size: 12px; }
html.mpv2 .rightmenuWrap .btn02 { border: 1px solid var(--mv-line); background: #fff; color: var(--mv-sub); }
html.mpv2 .rightmenuWrap .btn02:hover { border-color: var(--mv-primary); color: var(--mv-primary); }
html.mpv2 .rightmenuWrap .btn01 { background: var(--mv-primary); }
html.mpv2 .rightmenuWrap .btn01:hover { background: var(--mv-primary-d); }

/* ---------- 페이징 ---------- */
html.mpv2 .rightmenuWrap .paging { margin-top: 16px; text-align: center; font-family: var(--mv-font); }
html.mpv2 .rightmenuWrap .paging a,
html.mpv2 .rightmenuWrap .paging span,
html.mpv2 .rightmenuWrap .paging b {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 28px; height: 28px; padding: 0 6px; margin: 0 2px;
	border: 1px solid transparent; border-radius: var(--mv-r-ctrl);
	color: var(--mv-sub); font-size: 12px; font-weight: 600; text-decoration: none;
}
html.mpv2 .rightmenuWrap .paging a:hover { border-color: var(--mv-primary); color: var(--mv-primary); }
html.mpv2 .rightmenuWrap .paging .page_select,
html.mpv2 .rightmenuWrap .paging a.page_select { background: var(--mv-primary); color: #fff; border-color: var(--mv-primary); }
html.mpv2 .rightmenuWrap .paging input[type='text'] {
	width: 48px; height: 28px; padding: 0 8px; text-align: center;
	border: 1px solid var(--mv-line); border-radius: var(--mv-r-ctrl);
	font-family: var(--mv-font); font-size: 12px; outline: none;
}
html.mpv2 .rightmenuWrap .paging input[type='button'],
html.mpv2 .rightmenuWrap .paging input[type='submit'],
html.mpv2 .rightmenuWrap .paging button {
	height: 28px; padding: 0 12px; cursor: pointer;
	border: 1px solid var(--mv-line); border-radius: var(--mv-r-ctrl);
	background: #fff; color: var(--mv-sub); font-family: var(--mv-font); font-size: 12px; font-weight: 600;
}
html.mpv2 .rightmenuWrap .paging input[type='button']:hover,
html.mpv2 .rightmenuWrap .paging button:hover { border-color: var(--mv-primary); color: var(--mv-primary); }
html.mpv2 .rightmenuWrap .paging img { vertical-align: middle; }

/* ---------- 잡정리 ---------- */
html.mpv2 .rightmenuWrap hr { border: 0; border-top: 1px solid var(--mv-line); margin: 18px 0; }
