@import '_content/RazorLibrary/RazorLibrary.bundle.scp.css';

/* /Pages/A01/Index.razor.rz.scp.css */
/* ページ全体の背景コンテナ */
.admin-login-page-container[b-8ngt7904oz] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 2rem;
    background-color: #2c3e50; /* ダークな背景色 */
}

/* ログインフォームを囲むカード */
.login-card[b-8ngt7904oz] {
    width: 100%;
    max-width: 420px;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    overflow: hidden;
}

/* カードのヘッダー部分 */
.login-header[b-8ngt7904oz] {
    background-color: #f7f9fa;
    padding: 2rem;
    text-align: center;
    border-bottom: 1px solid #e9ecef;
}

.page-title[b-8ngt7904oz] {
    color: #00BCD4; /* テーマカラーを適用 */
    font-weight: 700;
    margin: 0;
}

.product-subtitle[b-8ngt7904oz] {
    margin: 0.25rem 0 0;
    color: #6c757d;
    font-size: 0.9rem;
}

/* フォーム全体のエリア */
.login-form[b-8ngt7904oz] {
    padding: 2rem;
}

/* 各入力グループ */
.form-group[b-8ngt7904oz] {
    margin-bottom: 1.5rem;
}

    .form-group label[b-8ngt7904oz] {
        display: block;
        margin-bottom: 0.5rem;
        font-weight: 500;
        color: #495057;
        font-size: 0.9rem;
    }

/* 入力フィールドの共通スタイル */
.form-control[b-8ngt7904oz] {
    display: block;
    width: 100%;
    padding: 0.75rem;
    font-size: 1rem;
    border: 1px solid #ced4da;
    border-radius: 6px;
    background-color: #f8f9fa; /* 入力欄に少し色をつける */
    transition: border-color 0.2s, box-shadow 0.2s;
}

    .form-control:focus[b-8ngt7904oz] {
        outline: none;
        background-color: #fff;
        border-color: #34495e; /* フォーカス時にテーマカラーに */
        box-shadow: 0 0 0 3px rgba(52, 73, 94, 0.2);
    }

/* パスワード入力欄とアイコンのコンテナ */
.password-wrapper[b-8ngt7904oz] {
    position: relative;
}

.password-icon-toggle[b-8ngt7904oz] {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    transform: translateY(-50%);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
}

    .password-icon-toggle img[b-8ngt7904oz] {
        width: 20px;
        height: 20px;
        opacity: 0.5;
    }

/* エラーメッセージ */
.error-message[b-8ngt7904oz] {
    display: flex; /* アイコンとテキストを横並びに */
    align-items: center; /* 上下中央揃え */
    gap: 0.5rem; /* アイコンとテキストの間の隙間 */
    padding: 0.25rem .5rem 0.6rem; /* 内側の余白 */
    margin-top: 0.5rem; /* 上の要素との距離 */
    font-size: 0.875rem; /* 少しだけ大きくして読みやすく */
    font-weight: 500;
    /* 視認性の高い、少し落ち着いた赤色に変更 */
    color: #b91c1c;
    border-radius: 6px; /* 他の入力コントロールと角丸を合わせる */
}

    /* エラーアイコンを先頭に表示 */
    .error-message[b-8ngt7904oz]::before {
        content: '';
        flex-shrink: 0; /* アイコンが縮まないように */
        width: 16px;
        height: 16px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23b91c1c' class='bi bi-exclamation-circle-fill' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z'/%3E%3C/svg%3E");
        background-size: contain;
        background-repeat: no-repeat;
    }

/* 送信ボタンのエリア */
.form-submit-area[b-8ngt7904oz] {
    margin-top: 2rem;
}

/* ログインボタン */
.btn-login[b-8ngt7904oz] {
    width: 100%;
    padding: 0.85rem;
    font-size: 1.1rem;
    font-weight: 600;
    border: none;
    border-radius: 6px;
    background-color: #34495e;
    color: #fff;
    cursor: pointer;
    transition: background-color 0.2s, transform 0.1s;
}

    .btn-login:hover[b-8ngt7904oz] {
        background-color: #2c3e50;
    }

    .btn-login:active[b-8ngt7904oz] {
        transform: scale(0.98);
    }

/* パスワード忘れリンクのコンテナ */
.forgot-password-container[b-8ngt7904oz] {
    text-align: center;
    margin-top: 1.5rem; /* ログインボタンとの隙間 */
}

