body {
    font-family: 'Arial', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f7f7f7;
}

header {
    background-color: #4CAF50;
    color: white;
    padding: 10px 20px;
    text-align: center;
}

.menu-bar {
    background-color: #388E3C; /* 濃いめの緑でヘッダーと調和 */
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: sans-serif;
    color: white;
    flex-wrap: wrap;
}

.menu-bar details summary {
    all: unset;
    display: inline-block;
    font-weight: bold;
    padding: 6px 12px;
    background-color: rgba(255, 255, 255, 0.2);
    color: white;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
}
.menu-bar details summary:hover {
    background-color: #2E7D32; /* ホバー時の濃い緑 */
}

.menu-group {
    position: relative; /* これが必要！ */
}

.menu-content {
    position: absolute;
    top: 100%; /* summary のすぐ下に表示されるように */
    left: 0;
    background: white;
    color: black;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    border-radius: 6px;
    min-width: 180px;
    z-index: 10;
    display: flex;
    flex-direction: column;
}

.menu-group:not([open]) .menu-content {
    display: none;
}

.menu-content a {
    padding: 10px;
    text-decoration: none;
    color: #333;
    border-bottom: 1px solid #eee;
    transition: background 0.2s;
}
.menu-content a:hover {
    background-color: #f1f3f5;
}

.logout {
    margin-left: auto;
    padding: 6px 12px;
    background-color: #e53935; /* 赤系で目立つログアウト */
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-weight: bold;
}
.logout:hover {
    background-color: #c62828;
}

.container {
    padding: 20px;
}

form {
    margin-bottom: 20px;
    background: #fff;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
}

form input, form select, form button {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    padding: 10px;
    font-size: 14px;
}

/* フォーム送信ボタンのスタイル */
form button {
    background-color: #4CAF50; /* 緑系の色 */
    color: white;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
}

form button:hover {
    background-color: #45a049; /* 少し濃い緑 */
}

/* 削除ボタンのスタイル */
button.delete-button {
    background-color: #ff4d4d; /* 赤系の色 */
    color: white;
    border: none;
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
}

button.delete-button:hover {
    background-color: #ff1a1a; /* 少し濃い赤 */
}

.remove-order-form {
    background-color: #f44336;
}

.print-button {
    background-color: #4CAF50; /* 緑系の色 */
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.2s ease;
}
.print-button:hover {
    background-color: #45a049;
    transform: scale(1.05);
}

.orderabke .no-print {
        display: none;
}
table {
    width: 100%;
    border-collapse: collapse;
}
th, td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: left;
}

.radio-inline {
    display: flex;
    flex-direction: row; /* 横並びにする */
    gap: 15px;
    align-items: center;
    writing-mode: horizontal-tb; /* 確実に横書き */
}
.radio-inline input[type="radio"] {
    display: inline-block;
    width: auto;
    margin: 0 5px 0 0;
}
.radio-inline label {
    writing-mode: horizontal-tb; /* ラベルの文字を横書き */
    display: inline-block;
}
.balance-display {
    margin-top: 10px;
    font-weight: bold;
}

/* ボタン全体を横並びにする */
.button-container {
    display: flex; /* Flexbox を使用 */
    gap: 10px; /* ボタン間のスペース */
    flex-wrap: wrap; /* 必要に応じて折り返し */
    margin-bottom: 20px; /* セレクトボックスとのスペース */
}

.filter-button {
    display: inline-block; /* 横並びにする */
    width: auto; /* 100% を無効にする */
    margin-right: 10px; /* ボタン間の余白 */
    padding: 10px 20px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #b3b3b3;
    cursor: pointer;
    transition: background-color 0.3s;
}

/* 最後のボタンの余白をなくす */
.filter-button:last-child {
    margin-right: 0;
}

/* 初期状態でテーブルを表示 */
.hidden {
    display: none; /* 非表示にするスタイル */
}

@media print {
  header,
  nav,
  form,
  .print-button {
    display: none !important;
  }

  body {
    margin: 0;
    padding: 0;
  }
}

