*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f4f6f8;color:#111827}.container{width:min(1050px,100%);margin:0 auto;padding:18px}.card{background:white;border-radius:18px;padding:18px;margin:14px 0;box-shadow:0 8px 25px rgba(15,23,42,.06)}.logo-title{font-size:28px;font-weight:800;margin-bottom:4px}.subtle{color:#6b7280;font-size:14px}input,textarea,select{width:100%;padding:13px;border:1px solid #d1d5db;border-radius:12px;margin:7px 0 12px;font-size:16px}textarea{min-height:95px}label{font-size:14px;font-weight:700;color:#374151}button,.button{border:0;background:#2563eb;color:white;padding:14px 18px;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;text-align:center}.button.secondary{background:#16a34a}.button.gray{background:#6b7280}.button.red{background:#dc2626}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.menu-card{min-height:130px;display:flex;flex-direction:column;justify-content:center}.success{background:#ecfdf5;color:#166534;padding:12px;border-radius:12px;margin-bottom:12px}.error{background:#fef2f2;color:#991b1b;padding:12px;border-radius:12px;margin-bottom:12px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid #e5e7eb;padding:9px;text-align:left}th{background:#f8fafc}.table-wrap{overflow-x:auto}.summary-box{background:#f8fafc;border-radius:14px;padding:14px;margin-top:12px;line-height:1.9}.grand-total{margin-top:8px;font-size:20px;color:#2563eb}.signature-box{min-height:95px;border:2px dashed #cbd5e1;border-radius:14px;padding:14px;color:#64748b;background:#f8fafc}.small-red{background:#dc2626;padding:7px 9px;border-radius:8px;font-size:12px}@media(max-width:720px){.grid,.menu-grid{grid-template-columns:1fr}.container{padding:12px}.card{border-radius:14px;padding:14px}table{font-size:12px}}
.search-results {
    display: none;
    background: #ffffff;
    border: 1px solid #d1d5db;
    border-radius: 12px;
    margin-top: -6px;
    margin-bottom: 12px;
    max-height: 260px;
    overflow-y: auto;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.08);
}
.search-result-item {
    padding: 12px;
    border-bottom: 1px solid #eef2f7;
    cursor: pointer;
    display: grid;
    grid-template-columns: 90px 1fr 90px;
    gap: 8px;
    align-items: center;
}
.search-result-item:hover {
    background: #f8fafc;
}
.search-result-item em {
    color: #2563eb;
    font-style: normal;
    text-align: right;
    font-weight: 700;
}
.search-result-empty {
    padding: 12px;
    color: #6b7280;
}
@media(max-width:720px){
    .search-result-item {
        grid-template-columns: 1fr;
        gap: 3px;
    }
    .search-result-item em {
        text-align: left;
    }
}

.checkbox-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 8px 0 12px;
}
.check-card {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #f8fafc;
    border: 1px solid #dbe3ef;
    border-radius: 12px;
    padding: 12px;
    font-weight: 700;
}
.check-card input {
    width: auto;
    margin: 0;
}
@media(max-width:720px){
    .checkbox-grid {
        grid-template-columns: 1fr;
    }
}

.signature-canvas {
    width: 100%;
    height: 160px;
    background: #ffffff;
    border: 2px dashed #94a3b8;
    border-radius: 14px;
    touch-action: none;
    display: block;
}

.inline-form {
    display: contents;
}
.inline-form input {
    margin: 0;
    min-width: 120px;
}
.badge-warning {
    background: #fef3c7;
    color: #92400e;
    padding: 6px 9px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 12px;
}
.badge-success {
    background: #dcfce7;
    color: #166534;
    padding: 6px 9px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 12px;
}
@media(max-width:720px){
    .inline-form {
        display: block;
    }
}