/* パスワード忘れリンクのスタイル */
.forgot-password-link[b-8ngt7904oz] {
    color: #00BCD4; /* テーマカラー */
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.2s;
}

    .forgot-password-link:hover[b-8ngt7904oz] {
        color: #0194a8; /* 少し濃い色に */
        text-decoration: underline;
    }
/* /Pages/A02/ResetPassword.razor.rz.scp.css */
/* ページ全体の背景コンテナ */
.admin-login-page-container[b-xma1fh89fw] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 2rem;
    background-color: #2c3e50; /* ダークな背景色 */
}

/* ログインフォームを囲むカード */
.login-card[b-xma1fh89fw] {
    width: 100%;
    max-width: 420px;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    overflow: hidden;
}

/* カードのヘッダー部分 */
.login-header[b-xma1fh89fw] {
    background-color: #f7f9fa;
    padding: 2rem;
    text-align: center;
    border-bottom: 1px solid #e9ecef;
}

.page-title[b-xma1fh89fw] {
    color: #00BCD4; /* テーマカラーを適用 */
    font-weight: 700;
    margin: 0;
}

.product-subtitle[b-xma1fh89fw] {
    margin: 0.25rem 0 0;
    color: #6c757d;
    font-size: 0.9rem;
}

/* フォーム全体のエリア */
.login-form[b-xma1fh89fw] {
    padding: 2rem;
}

/* 説明文のスタイル */
.form-description[b-xma1fh89fw] {
    font-size: 0.9rem;
    color: #6c757d;
    line-height: 1.6;
    margin-bottom: 2rem;
    text-align: left;
}

/* 各入力グループ */
.form-group[b-xma1fh89fw] {
    margin-bottom: 1.5rem;
}

    .form-group label[b-xma1fh89fw] {
        display: block;
        margin-bottom: 0.5rem;
        font-weight: 500;
        color: #495057;
        font-size: 0.9rem;
    }

/* 入力フィールドの共通スタイル (CustomTextBoxに適用される) */
.form-control[b-xma1fh89fw] {
    display: block;
    width: 100%;
    padding: 0.75rem;
    font-size: 1rem;
    border: 1px solid #ced4da;
    border-radius: 6px;
    background-color: #f8f9fa;
    transition: border-color 0.2s, box-shadow 0.2s;
}

/* ::deep combinatorを使ってCustomTextBox内のinput要素にスタイルを適用 */
[b-xma1fh89fw] .form-control:focus {
    outline: none;
    background-color: #fff;
    border-color: #34495e; /* フォーカス時に管理者用テーマカラーに */
    box-shadow: 0 0 0 3px rgba(52, 73, 94, 0.2);
}

/* エラーメッセージ */
.error-message[b-xma1fh89fw] {
    display: flex; /* アイコンとテキストを横並びに */
    align-items: center; /* 上下中央揃え */
    gap: 0.5rem; /* アイコンとテキストの間の隙間 */
    padding: 0.25rem .5rem 0.6rem; /* 内側の余白 */
    margin-top: 0.5rem; /* 上の要素との距離 */
    font-size: 0.875rem; /* 少しだけ大きくして読みやすく */
    font-weight: 500;
    /* 視認性の高い、少し落ち着いた赤色に変更 */
    color: #b91c1c;
    border-radius: 6px; /* 他の入力コントロールと角丸を合わせる */
}

    /* エラーアイコンを先頭に表示 */
    .error-message[b-xma1fh89fw]::before {
        content: '';
        flex-shrink: 0; /* アイコンが縮まないように */
        width: 16px;
        height: 16px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23b91c1c' class='bi bi-exclamation-circle-fill' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z'/%3E%3C/svg%3E");
        background-size: contain;
        background-repeat: no-repeat;
    }

/* 送信ボタンのエリア */
.form-submit-area[b-xma1fh89fw] {
    margin-top: 2rem;
}

/* 設定ボタン */
.btn-login[b-xma1fh89fw] {
    width: 100%;
    padding: 0.85rem;
    font-size: 1.1rem;
    font-weight: 600;
    border: none;
    border-radius: 6px;
    background-color: #34495e; /* 管理者用テーマカラーを適用 */
    color: #fff;
    cursor: pointer;
    transition: background-color 0.2s, transform 0.1s;
}

    .btn-login:hover[b-xma1fh89fw] {
        background-color: #2c3e50;
    }

    .btn-login:active[b-xma1fh89fw] {
        transform: scale(0.98);
    }
