/* 画面下端固定バー（ポータル化後も効くグローバル指定） */
.edit-fixedbar {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 10000 !important;
    width: 100% !important;
    height: initial !important;
    padding: 1em !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .5rem 1rem !important;
    background: #2C3E50 !important;
	color: ivory;
}
.edit-fixedbar .owner-actions { flex: auto 1 1; margin-right: 2em; }

/* 編集カード 固定フッターバー */
.opus_edit_card .edit-fixedbar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3000;
	font-weight: bold;
    backdrop-filter: blur(2px);
    border-top: 1px solid rgba(0,0,0,0.12);
    padding: 1em;
    display: flex;
    align-items: center !important;
    justify-content: space-between !important;
    /* 既存 .hdr-right の干渉を打ち消す */
    height: auto !important;
    width: 100% !important;
    align-self: auto !important;
    grid-area: auto !important;
    border-radius: 0 !important;
    white-space: normal !important;
    flex-direction: row !important;
    color: inherit !important;
}
.opus_edit_card .edit-fixedbar .chipline {
    display: inline-flex;
    flex-wrap: wrap;
    gap: .25rem .5rem;
    vertical-align: middle;
}
.opus_edit_card .edit-fixedbar .owner-actions {
    display: inline-flex;
    gap: .5rem;
}
/* 被り回避の余白（固定バーの高さ分） */
.opus_edit_card .body { padding-bottom: 88px; }

/* 万一親に overflow があっても前面に出す */
.opus_edit_card .OCV { overflow: visible; }
.opus_edit_card .hdr-right { overflow: visible; }

/* 会員一覧機能 */
.bbb1 {
	border-bottom: solid 1px #000000;
}	
.btb1 {
    border-top: solid 1px #000000;
}	

/** 五十音リンク **/
.soundPro-links {
	display: flex;
	flex-wrap: wrap;
	margin: 1em 0;
	justify-content: center;
}

.soundPro-links a {
	margin: 10px;
	text-decoration: none;
	color: #333333;
	border: 1px solid #333;
	border-radius: 0.5em;
	padding: 0.5vh 1.5vh;
	justify-content: center;
	align-items: center;
}

