@charset "UTF-8";
/**
 * ====================================================
 * Style Sheet (AW Grid Addon)
 *
 * @author    : maomao
 * @date      : 2013/06/20 (refactored: 2026)
 * @copyright : (c) maomao-studio. All Rights Reserved.
 *
 * Refactored:
 *   - ハードコード色を CSS 変数化 (--awgrid-*)
 *   - pt 単位 → rem に変更 (画面向け)
 *   - セクション分割とコメント追加
 *   - 既存セレクタ名はすべて維持 (後方互換)
 * ====================================================
 */

/* ----------------------------------------------------
 * CSS Variables
 * ---------------------------------------------------- */
:root {
	--awgrid-font-size: 0.85rem;
	--awgrid-font-size-small: 0.8rem;
	--awgrid-row-height: 25px;
	--awgrid-row-min-height: 21px;

	--awgrid-text-color: #666;
	--awgrid-text-color-selected: #fff;
	--awgrid-link-color-selected: #ff0;
	--awgrid-link-hover: #FF9900;
	--awgrid-icon-color-selected: #ff9;

	--awgrid-border-cell: #cfcfcf;          /* セル罫線 */
	--awgrid-border-row: #e5e5e5;           /* 行罫線   */
	--awgrid-border-footer: #ccc;           /* フッタ境界 */

	--awgrid-resize-bg: #f9f9f9;
	--awgrid-resize-stripe: #808080;

	--awgrid-mouseover-bg: var(--gray-light, #f5f5f5);
}

/* ----------------------------------------------------
 * Grid 全体
 * ---------------------------------------------------- */
.aw-strict .aw-gpanel-center {
	overflow: hidden;
}

.aw-grid-control {
	width: 100% !important;
	font-size: var(--awgrid-font-size) !important;
}

.aw-grid-control a {
	cursor: pointer;
}

/* ----------------------------------------------------
 * Cell
 * ---------------------------------------------------- */
.aw-grid-control .aw-grid-cell {
	border-right: 1px dotted var(--awgrid-border-cell);
	padding-left: 3px;
	line-height: var(--awgrid-row-height);
	color: var(--awgrid-text-color);
}

.aw-grid-control .aw-grid-cell i.img {
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	display: block;
	height: 95%;
	width: 100%;
	margin-top: 5%;
}

.aw-grid-control .aw-grid-cell code {
	font-size: 0.8em;
	padding: 1px 5px;
	color: inherit;
}
.aw-grid-control .aw-grid-cell code::before { content: "["; padding-right: 1px; }
.aw-grid-control .aw-grid-cell code::after  { content: "]"; padding-left: 1px; }

/* ----------------------------------------------------
 * Row
 * ---------------------------------------------------- */
.aw-grid-control .aw-grid-row {
	border-bottom: 1px solid var(--awgrid-border-row);
	height: var(--awgrid-row-min-height);
}

.aw-grid-control .aw-rows-selected .aw-grid-cell,
.aw-grid-control .aw-rows-selected .aw-grid-cell i {
	color: var(--awgrid-text-color-selected);
}

.aw-grid-control .aw-rows-selected .aw-grid-cell i.fa {
	color: var(--awgrid-icon-color-selected) !important;
	border-color: var(--awgrid-icon-color-selected) !important;
}

.aw-grid-control .aw-rows-selected .aw-grid-cell a {
	color: var(--awgrid-link-color-selected);
}

.aw-grid-control .aw-rows-selected a:hover {
	color: var(--awgrid-link-hover);
}

.aw-mouseover-row {
	background: var(--awgrid-mouseover-bg);
}

/* ----------------------------------------------------
 * Header
 * ---------------------------------------------------- */
.aw-grid-control .aw-grid-header {
	text-shadow: 1px 1px 1px #fff;
}

.aw-grid-control .aw-grid-header .aw-item-box {
	white-space: pre;
}

.aw-grid-header small {
	font-size: 0.8em;
	margin-left: 0.1em;
	vertical-align: baseline;
}

.aw-header-multi .aw-grid-control .aw-item-ruler {
	height: auto;
}

/* ----------------------------------------------------
 * Row Selector
 * ---------------------------------------------------- */
.aw-grid-control .aw-row-selector {
	color: var(--awgrid-text-color);
	text-shadow: 1px 1px 1px #fff;
	font-size: 10px;
}

/* ----------------------------------------------------
 * Footer
 * ---------------------------------------------------- */
.aw-grid-control .aw-footer-0 {
	border-top: 1px solid var(--awgrid-border-footer);
}

/* ----------------------------------------------------
 * Frame (外枠)
 * ---------------------------------------------------- */
.aw-grid-frame {
	position: relative;
	width: 100%;
	padding-right: 8px !important;
	z-index: 2;
}

/* ----------------------------------------------------
 * Toolbar
 * ---------------------------------------------------- */
.aw-grid-frame .toolbar {
	padding: 5px 0;
	display: none;
	margin: 0 -8px 0 0;
}

.aw-grid-frame.show-toolbar .toolbar {
	display: block;
}

.aw-grid-frame .toolbar button {
	border-radius: 0.2rem;
	margin: 2px;
	cursor: pointer;
	font-size: 0.9em;
	line-height: 2.25em;
	border-style: solid;
	border-width: 1px;
	padding: 0 20px;
	transition: background 0.2s;
	white-space: nowrap;
}

.aw-grid-frame .toolbar button i.fa {
	padding-right: 4px;
}

.aw-grid-frame .toolbar button:hover {
	border-color: transparent;
}

.aw-grid-frame .toolbar button[disabled] {
	cursor: not-allowed;
	text-shadow: 1px 1px #fff;
	border-color: transparent;
}

/* btn-group 内ボタン */
.aw-grid-frame .toolbar .btn-group button.first {
	margin-left: 0;
	margin-right: 0;
	border-radius: 0.2rem 0 0 0.2rem;
}

.aw-grid-frame .toolbar .btn-group button.dropdown-toggle.dropdown-toggle-split {
	margin-left: -1px;
	border-radius: 0 0.2rem 0.2rem 0;
	padding: 0 10px;
}

.aw-grid-frame .toolbar .btn-group .dropdown-menu .dropdown-item {
	padding-top: 0.35rem;
	padding-bottom: 0.35rem;
}

/* ----------------------------------------------------
 * Info Bar (件数・選択数表示)
 * ---------------------------------------------------- */
.aw-grid-info {
	border-style: dotted;
	border-width: 0;
	padding: 4px 2px;
	font-size: var(--awgrid-font-size-small);
	margin: 0 -8px 0 0;
}

.aw-grid-info i {
	margin: 0 15px;
}

.aw-grid-info input {
	margin-top: 0;
	padding-top: 0;
}

.report-view .aw-grid-info {
	border-bottom: 0;
}

/* 集計計算ボタン */
.aw-count-cal {
	margin-left: 5px;
	cursor: pointer;
	font-family: 'FontAwesome';
	font-size: 1.1em;
}
.aw-count-cal::after        { content: "\f1ec"; }
.aw-count-cal.action::after { content: "\f021"; }

/* ----------------------------------------------------
 * Selectors Visible
 * ---------------------------------------------------- */
.aw-grid-control.aw-selectors-visible {
	min-height: 120px;
	height: 400px;
}

/* ----------------------------------------------------
 * Focus (非表示)
 * ---------------------------------------------------- */
.aw-control-focus {
	z-index: 0 !important;
	width: 1px !important;
	height: 1px !important;
}

/* ----------------------------------------------------
 * Resize Handle
 * ---------------------------------------------------- */
.aw-grid-control .ui-resizable-handle {
	bottom: 0;
}

.aw-grid-control .ui-resizable-handle:hover {
	background-color: var(--awgrid-resize-bg);
	opacity: 0.4;
	background-size: 5px 5px;
	background-image: repeating-linear-gradient(
		-45deg,
		var(--awgrid-resize-stripe) 0,
		var(--awgrid-resize-stripe) 1px,
		var(--awgrid-resize-bg) 0,
		var(--awgrid-resize-bg) 50%
	);
}

/* ----------------------------------------------------
 * Firefox 専用 (将来の挙動確認要)
 * ---------------------------------------------------- */
@-moz-document url-prefix() {
	.aw-grid-control .aw-bars-spacer {
		padding: 0 20px 20px 0;
	}
}