/* /Pages/A03/ForgetPassword.razor.rz.scp.css */
/* ページ全体の背景コンテナ */
.admin-login-page-container[b-c4v9g2tjyc] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 2rem;
    background-color: #2c3e50; /* ダークな背景色 */
}

/* ログインフォームを囲むカード */
.login-card[b-c4v9g2tjyc] {
    width: 100%;
    max-width: 420px;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    overflow: hidden;
}

/* カードのヘッダー部分 */
.login-header[b-c4v9g2tjyc] {
    background-color: #f7f9fa;
    padding: 2rem;
    text-align: center;
    border-bottom: 1px solid #e9ecef;
}

.page-title[b-c4v9g2tjyc] {
    color: #00BCD4; /* テーマカラーを適用 */
    font-weight: 700;
    margin: 0;
}

.product-subtitle[b-c4v9g2tjyc] {
    margin: 0.25rem 0 0;
    color: #6c757d;
    font-size: 0.9rem;
}

/* フォーム全体のエリア */
.login-form[b-c4v9g2tjyc] {
    padding: 2rem;
}

/* 説明文のスタイル */
.form-description[b-c4v9g2tjyc] {
    font-size: 0.9rem;
    color: #6c757d;
    line-height: 1.6;
    margin-bottom: 2rem;
    text-align: left;
}

/* 各入力グループ */
.form-group[b-c4v9g2tjyc] {
    margin-bottom: 1.5rem;
}

    .form-group label[b-c4v9g2tjyc] {
        display: block;
        margin-bottom: 0.5rem;
        font-weight: 500;
        color: #495057;
        font-size: 0.9rem;
    }

/* 入力フィールドの共通スタイル (CustomTextBoxに適用される) */
.form-control[b-c4v9g2tjyc] {
    display: block;
    width: 100%;
    padding: 0.75rem;
    font-size: 1rem;
    border: 1px solid #ced4da;
    border-radius: 6px;
    background-color: #f8f9fa;
    transition: border-color 0.2s, box-shadow 0.2s;
}

/* ::deep combinatorを使ってCustomTextBox内のinput要素にスタイルを適用 */
[b-c4v9g2tjyc] .form-control:focus {
    outline: none;
    background-color: #fff;
    border-color: #34495e; /* フォーカス時に管理者用テーマカラーに */
    box-shadow: 0 0 0 3px rgba(52, 73, 94, 0.2);
}

/* 送信ボタンのエリア */
.form-submit-area[b-c4v9g2tjyc] {
    margin-top: 2rem;
}

/* ボタンを2つ並べるためのスタイル */
.dual-buttons[b-c4v9g2tjyc] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

    .dual-buttons .btn[b-c4v9g2tjyc] {
        flex: 1;
    }

/* ボタンの共通スタイル */
.btn[b-c4v9g2tjyc] {
    padding: 0.75rem;
    font-size: 1rem;
    font-weight: 600;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-primary[b-c4v9g2tjyc] {
    background-color: #34495e; /* 管理者用テーマカラー */
    color: #fff;
}

    .btn-primary:hover[b-c4v9g2tjyc] {
        background-color: #2c3e50;
    }

.btn-secondary[b-c4v9g2tjyc] {
    background-color: #f1f3f5;
    color: #495057;
    border: 1px solid #dee2e6;
}

    .btn-secondary:hover[b-c4v9g2tjyc] {
        background-color: #e9ecef;
    }

/* エラーメッセージ */
.error-message[b-c4v9g2tjyc] {
    display: flex; /* アイコンとテキストを横並びに */
    align-items: center; /* 上下中央揃え */
    gap: 0.5rem; /* アイコンとテキストの間の隙間 */
    padding: 0.25rem .5rem 0.6rem; /* 内側の余白 */
    margin-top: 0.5rem; /* 上の要素との距離 */
    font-size: 0.875rem; /* 少しだけ大きくして読みやすく */
    font-weight: 500;
    /* 視認性の高い、少し落ち着いた赤色に変更 */
    color: #b91c1c;
    border-radius: 6px; /* 他の入力コントロールと角丸を合わせる */
}

    /* エラーアイコンを先頭に表示 */
    .error-message[b-c4v9g2tjyc]::before {
        content: '';
        flex-shrink: 0; /* アイコンが縮まないように */
        width: 16px;
        height: 16px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23b91c1c' class='bi bi-exclamation-circle-fill' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4zm.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2z'/%3E%3C/svg%3E");
        background-size: contain;
        background-repeat: no-repeat;
    }
