/* ========================================
全体フォント・行間（最小）
======================================== */
body {
	font-size: 11px;
	line-height: 1.15;
	padding: 0;
	margin: 0;
}

/* ========================================
コンテナ（外側余白を最小化）
======================================== */
.container {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	padding: 4px 6px; /* ← 最小 */
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}



/* ========================================
テーブル（最小余白）
======================================== */
.task-table {
	width: 100%;
	min-width: 550px;
	border-collapse: collapse;
	margin-bottom: 4px; /* ← 最小 */
	margin-top: 12px !important;
	margin-bottom: 12px !important;
}

.task-table th,
.task-table td {
	border: 1px solid #ccc;
	padding: 0px 0px;   /* ← 最小 */
	font-size: 12px;
	line-height: 1.15;
	text-align: center;
}

/* 列幅 */
.task-table th:nth-child(1),
.task-table td:nth-child(1) {
	width: 48%;
	text-align: left;
}
.task-table th:nth-child(2),
.task-table td:nth-child(2) {
	width: 14%;
}
.task-table th:nth-child(3),
.task-table td:nth-child(3),
.task-table th:nth-child(4),
.task-table td:nth-child(4) {
	width: 10%;
}

/* ========================================
入力欄（最小サイズ）
======================================== */
.task-table input[type="text"],
.task-table input[type="time"],
.task-table input[type="number"] {
	width: 100%;
	padding: 2px 3px;   /* ← 最小 */
	font-size: 11px;
	height: 20px;       /* ← 最小 */
	box-sizing: border-box;
}

/* ========================================
ボタン（最小サイズ）
======================================== */
.add-btn,
.delete-btn,
.sub-btn {
	font-size: 12px;
	padding: 2px 5px;   /* ← 最小 */
	border-radius: 4px;
}





/* 追加ボタン */
.add-btn {
	width: 70%;
	margin-top: 4px;
	background: #2196F3;
	color: #fff;
	border: none;
}

/* 保存ボタン */
.submit-row button {
	width: 100%;
	padding: 8px;       /* ← 最小 */
	font-size: 13px;
	margin-top: 8px;
}

/* ========================================
プロジェクト情報（最小）
======================================== */
.project-info {
	margin: 4px 0 6px;
	gap: 4px;
}
.project-info input {
	padding: 3px 4px;
	font-size: 11px;
}
.project-info {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	max-width: 100%;
}

.project-info label {
	white-space: nowrap;
}

.project-info input[type="text"] {
	flex: 1;              /* ← これで横幅いっぱいに広がる */
	min-width: 200px;     /* ← スマホでも潰れない */
}

/* ========================================
作業開始時刻・人数（最小）
======================================== */
.work-info {
	margin: 4px 0 6px;
	gap: 6px;
	font-size: 11px;
}
.work-info input,
.work-info select {
	padding: 2px 3px;
	font-size: 11px;
}

/* ========================================
休憩（最小）
======================================== */
.break-info {
	margin: 4px 0 6px;
	gap: 6px;
	font-size: 11px;
}
.break-info input {
	padding: 2px 3px;
	font-size: 11px;
}

/* ========================================
モーダル（最小）
======================================== */
.master-modal {
	padding: 8px;
}
.master-item {
	padding: 6px 4px;
}
.master-item-name {
	font-size: 12px;
}
.master-item-time {
	font-size: 10px;
}
/* ========================================
外側余白を強制的に最小化（最優先）
======================================== */
body {
	padding: 0 !important;
}

.container {
	padding: 4px 6px !important;
	border-radius: 6px !important;
}

.day-block {
	position: relative;
}

/* Day タイトル（フォント小さく & 余白ゼロ） */
.day-title {
	font-size: 11px !important;
	margin-bottom: 0 !important;
	line-height: 1.1 !important;
}



.operation-cell {
	display: flex;
	align-items: center;
	gap: 8px; /* ボタン間の余白 */
}

.work-break-row {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}

.work-break-row .block {
	display: flex;
	align-items: center;
	gap: 6px;
}

.work-break-row label {
	white-space: nowrap;
}


.save-area {
	margin: 40px 0;
	text-align: center;
}

.save-btn {
	font-size: 18px;
	padding: 10px 25px;
}

.floating-save-btn {
	position: fixed;
	bottom: 20px;
	right: 20px;
	background: #663399;
	color: #fff;
	padding: 14px 22px;
	border-radius: 50px;
	font-size: 16px;
	border: none;
	box-shadow: 0 4px 12px rgba(0,0,0,0.2);
	z-index: 9999;
}

.day-block {
	position: relative;
}

.day-drop-zone {
	height: 40px !important;
	background: #e0f7ff !important;
	border: 2px dashed #00aaff !important;
	margin: 12px 0 !important;
	display: block !important;
	position: relative !important;
	z-index: 1000 !important;
}

/* 削除ボタン */
.task-table .operation-cell .delete-btn {
	background: #f44336 !important;
	color: #fff !important;
	border: none !important;
	appearance: none;
	-webkit-appearance: none;
}

.drag-handle {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
	touch-action: none;
}
