/* ============================================================
   V-AIR-SIM 主样式表
   风格参考：昆明航空官网 - 深蓝商务蓝白风格
   ============================================================ */

:root{
    --color-main:#004080;
    --color-light-blue:#0070c0;
    --color-dark-blue:#003366;
    --color-gray:#f5f7fa;
    --color-border:#e0e6ed;
}

body{
    background:#ffffff;
    font-family:"Microsoft Yahei","PingFang SC",sans-serif;
    color:#333;
}

/* 导航栏 */
.navbar{
    background:var(--color-main);
    padding:12px 0;
}
.navbar a{color:#fff;}
.navbar-brand{font-weight:bold;font-size:1.2rem;}
.nav-link:hover{color:#cce0ff;}

/* 页面标题 */
.page-title{
    color:var(--color-main);
    font-weight:bold;
    margin:20px 0;
    border-left:4px solid var(--color-light-blue);
    padding-left:12px;
}

/* 卡片 */
.card{
    border-radius:8px;
    box-shadow:0 1px 4px rgba(0,0,0,0.08);
    border:none;
    margin-bottom:20px;
}
.card:hover{
    box-shadow:0 4px 12px rgba(0,64,128,0.15);
    transition:box-shadow 0.3s;
}

/* 按钮 */
.btn-primary{
    background:var(--color-main);
    border-color:var(--color-main);
}
.btn-primary:hover{
    background:var(--color-light-blue);
    border-color:var(--color-light-blue);
}
.btn-outline-primary{
    color:var(--color-main);
    border-color:var(--color-main);
}
.btn-outline-primary:hover{
    background:var(--color-main);
    border-color:var(--color-main);
}

/* Banner */
.banner{
    background:linear-gradient(135deg,#004080,#0070c0);
    color:white;
    padding:60px 0;
    text-align:center;
}
.banner h1{
    font-size:2.5rem;
    font-weight:bold;
    margin-bottom:15px;
}

/* 表格 */
.table{
    margin-bottom:0;
}
.table thead th{
    background:var(--color-gray);
    color:var(--color-main);
    border-bottom:2px solid var(--color-main);
    font-weight:600;
}

/* 表单 */
.form-control:focus,.form-select:focus{
    border-color:var(--color-light-blue);
    box-shadow:0 0 0 0.2rem rgba(0,112,192,0.25);
}

/* 页脚 */
footer{
    margin-top:40px;
}
footer h5{color:#fff;}
footer p{color:#b0c4de;margin-bottom:5px;}

/* 地图容器 */
#map{
    width:100%;
    height:600px;
    background:#e9edf2;
    border-radius:8px;
}

/* 统计卡片 */
.stat-card{
    text-align:center;
    padding:20px;
}
.stat-card .fs-3{
    color:var(--color-main);
    font-weight:bold;
}

/* ============================================================
   自定义复选框样式 - 勾选显示✅️
   ============================================================ */
input[type="checkbox"].form-check-input{
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    width:20px;
    height:20px;
    min-width:20px;
    min-height:20px;
    border:2px solid #adb5bd;
    border-radius:4px;
    background-color:#fff;
    cursor:pointer;
    position:relative;
    vertical-align:middle;
    transition:all 0.2s ease;
    padding:0;
    margin:0;
}
input[type="checkbox"].form-check-input:hover{
    border-color:var(--color-light-blue,#0070c0);
}
input[type="checkbox"].form-check-input:focus{
    outline:none;
    border-color:var(--color-light-blue,#0070c0);
    box-shadow:0 0 0 0.2rem rgba(0,112,192,0.25);
}
input[type="checkbox"].form-check-input:checked{
    background-color:var(--color-light-blue,#0070c0);
    border-color:var(--color-light-blue,#0070c0);
}
input[type="checkbox"].form-check-input:checked::after{
    content:"✅";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    font-size:13px;
    line-height:1;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}
input[type="checkbox"].form-check-input:disabled{
    opacity:0.5;
    cursor:not-allowed;
}
input[type="checkbox"].form-check-input.form-check-input-lg{
    width:24px;
    height:24px;
}
input[type="checkbox"].form-check-input.form-check-input-lg:checked::after{
    font-size:16px;
}
input[type="checkbox"].form-check-input.form-check-input-sm{
    width:16px;
    height:16px;
}
input[type="checkbox"].form-check-input.form-check-input-sm:checked::after{
    font-size:11px;
}