.soundPro-links a:hover {
	background: -webkit-gradient(linear, left bottom, left top, from(#f1e767), to(#feb645));
	background: -webkit-linear-gradient(bottom, #f1e767 0%, #feb645 100%);
	background: linear-gradient(to top, #f1e767 0%, #feb645 100%);
	font-weight: bold;
}
.soundPro-links a.active {
	background-color: #0FBE7C;
	color: #FFFFFF;
}

/* 会員一覧 child1 幅バケット（inline style 不使用・JSはclass付与のみ）■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    使用ファイル > 会員一覧 (#MEMRESULT_P / #MEMRESULT_C / #MEMRESULT_S)
*/
#MEMRESULT_R .MEM-mother .child1,
#MEMRESULT_P .MEM-mother .child1 .MBTN,
#MEMRESULT_C .MEM-mother .child1 .MBTN,
#MEMRESULT_S .MEM-mother .child1 .MBTN {
    white-space: nowrap;
}

/* デフォルト（バケット未適用時の安全幅） */
#MEMRESULT_R .MEM-mother .child1,
#MEMRESULT_P .MEM-mother .child1,
#MEMRESULT_C .MEM-mother .child1,
#MEMRESULT_S .MEM-mother .child1 {
    min-width: 240px;
    overflow-wrap: normal;
    word-break: normal;
}

/* --- 幅バケット: コンテナ（#MEMRESULT_*）に memw-XXX を付与 --- */
.memw-224  .MEM-mother .child1 { min-width: 224px; }
.memw-240  .MEM-mother .child1 { min-width: 240px; }
.memw-256  .MEM-mother .child1 { min-width: 256px; }
.memw-272  .MEM-mother .child1 { min-width: 272px; }
.memw-288  .MEM-mother .child1 { min-width: 288px; }
.memw-304  .MEM-mother .child1 { min-width: 304px; }
.memw-320  .MEM-mother .child1 { min-width: 320px; }
.memw-336  .MEM-mother .child1 { min-width: 336px; }
.memw-352  .MEM-mother .child1 { min-width: 352px; }
.memw-368  .MEM-mother .child1 { min-width: 368px; }
.memw-384  .MEM-mother .child1 { min-width: 384px; }
.memw-400  .MEM-mother .child1 { min-width: 400px; }
.memw-416  .MEM-mother .child1 { min-width: 416px; }
.memw-432  .MEM-mother .child1 { min-width: 432px; }
.memw-448  .MEM-mother .child1 { min-width: 448px; }
.memw-464  .MEM-mother .child1 { min-width: 464px; }
.memw-480  .MEM-mother .child1 { min-width: 480px; }
.memw-496  .MEM-mother .child1 { min-width: 496px; }
.memw-512  .MEM-mother .child1 { min-width: 512px; }
.memw-528  .MEM-mother .child1 { min-width: 528px; }
.memw-544  .MEM-mother .child1 { min-width: 544px; }
.memw-560  .MEM-mother .child1 { min-width: 560px; }
.memw-576  .MEM-mother .child1 { min-width: 576px; }
.memw-592  .MEM-mother .child1 { min-width: 592px; }
.memw-608  .MEM-mother .child1 { min-width: 608px; }
.memw-624  .MEM-mother .child1 { min-width: 624px; }
.memw-640  .MEM-mother .child1 { min-width: 640px; }

.is-hidden { display: none !important; }






















/* 作品カード B案＋帯ヘッダ／フッター再配置（CSSのみ）■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    使用ファイル > openMD_Prof.php
*/

/* 枠幅切替 */
.opus_view_card {
	width: 100%;
	margin: 0 auto;
}

/* B案ベース（配色） */
.OCV.theme-ml, .registration-result {
	--OCV-accent: #57606A;
	--OCV-chip: #F4F6F8;
	--OCV-chip-strong: #E9EEF2;
	--OCV-ink: #24292F;
	--OCV-band-bg: #2C3E50;
	--OCV-band-ink: ivory;

	border-radius: 0.5em;
	background: rgba(255, 255, 187, 0.3);
	overflow: hidden;
    margin-bottom: 1em;

	/* デスクトップ：header | header-right → body */
	display: grid;
	grid-template-columns: minmax(0,1fr) max-content;
	grid-template-areas:
		"header header-right"
		"body   body"
		"footer footer";
	column-gap: 0;
	row-gap: 0;
}

/* 見出し帯（左） */
.OCV.theme-ml .header, .registration-result .header {
	grid-area: header;
	background: var(--OCV-band-bg);
	color: var(--OCV-band-ink);
	padding: 1rem 1.25rem;
	border-bottom: 1px solid var(--OCV-border);
	border-radius: 0.5em 0 0 0;
}
.OCV.theme-ml .edit-footer, .registration-result .edit-footer {
	grid-area: footer;
	background: var(--OCV-band-bg);
	color: var(--OCV-band-ink);
	padding: 1rem 1.25rem;
	border-bottom: 1px solid var(--OCV-border);
	border-radius:  0 0 0.5em 0.5em;
}
.OCV.theme-ml .header.is-sticky, .registration-result .header.is-sticky {
	position: sticky;
	top: 0;
	z-index: 10;
}
.OCV.theme-ml .edit-footer.is-sticky, .registration-result .edit-footer.is-sticky {
	position: sticky;
	bottom: 0;
	z-index: 10;
}
.main_title {
	font-size: 1.35rem;
	line-height: 1.3;
	color: inherit;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700;
}
.sub_title {
	font-size: 1em;
	line-height: 1.3;
	color: inherit;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 400;
}

/* 見出し帯（右：シリーズ＋操作）デスクトップ時は帯の右側 */
.OCV.theme-ml .hdr-right {
	grid-area: header-right;
	background: var(--OCV-band-bg);
	color: var(--OCV-band-ink);
	padding: 0.3em;
	border-radius: 0 0.5em 0 0;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: .5rem;
	/* 右側は折り返さず必要最小幅 */
	width: max-content;
	white-space: nowrap;
}

/* 本文（B案の横並び→縦積み） */
.OCV.theme-ml .body {
	grid-area: body;
	padding: 1rem 1.25rem 1.25rem;
}
.OCV.theme-ml [class^="row"], .registration-result  [class^="row"] {
	display: grid;
	grid-template-columns: 9rem 1fr;
	gap: .75rem 1rem;
	align-items: start;
	padding: 0.5em;
	border-bottom: 1px dashed var(--OCV-border);
}
.OCV.theme-ml [class^="row"]:last-child, .registration-result  [class^="row"]:last-child { border-bottom: none; }

/* 共通パーツ */
.OCV .CardLabel, .registration-result .CardLabel { font-size: .85rem; font-weight: 600; opacity: .85; }
.OCV .CardValue, .registration-result .CardValue { font-size: .95rem; }
.OCV .release-date, .registration-result .release-date { font-variant-numeric: tabular-nums; letter-spacing: .02em; }

/* デスクトップの帯上は反転チップ／反転ボタン */
#SLTA, #ATAA {
    text-align: center;
}
#RELAYONOFF, #MEM_P, #MEM_C, #MEM_S {
    font-weight: bolder;
    cursor: pointer;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    color: #FFFFFF;
    background-color: #555555;
    border: 0;
    border-radius: 0.5em;
    margin-left: 1em;
    margin-right: 1em;
}
#RELAYONOFF.on, #MEM_P.on, #MEM_C.on, #MEM_S.on {
    background-color: #0FBE7C;
}
#SEARCHPARAM2:not(.result) {
    display: none;
}
#SEARCHPARAM2.result {
    display: block;
}















/* ヘッダー全体（左右2分割） */
.header {
	display: grid;
	grid-template-columns: 1fr auto; /* 左=タイトルは伸ばす／右=最小幅 */
	align-items: stretch;            /* 行の高さに合わせる */
	gap: .5rem;
  }
  
  /* 右カラムそのものを“下端”に寄せる */
  .hdr-right {
	align-self: end;                 /* ← これで下揃え */
	display: flex;                   /* 中身を上下2段 */
	flex-direction: column;
	justify-content: flex-end;       /* 内側も下寄せ */
	gap: .35rem;
	height: 100%;
  }
  
  /* 900px以下は1列右寄せ（既定の要件通り） */
  @media (max-width: 900px) {
	.hdr-right {
	  align-self: auto;              /* 下揃え解除 */
	  flex-direction: row;
	  justify-content: flex-end;     /* 横並び右寄せ */
	  align-items: center;
	  gap: .5rem;
	}
  }
  
/* 編集カード内 固定フッターバー */
.edit-fixedbar {
    position: sticky;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 50;
    background: rgba(255,255,255,0.96);
    backdrop-filter: blur(2px);
    border-top: 1px solid rgba(0,0,0,0.1);
    padding: 8px 12px;
}
.edit-fixedbar .chipline {
    display: inline-flex;
    flex-wrap: wrap;
    gap: .25rem .5rem;
    vertical-align: middle;
}
.edit-fixedbar .owner-actions {
    display: inline-flex;
    gap: .5rem;
    float: right;
}
	